<div class="cursor">
<div class="cursor__default">
<span class="cursor__default__inner"></span>
</div>
<div class="cursor__trace">
<span class="cursor__trace__inner"></span>
</div>
</div>
<section class="header hidden-area">
<h1 class="header__title">
<div>Move </div>
<div>Cursor</div>
</h1>
</section>
body {
background-color: blue;
/* overflow: hidden; */
}
.shown-area {
display: none;
}
.header {
position: relative;
height: 100vh;
width: 100%;
overflow-x: hidden;
overflow: hidden;
}
.header__title {
position: absolute;
top: 0;
width: 100%;
font-family: sans-serif;
font-weight: 700;
font-size: 7.5rem;
line-height: 8.625rem;
color: white;
text-align: center;
}
const header = document.querySelector(".header")
header.addEventListener("mousemove", (e) => {
const xRelativeToHeader = e.clientX / header.clientWidth
const yRelativeToHeader = e.clientY / header.clientHeight
document.querySelector(".header__title").style.transform = `translate(${(xRelativeToHeader * -50)}px, ${yRelativeToHeader * -50}px)`
})
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.