I came closer to what I need (but not functioning exactly as it should be):
<p>Text text text text
<span style="position: absolute; display: inline-block; vertical-align: top; background: #dddddd; overflow: hidden;" onclick="this.style.overflow='';" onmouseout="this.style.overflow='hidden';">(activeword)
<span style="position: absolute; background: white; border: 1px solid black; right: 0; width: 200%; top: 2em;">
Lorem ipsum, big text here, dolor sit amet, consectetur adipiscing elit.<br/>
Lorem ipsum, second even bigger text here, dolor sit amet, consectetur adipiscing elit.
</span>
</span>
text text text end of paragraph text.</p>
Still, child needs to be relative to grandparent, it should be 80% of whatever the screen size is, and it shouldn't go off the screen ever.
You can see it here as well:
https://jsbin.com/jubobugonu/1/watch?html,output
@LGSon
Here's the example with "style.opacity":
<p>Text text text paragraph start text text text text text text
<span class="clickword" style="position:relative; display: inline-block; background: #dddd00; color: blue; text-decoration: underline;" onclick="this.getElementsByClassName('tooltip')[0].style.opacity='1';" onmouseout="this.getElementsByClassName('tooltip')[0].style.opacity='0';" >(activeword)
<span class="tooltip" style="position:fixed; display: block; left: 10%; right: 10%; background-color:white; color: black; border: 1px solid #777; padding: 5px; border-radius:5px; box-shadow: 0 0 30px rgba(0, 0, 0, 0.5); -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.5); -moz-box-shadow: 0 0 30px rgba(0, 0, 0, 0.5); -webkit-transition: opacity 0.5s; -moz-transition: opacity 0.5s; -ms-transition: opacity 0.5s; -o-transition: opacity 0.5s; transition: opacity 0.5s;">
Lorem ipsum, big text here, dolor sit amet, consectetur adipiscing elit.<br/>
Lorem ipsum, second even bigger text here, dolor sit amet, consectetur adipiscing elit.
</span>
</span>
text text text end of paragraph text text text text text text.</p>