
A pure CSS solution to show a fullscreen modal window using :target pseudo class.
This modal is open because its id is the target in the href of the link. You can style an element’s target state with the selector :target.
When this modal is toggled, an invisible link with href=”#” is positioned absolutely behind the modal content. Clicking it will change the target and thus close the modal.
How to use it:
Create a toggle link to launch the modal window.
<a href="#target-content" id="button">Open A Modal</a>
Add the content to the modal.
<div id="target-content">
<a href="#" class="close"></a>
<div id="target-inner">
<h2>Modal Heading</h2>
<p>Modal Content</p>
</div>
</div>The Core CSS styles.
#target-content {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
pointer-events: none;
opacity: 0;
-webkit-transition: opacity 200ms;
transition: opacity 200ms;
}
#target-content:target {
pointer-events: all;
opacity: 1;
}
#target-content #target-inner {
position: absolute;
display: block;
padding: 48px;
line-height: 1.8;
width: 70%;
top: 50%;
left: 50%;
-webkit-transform: translateX(-50%) translateY(-50%);
-ms-transform: translateX(-50%) translateY(-50%);
transform: translateX(-50%) translateY(-50%);
box-shadow: 0px 12px 24px rgba(0, 0, 0, 0.2);
background: white;
color: #34495E;
}
#target-content #target-inner h2 { margin-top: 0; }
#target-content #target-inner code { font-weight: bold; }
#target-content a.close {
content: "";
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: #34495E;
opacity: 0.5;
-webkit-transition: opacity 200ms;
transition: opacity 200ms;
}
#target-content a.close:hover { opacity: 0.4; }







How could I show and hide this with javascript?
Great tool! We can even use it for word definition.
Thank you so much for this tool!