ktv炫酷顶部圆球旋转跟随鼠标滚动效果代码
代码语言:html
所属分类:加载滚动
代码描述:ktv炫酷顶部圆球旋转跟随鼠标滚动效果代码
代码标签: ktv 炫酷 顶部 圆球 旋转 跟随 鼠标 滚动
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en" >
<head>
<meta charset="UTF-8">
<link rel="preload"
href="//repo.bfw.wiki/bfwrepo/images/round/ball-1.png"
as="image">
<link rel="preload"
href="//repo.bfw.wiki/bfwrepo/images/round/ball-2.png"
as="image">
<link rel="preload"
href="//repo.bfw.wiki/bfwrepo/images/round/ball-3.png"
as="image">
<link rel="preload"
href="//repo.bfw.wiki/bfwrepo/images/round/ball-4.png"
as="image">
<link rel="preload"
href="//repo.bfw.wiki/bfwrepo/images/round/ball-5.png"
as="image">
<link rel="preload"
href="//repo.bfw.wiki/bfwrepo/images/round/ball-6.png"
as="image">
<link rel="preload"
href="//repo.bfw.wiki/bfwrepo/images/round/ball-7.png"
as="image">
<link rel="preload"
href="//repo.bfw.wiki/bfwrepo/images/round/ball-8.png"
as="image">
<link rel="preload"
href="//repo.bfw.wiki/bfwrepo/images/round/ball-9.png"
as="image">
<link rel="preload"
href="//repo.bfw.wiki/bfwrepo/images/round/ball-10.png"
as="image">
<link rel="preload"
href="//repo.bfw.wiki/bfwrepo/images/round/ball-11.png"
as="image">
<link rel="preload"
href="//repo.bfw.wiki/bfwrepo/images/round/ball-12.png"
as="image">
<link rel="preload"
href="//repo.bfw.wiki/bfwrepo/images/round/ball-13.png"
as="image">
<style>
* {
margin: 0;
padding: 0;
box-sizing: box-contents;
}
:root {
--disco-ball-size: 200px;
}
@media (min-width: 800px) {
:root {
--disco-ball-size: 300px;
}
}
html {
scroll-behavior: smooth;
scroll-timeline: --page-scroll block;
scroll-timeline: --page-scroll vertical;
/* Firefox supports the older "vertical" syntax */
}
body {
background: black;
margin: 2rem;
padding-block-start: 2rem;
font-family: system-ui;
counter-reset: grid-counter;
background-image: url("//repo.bfw.wiki/bfwrepo/image/600d6cfee7691.png");
background-attachment: fixed;
background-size: cover;
}
/* ball shadow
Note - I applied this on the body rather than the disco ball itself as the image quality of the ball isn't very good so I had to apply a clip-path to clean up the edges.
*/
body::before,
body::after {
content: "";
position: fixed;
left: 50%;
translate: -50% 0;
}
body::before {
top: 0.75rem;
width: calc(var(--disco-ball-size) - 40px);
height: calc(var(--disco-ball-size) - 40px);
background-color: #082f49;
box-shadow: 0 0 20px 5px #082f49;
border-radius: 50%;
transition: width 300ms ease-in-out, height 300ms ease-in-out;
z-index: -3;
}
body::after {
top: 0;
width: 4px;
height: 20px;
background-color: black;
/* border-right: 1px solid rgba(255 255 255 / .75);*/
box-shadow: 0.08rem 0px white;
filter: blur(1px);
}
.toggle {
display: none;
}
@supports (animation-timeline: scroll()) {
.toggle {
display: block;
position: fixed;
top: 0.5rem;
right: 2.5rem;
z-index: 999;
}
.toggle .switch {
--switch-duration: 300ms;
--switch-bg-clr: rgba(255 255 255 / 0.25);
--switch-border-radius: 999px;
--s.........完整代码请登录后点击上方下载按钮下载查看
网友评论0