CSS常用示例100+专栏目录
本专栏记录的是经常使用的CSS示例与技巧,主要包含CSS布局,CSS特效,CSS花边信息三部分内容。其中CSS布局主要是列出一些常用的CSS布局信息点,CSS特效主要是一些动画示例,CSS花边是描述了一些CSS相关的库、知识点、理论篇章等。 因为常用所以记录、展示、分享,希望能给您带来帮助。
css实战中,怎么绘制超迷人的科技之眼动画呢?这里是多个组合体的合集,每一部分在不同的时间点呈现不同的动画效果,组合在一起就是一个迷人的眼睛,富有科技感。
/*
* @Author: 大剑师兰特(xiaozhuanlan),还是大剑师兰特(CSDN)
* @此源代码版权归大剑师兰特所有,可供学习或商业项目中借鉴,未经授权,不得重复地发表到博客、论坛,问答,git等公共空间或网站中。
* @Email: [email protected]
* @weixin: gis-dajianshi
* @First published in CSDN
* @First published time: 2023-12-13
*/
<template>
<div class="container">
<div class="top">
<h3>超迷人的科技之眼</h3>
<div class="author">大剑师兰特, 还是大剑师兰特,gis-dajianshi</div>
</div>
<div class="dajianshi">
<div class="eye"></div>
<div class="circle-1"></div>
<div class="circle-2"></div>
<div class="circle-3"></div>
<div class="circle-4"></div>
<div class="circle-5"></div>
<div class="circle-6"></div>
<div class="circle-7"></div>
<div class="circle-8"></div>
<div class="circle-9"></div>
<div class="circle-10"></div>
<div class="circle-11"></div>
<div class="circle-12"></div>
<div class="circle-13"></div>
<div class="circle-14"></div>
<div class="glitch"></div>
<div class="fragment-1"></div>
<div class="fragment-2"></div>
<div class="fragment-3"></div>
<svg width="190" height="190" viewBox="0 0 190 190" fill="none" xmlns="http://www.w3.org/2000/svg">
<defs>
<clipPath id='bagel1'>
<path fill-rule="evenodd" clip-rule="evenodd"
d="M95 190C147.467 190 190 147.467 190 95C190 42.533 147.467 0 95 0C42.533 0 0 42.533 0 95C0 147.467 42.533 190 95 190ZM95 120C108.807 120 120 108.807 120 95C120 81.1929 108.807 70 95 70C81.1929 70 70 81.1929 70 95C70 108.807 81.1929 120 95 120Z" />
</clipPath>
<clipPath id='bagel2'>
<path fill-rule="evenodd" clip-rule="evenodd"
d="M71 142C110.212 142 142 110.212 142 71C142 31.7878 110.212 0 71 0C31.7878 0 0 31.7878 0 71C0 110.212 31.7878 142 71 142ZM71 139C108.555 139 139 108.555 139 71C139 33.4446 108.555 3 71 3C33.4446 3 3 33.4446 3 71C3 108.555 33.4446 139 71 139Z" />
</clipPath>
<clipPath id='bagel3'>
<path fill-rule="evenodd" clip-rule="evenodd"
d="M60 120C93.1372 120 120 93.1372 120 60C120 26.8628 93.1372 0 60 0C26.8628 0 0 26.8628 0 60C0 93.1372 26.8628 120 60 120ZM60 115C90.3757 115 115 90.3757 115 60C115 29.6243 90.3757 5 60 5C29.6243 5 5 29.6243 5 60C5 90.3757 29.6243 115 60 115Z" />
</clipPath>
<clipPath id='bagel4'>
<path fill-rule="evenodd" clip-rule="evenodd"
d="M38 76C58.9868 76 76 58.9868 76 38C76 17.0132 58.9868 0 38 0C17.0132 0 0 17.0132 0 38C0 58.9868 17.0132 76 38 76ZM38 72C56.7777 72 72 56.7776 72 38C72 19.2224 56.7777 4 38 4C19.2223 4 4 19.2224 4 38C4 56.7776 19.2223 72 38 72Z" />
</clipPath>
</defs>
</svg>
</div>
</div>
</template>
<style scoped>
.container {
width: 1000px;
height: 600px;
margin: 50px auto;
border: 1px solid green;
position: relative;
}
.top {
margin: 0 auto 0px;
padding: 10px 0;
background: black;
color: #fff;
}
.dajianshi {
width: 100%;
height: 500px;
text-align: center;
position: relative;
background: linear-gradient(-45deg, #8691b3, #edeef3);
}
.dajianshi *, .dajianshi *:before, .dajianshi *:after {
content: '';
position: absolute;
top: 50%; left: 50%;
}
.eye {
width: 330px; height: 330px;
margin:0 auto;
transform: translate(-50%, -50%);
border-radius: 50%;
background: #EBEDF3;
filter: blur(5px);
animation: eyeAnimation 4s cubic-bezier(1, 0, 1, 1) infinite;
}
@keyframes eyeAnimation {
0%, 33%, 100% {
box-shadow: inset -8px -13px 20px -10px rgba(230, 230, 236, 0.04), 64px 55px 40px -40px #38406A, 20px 18px 30px -10px #38406A, inset -70px -50px 60px -30px #4b6398, inset -90px -90px 70px -90px #697398, inset -70px -50px 100px -40px #697398, inset 80px 50px 80px -50px #eeeef3, -25px -15px 50px -10px #F6F6FB, 14px -1px 50px -10px #7e7ea9, 1px 9px 50px -10px #7e7ea9, inset -90px 40px 60px -20px rgba(116, 66, 255, 0.1), inset -90px -120px 60px -20px rgba(116, 66, 255, 0.1);
transform: translate(-50%, -50%) scale(1.25);
}
65% {
box-shadow: inset -8px -13px 60px -10px rgba(230, 230, 236, 0.2), 44px 35px 20px -20px #687294, 11px 9px 9px -4px #6e799d, inset -100px -70px 40px -110px #6A789C, inset -90px -90px 70px -90px #697398, inset -70px -50px 100px -40px #697398, inset 80px 50px 80px -50px #eeeef3, -25px -15px 30px -10px #F6F6FB;
transform: translate(-50%, -50%) scale(1);
}
}
.eye::after {
width: 160px; height: 160px;
border-radius: 50%;
box-shadow: inset -50px -20px 30px 0px #e7e2f5, inset 100px 10px 20px -27px #2f2c4c, 0px 0px 10px 7px rgba(231, 226, 245, 1);
animation: pupilAnimationSize 4s cubic-bezier(1, 0, 1, 1) infinite,
pupilAnimationView 4s ease infinite;
}
@keyframes pupilAnimationSize {
0%, 30%, 100% { transform: translate(-50%, -50%) scale(0.85); }
40%, 90% { transform: translate(-50%, -50%) scale(0.5); }
}
@keyframes pupilAnimationView {
0%, 30%, 100% {
box-shadow: inset -50px -20px 30px 0px #e7e2f5, inset 100px 10px 20px -27px #2f2c4c, 0px 0px 10px 7px rgba(231, 226, 245, 1);
}
60%, 66% {
box-shadow: inset -50px -20px 30px 0px rgba(231, 226, 245, 0), inset 10px 10px 70px -27px rgba(47, 44, 76, 0), 0px 0px 10px 7px hsla(256, 49%, 92%, 0);
}
90% {
box-shadow: inset -50px -20px 30px 0px #e7e2f5, inset 100px 10px 20px -27px #2f2c4c, 0px 0px 10px 7px rgba(231, 226, 245, 1);
}
}
.circle-1 {
width: 475px; height: 475px;
border-radius: 50%;
border: 1px solid transparent;
border-right-color: rgba(223, 228, 255, 0.6);
animation: circle1AnimationOpacity 4s ease infinite,
circle1AnimationMove 4s ease infinite;
}
@keyframes circle1AnimationMove {
00%, 100% { transform: translate(-50%, -50%) rotate(49deg); }
07% { transform: translate(-50%, -50%) rotate(38deg); }
12%, 19%, 68% { transform: translate(-50%, -50%) rotate(42deg); }
26%, 30% { transform: translate(-50%, -50%) rotate(82deg); }
73% { transform: translate(-50%, -50%) rotate(34deg); }
87%, 92% { transform: translate(-50%, -50%) rotate(69deg); }
94% { transform: translate(-50%, -50%) rotate(65deg); }
}
@keyframes circle1AnimationOpacity {
00%, 27%, 73%, 100% { opacity: 1; }
30%, 70% { opacity: 0; }
}
.circle-2 {
width: 475px; height: 475px;
border-radius: 50%;
border: 1px solid transparent;
border-right-color: rgba(223, 228, 255, 0.6);
animation: circle2AnimationOpacity 4s ease infinite,
circle2AnimationMove 4s ease infinite;
}
@keyframes circle2AnimationMove {
0%, 100% { transform: translate(-50%, -50%) rotate(229deg); }
9% { transform: translate(-50%, -50%) rotate(220deg); }
14%, 21% { transform: translate(-50%, -50%) rotate(225deg); }
29%, 67% { transform: translate(-50%, -50%) rotate(262deg); }
82% { transform: translate(-50%, -50%) rotate(241deg); }
90%, 94% { transform: translate(-50%, -50%) rotate(249deg); }
99% { transform: translate(-50%, -50%) rotate(245deg); }
}
@keyframes circle2AnimationOpacity {
0%, 27%, 79%, 100% { opacity: 1; }
30%, 76% { opacity: 0; }
}
.circle-3 {
left: calc(50% + 93px);
top: calc(50% - 189px);
width: 106px; height: 280px;
overflow: hidden;
}
.circle-3::before {
left: -275%;
top: -4%;
width: 393px;
height: 393px;
border-radius: 50%;
border: 1px solid transparent;
border-right-color: rgba(223, 228, 255, 0.6);
animation: circle3Animation 4s ease infinite;
}
@keyframes circle3Animation {
0% { transform: rotate(-3deg); }
20% { transform: rotate(-107deg); }
79% { transform: rotate(-286deg); }
100% { transform: rotate(-364deg); }
}
.circle-4 {
width: 295px; height: 295px;
border-radius: 50%;
border: 1px solid transparent;
border-right-color: rgb(251, 251, 251);
border-left-color: rgba(251, 251, 251, 0.2);
animation: circle4AnimationMove 4s cubic-bezier(1, 0, 1, 1) infinite,
circle4AnimationOpacity 4s ease infinite;
}
@keyframes circle4AnimationMove {
0%, 100% { transform: translate(-50%, -50%) rotate(219deg) scale(1); }
6% { transform: translate(-50%, -50%) rotate(221deg) scale(0.9); }
16% { transform: translate(-50%, -50%) rotate(302deg) scale(0.9); }
22% { transform: translate(-50%, -50%) rotate(307deg) scale(0.9); }
29% { transform: translate(-50%, -50%) rotate(312deg) scale(0.93); }
33% { transform: translate(-50%, -50%) rotate(310deg) scale(0.93); }
36% { transform: translate(-50%, -50%) rotate(300deg) scale(0.7); }
39% { transform: translate(-50%, -50%) rotate(220deg) scale(0.92); }
50%, 57% { transform: translate(-50%, -50%) rotate(248deg) scale(0.92); }
66% { transform: translate(-50%, -50%) rotate(225deg) scale(0.92); }
73%, 81% { transform: translate(-50%, -50%) rotate(243deg) scale(0.92); }
93% { transform: translate(-50%, -50%) rotate(215deg) scale(1); }
}
@keyframes circle4AnimationOpacity {
00%, 33%, 50%, 100% { opacity: 1; }
36%, 39% { opacity: 0; }
}
.circle-5 {
width: 100px; height: 100px;
transform: translate(-50%, -50%);
animation: circle5AnimationSize 4s cubic-bezier(1, 0, 1, 1) infinite,
circle5AnimationView 4s ease infinite;
}
.circle-5::before {
width: 173px; height: 173px;
border-radius: 50%;
border: 1px solid rgb(251, 251, 251);
transform: translate(-50%, -50%);
}
.circle-5::after {
width: 177px; height: 177px;
border-radius: 50%;
border: 1px solid rgb(251, 251, 251);
transform: translate(-50%, -50%);
}
@keyframes circle5AnimationSize {
0%, 38%, 82.82%, 100% { transform: translate(-50%, -50%) scale(1); }
45%, 75.44% { transform: translate(-50%, -50%) scale(0.7); }
}
@keyframes circle5AnimationView {
0%, 5.7%, 7.4%, 9.8%, 11.5%, 14%, 15.6%, 18.9%, 21.3%, 23.8%, 25.4%, 28.7%, 35.3%, 42%, 77.9%, 82.7%, 83.6%, 85.2%, 86.1%, 91.8%, 93.5%, 97.6%, 100% { opacity: 1; }
2.5%, 6.6%, 8.2%, 10.7%, 14.8%, 18%, 20.5%, 22.1%, 24.6%, 27.9%, 36%, 88.6% { opacity: 0.5; }
47%, 77.8%, 82.8%, 83.5%, 85.3%, 86%, 90.2%, 92.7%, 96.8%, 99.2% { opacity: 0; }
}
.circle-6 {
top: 50%; left: 50%;
width: 190px; height: 190px;
background: repeating-conic-gradient(from 0deg, rgba(179, 221, 255, 0.4) 0deg 1deg, transparent 1deg 2deg);
clip-path: url(#bagel1);
border-radius: 50%;
animation: circle6Animation 4s cubic-bezier(1, 0, 1, 1) infinite;
}
@keyframes circle6Animation {
0% {
transform: translate(-50%, -50%) scale(1);
}
8%, 35% {
transform: translate(-50%, -50%) scale(0.93);
opacity: 1;
}
40%, 90% {
transform: translate(-50%, -50%) scale(0.2);
opacity: 0;
}
95%, 100% {
transform: translate(-50%, -50%) scale(1);
opacity: 1;
}
}
.circle-7 {
top: 50%; left: 50%;
width: 142px; height: 142px;
filter: blur(1px);
animation: circle6Animation 4s -0.1s cubic-bezier(1, 0, 1, 1) infinite;
}
.circle-7::before {
top: 0; left: 0;
width: 100%; height: 100%;
background: repeating-conic-gradient(from 0deg, rgba(114, 87, 187, 0.6) 0deg 2deg, transparent 2deg 8deg);
clip-path: url(#bagel2);
border-radius: 50%;
}
.circle-8 {
top: 50%; left: 50%;
width: 120px; height: 120px;
background: repeating-conic-gradient(from 0deg, rgba(236, 247, 255, 0.68) 0deg 1deg, transparent 1deg 2deg);
clip-path: url(#bagel3);
border-radius: 50%;
animation: circle6Animation 4s -0.13s cubic-bezier(1, 0, 1, 1) infinite;
}
.circle-9 {
top: 50%; left: 50%;
width: 76px; height: 76px;
background: repeating-conic-gradient(from 0deg, rgba(236, 247, 255, 0.68) 0deg 1deg, transparent 1deg 2deg);
clip-path: url(#bagel4);
border-radius: 50%;
animation: circle6Animation 4s -0.16s cubic-bezier(1, 0, 1, 1) infinite;
}
.circle-10 {
top: 50%; left: 50%;
width: 190px; height: 190px;
background: radial-gradient(rgba(230, 245, 255, 0.6), rgba(201, 243, 255, 0.5), rgba(74, 105, 160, 0.3), transparent 70%);
clip-path: url(#bagel1);
border-radius: 50%;
animation: circle10Animation 4s cubic-bezier(1, 0, 1, 1) infinite;
}
@keyframes circle10Animation {
0% {
transform: translate(-50%, -50%) scale(1);
}
4%, 30% {
transform: translate(-50%, -50%) scale(0.93);
opacity: 1;
}
35%, 93% {
transform: translate(-50%, -50%) scale(0);
opacity: 0;
}
98%, 100% {
transform: translate(-50%, -50%) scale(1);
opacity: 1;
}
}
.circle-11 {
top: 50%; left: 50%;
width: 190px; height: 190px;
background: repeating-conic-gradient(from 0deg, rgba(229, 243, 255, 0.1) 0deg 1deg, transparent 1deg 8deg, rgba(229, 243, 255, 0.3) 8deg 9deg, transparent 9deg 10deg, rgba(229, 243, 255, 0.1) 10deg 11deg, transparent 11deg 72deg);
clip-path: url(#bagel1);
border-radius: 50%;
animation: circle11Animation 4s cubic-bezier(1, 0, 1, 1) infinite;
}
@keyframes circle11Animation {
0%, 98%, 100% {
transform: translate(-50%, -50%) rotate(0deg);
opacity: 1;
}
15% {
transform: translate(-50%, -50%) rotate(45deg);
}
25% {
transform: translate(-50%, -50%) rotate(-10deg);
}
30% {
opacity: 1;
}
35% {
transform: translate(-50%, -50%) rotate(-20deg);
opacity: 0;
}
93% {
transform: translate(-50%, -50%) rotate(80deg);
opacity: 0;
}
}
.circle-12 {
top: 50%; left: 50%;
width: 190px; height: 190px;
background: repeating-conic-gradient(from 0deg, rgba(208, 233, 255, 0.2) 20deg 21deg, transparent 21deg 40deg, rgba(192, 223, 249, 0.25) 40deg 41deg, transparent 41deg 43deg, rgba(179, 220, 255, 0.15) 43deg 44deg, transparent 44deg 76deg);
clip-path: url(#bagel1);
border-radius: 50%;
animation: circle12Animation 4s cubic-bezier(1, 0, 1, 1) infinite;
}
@keyframes circle12Animation {
0%, 96%, 100% {
transform: translate(-50%, -50%) rotate(0deg);
opacity: 1;
}
10% {
transform: translate(-50%, -50%) rotate(45deg);
}
25% {
transform: translate(-50%, -50%) rotate(-45deg);
}
30% {
opacity: 1;
}
35% {
transform: translate(-50%, -50%) rotate(50deg);
opacity: 0;
}
93% {
transform: translate(-50%, -50%) rotate(-90deg);
opacity: 0;
}
}
.circle-13 {
width: 100px; height: 100px;
transform: translate(-50%, -50%);
animation: circle13AnimationSize 4s cubic-bezier(1, 0, 1, 1) infinite,
circle13AnimationView 4s ease infinite;
}
.circle-13::before {
width: 110px; height: 110px;
border-radius: 50%;
border: 1px solid rgb(251, 251, 251);
transform: translate(-50%, -50%);
}
.circle-13::after {
width: 120px; height: 120px;
border-radius: 50%;
border: 1px solid rgba(251, 251, 251, 0.5);
transform: translate(-50%, -50%);
}
@keyframes circle13AnimationSize {
0%, 32%, 86%, 100% { transform: translate(-50%, -50%) scale(1); }
38%, 82% { transform: translate(-50%, -50%) scale(0.2); }
}
@keyframes circle13AnimationView {
/* подвигать */
0% { opacity: 1; }
2.5% { opacity: 0.5; }
5.7% { opacity: 1; }
6.6% { opacity: 0.5; }
7.4% { opacity: 1; }
8.2% { opacity: 0.5; }
9.8% { opacity: 1; }
10.7% { opacity: 0.5; }
11.5%, 14% { opacity: 1; }
14.8% { opacity: 0.5; }
15.6% { opacity: 1; }
18% { opacity: 0.5; }
18.9% { opacity: 1; }
20.5% { opacity: 0.5; }
21.3% { opacity: 1; }
22.1% { opacity: 0.5; }
23.8% { opacity: 1; }
24.6% { opacity: 0.5; }
25.4% { opacity: 1; }
27.9% { opacity: 0.5; }
28.7%, 32% { opacity: 1; }
38% { opacity: 0; }
82% { opacity: 0; }
86% { opacity: 1; }
88.6% { opacity: 0.5; }
90.2% { opacity: 0; }
91.8% { opacity: 1; }
92.7% { opacity: 0; }
93.5% { opacity: 1; }
96.8% { opacity: 0; }
97.6% { opacity: 1; }
99.2% { opacity: 0; }
100% { opacity: 1; }
}
.circle-14 {
width: 100px; height: 100px;
transform: translate(-50%, -50%);
animation: circle13AnimationSize 4s -0.15s cubic-bezier(1, 0, 1, 1) infinite,
circle14AnimationView 4s ease infinite;
}
.circle-14::before {
width: 70px; height: 70px;
border-radius: 50%;
border: 1px solid rgba(251, 251, 251, 0.5);
transform: translate(-50%, -50%);
}
.circle-14::after {
width: 95px; height: 95px;
border-radius: 50%;
border: 1px solid rgba(251, 251, 251, 0.3);
transform: translate(-50%, -50%);
}
@keyframes circle14AnimationView {
/* подвигать */
0% { opacity: 1; }
2.5% { opacity: 0.5; }
5.7% { opacity: 1; }
6.6% { opacity: 0.5; }
7.4% { opacity: 1; }
8.2% { opacity: 0.5; }
9.8% { opacity: 1; }
10.7% { opacity: 0.5; }
11.5%, 14% { opacity: 1; }
14.8% { opacity: 0.5; }
15.6% { opacity: 1; }
18% { opacity: 0.5; }
18.9% { opacity: 1; }
20.5% { opacity: 0.5; }
21.3% { opacity: 1; }
22.1% { opacity: 0.5; }
23.8% { opacity: 1; }
24.6% { opacity: 0.5; }
25.4% { opacity: 1; }
27.9% { opacity: 0.5; }
28.7%, 32% { opacity: 1; }
38% { opacity: 0; }
82% { opacity: 0; }
86% { opacity: 1; }
88.6% { opacity: 0.5; }
90.2% { opacity: 0; }
91.8% { opacity: 1; }
92.7% { opacity: 0; }
93.5% { opacity: 1; }
96.8% { opacity: 0; }
97.6% { opacity: 1; }
99.2% { opacity: 0; }
100% { opacity: 1; }
}
.glitch {
width: 2px; height: 2px;
box-shadow: -21px -75px #8AC7ED, -16px -78px #8AC7ED, -8px -78px #8AC7ED, -5px -77px #8AC7ED, -2px -79px #8AC7ED, 10px -79px #8AC7ED, 25px -73px #8AC7ED, 41px -71px #8AC7ED, 44px -68px #8AC7ED, -26px -72px #8AC7ED, -45px -62px #8AC7ED, -65px -57px #8AC7ED, 59px -49px #8AC7ED, 67px -52px #8AC7ED, 37px -69px #8AC7ED, 43px -62px #8AC7ED, 39px -62px #8AC7ED, 17px -71px #8AC7ED, 28px -67px #8AC7ED, 65px -32px #8AC7ED, 73px -24px #8AC7ED, 67px -25px #8AC7ED, 76px -14px #8AC7ED, 70px -18px #8AC7ED, 82px 21px #8AC7ED, 79px 20px #8AC7ED, 72px 15px #8AC7ED, 55px 45px #8AC7ED, 48px 51px #8AC7ED, 43px 58px #8AC7ED, 37px 57px #8AC7ED, 36px 63px #8AC7ED, 32px 76px #8AC7ED, 35px 70px #8AC7ED, 25px 71px #8AC7ED, 20px 75px #8AC7ED, 5px 70px #8AC7ED, 7px 75px #8AC7ED, -5px 79px #8AC7ED, 3px 78px #8AC7ED, -1px 77px #8AC7ED, -13px 78px #8AC7ED, -15px 82px #8AC7ED, -20px 76px #8AC7ED, -18px 78px #8AC7ED, -17px 75px #8AC7ED, -22px 72px #8AC7ED, -34px 72px #8AC7ED, -36px 69px #8AC7ED, -43px 74px #8AC7ED, -41px 72px #8AC7ED, -42px 69px #8AC7ED, -38px 66px #8AC7ED, -43px 63px #8AC7ED, -37px 61px #8AC7ED, -56px 66px #8AC7ED, -54px 61px #8AC7ED, -58px 54px #8AC7ED, -60px 41px #8AC7ED, -50px 56px #8AC7ED, -54px 57px #8AC7ED, -60px 52px #8AC7ED, -74px 35px #8AC7ED, -76px 18px #8AC7ED, -74px 25px #8AC7ED, -69px 23px #8AC7ED, -84px 13px #8AC7ED, -73px 3px #8AC7ED, -80px -1px #8AC7ED, -79px -4px #8AC7ED, -79px -7px #8AC7ED, -70px -11px #8AC7ED, -67px -23px #8AC7ED, -84px -13px #8AC7ED, -71px -42px #8AC7ED, -61px -49px #8AC7ED, -58px -43px #8AC7ED, -55px -50px #8AC7ED, -32px -72px #8AC7ED, -80px -30px #8AC7ED, -59px -20px #8AC7ED, -79px 12px #8AC7ED, -76px 1px #8AC7ED, 8px 57px #8AC7ED, 59px 36px #8AC7ED, 60px 46px #8AC7ED, 54px 59px #8AC7ED, 44px 52px #8AC7ED, -31px 20px #8AC7ED, -56px 2px #8AC7ED, 47px 35px #8AC7ED, 70px 6px #8AC7ED, 60px -2px #8AC7ED,
-21px -75px 0 1px rgba(255, 255, 255, 0.1), -16px -78px 0 1px rgba(255, 255, 255, 0.1), -8px -78px 0 1px rgba(255, 255, 255, 0.1), -5px -77px 0 1px rgba(255, 255, 255, 0.1), -2px -79px 0 1px rgba(255, 255, 255, 0.1), 10px -79px 0 1px rgba(255, 255, 255, 0.1), 25px -73px 0 1px rgba(255, 255, 255, 0.1), 41px -71px 0 1px rgba(255, 255, 255, 0.1), 44px -68px 0 1px rgba(255, 255, 255, 0.1), -26px -72px 0 1px rgba(255, 255, 255, 0.1), -45px -62px 0 1px rgba(255, 255, 255, 0.1), -65px -57px 0 1px rgba(255, 255, 255, 0.1), 59px -49px 0 1px rgba(255, 255, 255, 0.1), 67px -52px 0 1px rgba(255, 255, 255, 0.1), 37px -69px 0 1px rgba(255, 255, 255, 0.1), 43px -62px 0 1px rgba(255, 255, 255, 0.1), 39px -62px 0 1px rgba(255, 255, 255, 0.1), 17px -71px 0 1px rgba(255, 255, 255, 0.1), 28px -67px 0 1px rgba(255, 255, 255, 0.1), 65px -32px 0 1px rgba(255, 255, 255, 0.1), 73px -24px 0 1px rgba(255, 255, 255, 0.1), 67px -25px 0 1px rgba(255, 255, 255, 0.1), 76px -14px 0 1px rgba(255, 255, 255, 0.1), 70px -18px 0 1px rgba(255, 255, 255, 0.1), 82px 21px 0 1px rgba(255, 255, 255, 0.1), 79px 20px 0 1px rgba(255, 255, 255, 0.1), 72px 15px 0 1px rgba(255, 255, 255, 0.1), 55px 45px 0 1px rgba(255, 255, 255, 0.1), 48px 51px 0 1px rgba(255, 255, 255, 0.1), 43px 58px 0 1px rgba(255, 255, 255, 0.1), 37px 57px 0 1px rgba(255, 255, 255, 0.1), 36px 63px 0 1px rgba(255, 255, 255, 0.1), 32px 76px 0 1px rgba(255, 255, 255, 0.1), 35px 70px 0 1px rgba(255, 255, 255, 0.1), 25px 71px 0 1px rgba(255, 255, 255, 0.1), 20px 75px 0 1px rgba(255, 255, 255, 0.1), 5px 70px 0 1px rgba(255, 255, 255, 0.1), 7px 75px 0 1px rgba(255, 255, 255, 0.1), -5px 79px 0 1px rgba(255, 255, 255, 0.1), 3px 78px 0 1px rgba(255, 255, 255, 0.1), -1px 77px 0 1px rgba(255, 255, 255, 0.1), -13px 78px 0 1px rgba(255, 255, 255, 0.1), -15px 82px 0 1px rgba(255, 255, 255, 0.1), -20px 76px 0 1px rgba(255, 255, 255, 0.1), -18px 78px 0 1px rgba(255, 255, 255, 0.1), -17px 75px 0 1px rgba(255, 255, 255, 0.1), -22px 72px 0 1px rgba(255, 255, 255, 0.1), -34px 72px 0 1px rgba(255, 255, 255, 0.1), -36px 69px 0 1px rgba(255, 255, 255, 0.1), -43px 74px 0 1px rgba(255, 255, 255, 0.1), -41px 72px 0 1px rgba(255, 255, 255, 0.1), -42px 69px 0 1px rgba(255, 255, 255, 0.1), -38px 66px 0 1px rgba(255, 255, 255, 0.1), -43px 63px 0 1px rgba(255, 255, 255, 0.1), -37px 61px 0 1px rgba(255, 255, 255, 0.1), -56px 66px 0 1px rgba(255, 255, 255, 0.1), -54px 61px 0 1px rgba(255, 255, 255, 0.1), -58px 54px 0 1px rgba(255, 255, 255, 0.1), -60px 41px 0 1px rgba(255, 255, 255, 0.1), -50px 56px 0 1px rgba(255, 255, 255, 0.1), -54px 57px 0 1px rgba(255, 255, 255, 0.1), -60px 52px 0 1px rgba(255, 255, 255, 0.1), -74px 35px 0 1px rgba(255, 255, 255, 0.1), -76px 18px 0 1px rgba(255, 255, 255, 0.1), -74px 25px 0 1px rgba(255, 255, 255, 0.1), -69px 23px 0 1px rgba(255, 255, 255, 0.1), -84px 13px 0 1px rgba(255, 255, 255, 0.1), -73px 3px 0 1px rgba(255, 255, 255, 0.1), -80px -1px 0 1px rgba(255, 255, 255, 0.1), -79px -4px 0 1px rgba(255, 255, 255, 0.1), -79px -7px 0 1px rgba(255, 255, 255, 0.1), -70px -11px 0 1px rgba(255, 255, 255, 0.1), -67px -23px 0 1px rgba(255, 255, 255, 0.1), -84px -13px 0 1px rgba(255, 255, 255, 0.1), -71px -42px 0 1px rgba(255, 255, 255, 0.1), -61px -49px 0 1px rgba(255, 255, 255, 0.1), -58px -43px 0 1px rgba(255, 255, 255, 0.1), -55px -50px 0 1px rgba(255, 255, 255, 0.1), -32px -72px 0 1px rgba(255, 255, 255, 0.1), -80px -30px 0 1px rgba(255, 255, 255, 0.1), -59px -20px 0 1px rgba(255, 255, 255, 0.1), -79px 12px 0 1px rgba(255, 255, 255, 0.1), -76px 1px 0 1px rgba(255, 255, 255, 0.1), 8px 57px 0 1px rgba(255, 255, 255, 0.1), 59px 36px 0 1px rgba(255, 255, 255, 0.1), 60px 46px 0 1px rgba(255, 255, 255, 0.1), 54px 59px 0 1px rgba(255, 255, 255, 0.1), 44px 52px 0 1px rgba(255, 255, 255, 0.1), -31px 20px 0 1px rgba(255, 255, 255, 0.1), -56px 2px 0 1px rgba(255, 255, 255, 0.1), 47px 35px 0 1px rgba(255, 255, 255, 0.1), 70px 6px 0 1px rgba(255, 255, 255, 0.1), 60px -2px 0 1px rgba(255, 255, 255, 0.1);
filter: blur(1px);
animation: glitchAnimationOpacity 4s cubic-bezier(1, 0, 1, 1) infinite,
glitchAnimationMove 4s cubic-bezier(1, 0, 1, 1) infinite,
glitchAnimationBright 4s cubic-bezier(1, 0, 1, 1) infinite;
}
@keyframes glitchAnimationOpacity {
0%, 30%, 96%, 100% { opacity: 1; }
35%, 93% { opacity: 0; }
}
@keyframes glitchAnimationMove {
0%, 100% { transform: translate(-50%, -50%) rotate(0deg); }
35%, 65% { transform: translate(-50%, -50%) rotate(4320deg); }
}
@keyframes glitchAnimationBright {
0%, 100% { filter: blur(1px); }
35%, 65% { filter: blur(1px) brightness(1.8); }
}
.fragment-1::before {
width: 6px; height: 6px;
border: 2px solid rgba(255, 255, 255, 0.3);
border-radius: 2px;
animation: fragment1BeforeAnimationMove 4s -0.15s cubic-bezier(1, 0, 1, 1) infinite;
}
@keyframes fragment1BeforeAnimationMove {
0%, 100% {
transform: rotate(0deg) translate(71px, -181px);
opacity: 1;
}
37% {
transform: rotate(15deg) translate(71px, -181px);
opacity: 1;
}
37.1%, 76.9% {
opacity: 0;
}
77% {
transform: rotate(-2deg) translate(71px, -181px);
opacity: 1;
}
90% {
transform: rotate(-9deg) translate(71px, -181px);
}
}
.fragment-1::after {
width: 6px; height: 6px;
border: 2px solid rgba(255, 255, 255, 0.3);
border-radius: 2px;
animation: fragment1AfterAnimationMove 4s -0.15s cubic-bezier(1, 0, 1, 1) infinite;
}
@keyframes fragment1AfterAnimationMove {
0%, 100% {
transform: rotate(0deg) translate(285px, 48px);
opacity: 1;
}
7% {
transform: rotate(5deg) translate(285px, 48px);
}
22% {
transform: rotate(-1deg) translate(285px, 48px);
}
40% {
transform: rotate(-3deg) translate(285px, 48px);
opacity: 1;
}
40.1%, 81.9% {
opacity: 0;
}
82% {
transform: rotate(-15deg) translate(285px, 48px);
opacity: 1;
}
}
.fragment-2::after {
width: 6px; height: 6px;
border: 2px solid rgba(255, 255, 255, 0.3);
border-radius: 2px;
animation: fragment2AfterAnimationMove 4s -0.15s cubic-bezier(1, 0, 1, 1) infinite;
}
@keyframes fragment2AfterAnimationMove {
0%, 100% {
transform: rotate(0deg) translate(-220px, 162px);
opacity: 1;
}
46% {
transform: rotate(-8deg) translate(-220px, 162px);
opacity: 1;
}
46.1%, 97.9% {
opacity: 0;
}
98% {
transform: rotate(2deg) translate(-220px, 162px);
opacity: 1;
}
}
.fragment-2::before {
width: 6px; height: 6px;
border: 2px solid rgba(255, 255, 255, 0.3);
border-radius: 2px;
animation: fragment2BeforeAnimationMove 4s -0.15s cubic-bezier(1, 0, 1, 1) infinite;
}
@keyframes fragment2BeforeAnimationMove {
0%, 100% {
transform: rotate(0deg) translate(284px, 111px);
opacity: 1;
}
2% {
transform: rotate(2deg) translate(284px, 111px);
}
9% {
transform: rotate(-5deg) translate(284px, 111px);
}
15%, 22% {
transform: rotate(-3deg) translate(284px, 111px);
}
27% {
transform: rotate(-2deg) translate(284px, 111px);
opacity: 1;
}
38.9% {
transform: rotate(-9deg) translate(284px, 111px);
}
39%, 76.9% {
opacity: 0;
}
77% {
transform: rotate(-9deg) translate(284px, 111px);
opacity: 1;
}
}
.fragment-3::after {
width: 6px; height: 6px;
background: rgba(255, 255, 255, 0.3);
border-radius: 2px;
animation: fragment3AfterAnimationMove 4s -0.15s cubic-bezier(1, 0, 1, 1) infinite;
}
@keyframes fragment3AfterAnimationMove {
0%, 4.9%, 65.1%, 100% {
opacity: 0;
}
5% {
transform: rotate(0deg) translate(183px, 198px);
opacity: 1;
}
16% {
transform: rotate(-9deg) translate(284px, 111px);
opacity: 1;
}
16.1%, 60.9% {
opacity: 0;
}
61% {
transform: rotate(5deg) translate(284px, 111px);
opacity: 1;
}
65% {
transform: rotate(10deg) translate(284px, 111px);
opacity: 1;
}
}
.fragment-3::before {
width: 6px; height: 6px;
background: rgba(255, 255, 255, 0.3);
border-radius: 2px;
animation: fragment3BeforeAnimationMove 4s -0.15s cubic-bezier(1, 0, 1, 1) infinite;
}
@keyframes fragment3BeforeAnimationMove {
0%, 100% {
transform: rotate(0deg) translate(-253px, -126px);
opacity: 1;
}
22% {
transform: rotate(25deg) translate(-253px, -126px);
opacity: 1;
}
22.1%, 95.9% {
opacity: 0;
}
96% {
transform: rotate(-5deg) translate(-253px, -126px);
opacity: 1;
}
}
</style>
1.CSS样式表
2.基础选择器:(1)标签选择器,(2)类选择器,(3)id选择器,(4)通配符选择器
3.复合选择器:(1)后代选择器,(2)子选择器,(3)并集选择器,(4)交集选择器,(5)伪类选择器。
4.字体样式属性:(1)字体大小font-size,(2)字体类型font-family,(3)字体粗细font-weight,(4)字体风格font-style
5.文本外观样式:(1)设置文本颜色color,(2)word-spacing,(3)letter-spacing,(4)line-height,(5)text-transform,(6)text-decoration,(7)text-align,(8)text-indent,(9)white-space
6.文本外观属性:(1)text-shadow,(2)overflow
7.CSS层叠性、继承性及优先级
8.边框介绍
8.1边框属性:(1)border-style,(2)border-width,(3)border-color,(4)border-radius
8.2内边距属性
8.3外边距属性
8.4box-shadow
9.背景属性
9.1背景颜色
9.2背景图片:(1)background-repeat,(2)background-position,(3)background-attachment,(4)background-size,(5)background-origin,(6)background-clip,(7)复合写法,(8)不透明
10.元素的类型
11.span标签
12.display
13.表格标签:(1)table标签,(2)tr标签,(3)td标签,(4)th标签,(5)表格边框,(6)折叠边框,(7)表格宽度和高度,(8)表格边框间距border-spacing,(9)表格标题位置caption-side
14.表单
14.1创建表单:(1)标签
14.2表单控件:(1)input控件,(2)input/标签的type属性,(3)textarea控件,(4)select控件
15.CSS盒子模型:(1)边框(border),(2)内边距(padding),(3)外边距(margin),(4)清除内外边距,(5)盒子模型
16.浮动布局:(1)传统网页布局,(2)浮动简介,(3)浮动特性,(4)清除浮动
17.定位布局:(1)定位组成,(2)相对定位relative,(3)绝对定位absolute,(4)子绝父相,(5)固定定位fixed,(6)定位叠放次序z-index,(7)定位拓展
三.其他
1.圆角边框:(1)圆形,(2)圆角矩形
2.盒子阴影
3.文字阴影
4.用户界面样式:(1)鼠标样式 cursor,(2)轮廓线 outline,(3)防止拖拽文本域 resize,
5.过渡 transition
CSS的应用无处不在,希望某个片段就能帮助你,欢迎学习GIS的朋友一起交流。
《 Openlayers 综合示例200+ 》,
《 leaflet示例教程100+ 》,
《 Cesium示例教程100+》,
《MapboxGL示例教程100+》。