这段代码是一个 HTML 页面,它包含了内联的 CSS 样式,用于创建一个动画加载器(loader)点击获取更多源码
演示效果
HTML&CSS
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>前端Hardy</title>
<style>
body {
background-color: #e8e8e8;
display: flex;
align-items: center;
justify-content: center;
height: 100vh;
}
.loader {
width: 48px;
height: 48px;
margin: auto;
position: relative;
}
.loader:before {
content: '';
width: 48px;
height: 5px;
background: #f0808050;
position: absolute;
top: 60px;
left: 0;
border-radius: 50%;
animation: shadow324 0.5s linear infinite;
}
.loader:after {
content: '';
width: 100%;
height: 100%;
background: #f08080;
position: absolute;
top: 0;
left: 0;
border-radius: 4px;
animation: jump7456 0.5s linear infinite;
}
@keyframes jump7456 {
15% {
border-bottom-right-radius: 3px;
}
25% {
transform: translateY(9px) rotate(22.5deg);
}
50% {
transform: translateY(18px) scale(1, .9) rotate(45deg);
border-bottom-right-radius: 40px;
}
75% {
transform: translateY(9px) rotate(67.5deg);
}
100% {
transform: translateY(0) rotate(90deg);
}
}
@keyframes shadow324 {
0%,
100% {
transform: scale(1, 1);
}
50% {
transform: scale(1.2, 1);
}
}
</style>
</head>
<body>
<div class="loader"></div>
</body>
</html>
HTML 结构
- loader:定义了一个类名为 loader 的 div 元素,用于显示加载动画。
CSS 样式
- body:设置了页面的背景颜色、显示方式、对齐方式和高度。
- .loader:定义了加载器的基本样式,包括宽度、高度、外边距和位置。
- .loader:before:使用伪元素:before 创建了一个绝对定位的元素,用于显示加载器的阴影。它有一个背景颜色、宽度、高度、圆角和动画。
- .loader:after:使用伪元素:after 创建了另一个绝对定位的元素,用于显示加载器的主体。它有一个背景颜色、宽度、高度、圆角和动画。
- @keyframes jump7456:定义了一个关键帧动画,用于控制加载器主体的跳跃和旋转效果。动画中包含了不同的变换和边框半径的变化。
- @keyframes shadow324:定义了一个关键帧动画,用于控制加载器阴影的缩放效果。