案例1----打字特效
Filmage 2022-10-27_231430
- HTML代码块
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="./style.css">
<title>打字特效</title>
</head>
<body>
<div class="text">
<span>ARE YOU KIDDING ME?</span>
</div>
</body>
</html>
- CSS代码块
*{
padding: 0;
margin: 0;
/* box-sizing: border-box; */
box-sizing: content-box;
}
body{
height: 100vh;
background: #000;
}
.text{
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
color: #1eff00;
}
/* ch是一个新的单位,表示的是数字”0“的宽度 */
.text span{
font-size: 54px;
font-weight: 700;
width: 19ch;
white-space: nowrap;
overflow: hidden;
/* Monaco,monospace,Consolas */
font-family: 'Consolas';
/* steps函数,指定了一个阶跃函数
steps() 第一个参数number为指定间隔数,即把动画分为n步阶段性 */
animation: typing 6s steps(19),
caret 1s steps(1) infinite;
border-right: 2px solid;
/* 用户无法选择:用来消除真实的鼠标光标 */
user-select: none;
}
@keyframes typing{
from{
width: 0px;
}
}
@keyframes caret {
50%{
border-color: transparent;
}
}