A Pen by Tommy Hodgins on CodePen.
Created
June 5, 2017 01:01
-
-
Save CodeMyUI/f907a31d0d62c54d6e8cbb5472923570 to your computer and use it in GitHub Desktop.
Mouse Cursor as Flashlight! π±π¦ using CSS Variables
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!-- Any website --> | |
<header> | |
<h1>Hidden Website</h1> | |
<nav> | |
<a href=#>About</a> | |
<a href=#>Blog</a> | |
<a href=#>Contact</a> | |
</nav> | |
</header> | |
<main> | |
<section> | |
<article> | |
<h2>Hidden Headline</h2> | |
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perspiciatis fugit earum voluptas officia, quasi saepe et commodi, dolores cumque quam fuga ullam, itaque ea dignissimos asperiores adipisci ad eveniet repellendus!</p> | |
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perspiciatis fugit earum voluptas officia, quasi saepe et commodi, dolores cumque quam fuga ullam, itaque ea dignissimos asperiores adipisci ad eveniet repellendus!</p> | |
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perspiciatis fugit earum voluptas officia, quasi saepe et commodi, dolores cumque quam fuga ullam, itaque ea dignissimos asperiores adipisci ad eveniet repellendus!</p> | |
</article> | |
<article> | |
<h2>Headline</h2> | |
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perspiciatis fugit earum voluptas officia, quasi saepe et commodi, dolores cumque quam fuga ullam, itaque ea dignissimos asperiores adipisci ad eveniet repellendus!</p> | |
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perspiciatis fugit earum voluptas officia, quasi saepe et commodi, dolores cumque quam fuga ullam, itaque ea dignissimos asperiores adipisci ad eveniet repellendus!</p> | |
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perspiciatis fugit earum voluptas officia, quasi saepe et commodi, dolores cumque quam fuga ullam, itaque ea dignissimos asperiores adipisci ad eveniet repellendus!</p> | |
</article> | |
<article> | |
<h2>Headline</h2> | |
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perspiciatis fugit earum voluptas officia, quasi saepe et commodi, dolores cumque quam fuga ullam, itaque ea dignissimos asperiores adipisci ad eveniet repellendus!</p> | |
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perspiciatis fugit earum voluptas officia, quasi saepe et commodi, dolores cumque quam fuga ullam, itaque ea dignissimos asperiores adipisci ad eveniet repellendus!</p> | |
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perspiciatis fugit earum voluptas officia, quasi saepe et commodi, dolores cumque quam fuga ullam, itaque ea dignissimos asperiores adipisci ad eveniet repellendus!</p> | |
</article> | |
</section> | |
<aside> | |
<div class=capsule> | |
<h3>Widget Headline</h3> | |
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p> | |
</div> | |
<div class=capsule> | |
<h3>Widget Headline</h3> | |
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p> | |
</div> | |
<div class=capsule> | |
<h3>Widget Headline</h3> | |
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p> | |
</div> | |
</aside> | |
</main> | |
<footer>footer content</footer> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function update(e){ | |
var x = e.clientX || e.touches[0].clientX | |
var y = e.clientY || e.touches[0].clientY | |
document.documentElement.style.setProperty('--cursorX', x + 'px') | |
document.documentElement.style.setProperty('--cursorY', y + 'px') | |
} | |
document.addEventListener('mousemove',update) | |
document.addEventListener('touchmove',update) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<script src="https://cdnjs.cloudflare.com/ajax/libs/eqcss/1.5.0/EQCSS-polyfills.min.js"></script> | |
<script src="https://cdnjs.cloudflare.com/ajax/libs/eqcss/1.5.0/EQCSS.min.js"></script> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* Flashlight Overlay */ | |
:root { | |
cursor: none; | |
--cursorX: 50vw; | |
--cursorY: 50vh; | |
} | |
:root:before { | |
content: ''; | |
display: block; | |
width: 100%; | |
height: 100%; | |
position: fixed; | |
pointer-events: none; | |
background: radial-gradient( | |
circle 10vmax at var(--cursorX) var(--cursorY), | |
rgba(0,0,0,0) 0%, | |
rgba(0,0,0,.5) 80%, | |
rgba(0,0,0,.95) 100% | |
) | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<link href="//fonts.googleapis.com/css?family=Fira+Sans:300,400,500,700,300italic,400italic,500italic,700italic" rel="stylesheet" /> | |
<link href="//fonts.googleapis.com/css?family=Source+Sans+Pro:200,300,400,600,700,900,200italic,300italic,400italic,600italic,700italic,900italic" rel="stylesheet" /> | |
<link href="//fonts.googleapis.com/css?family=Source+Code+Pro:300,400,500,600,700,900" rel="stylesheet" /> |
Yes, it is possible you just have to replace :root with your div's id and adjust the height width of before layout. Check this code pen it only covers upper part of the article. https://codepen.io/dev_nrj/pen/LYXEzRm
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Is there any way to set this effect inside a wrapper instead of hole the page?
I tried but I didn't got it.