.snowflake{ position: absolute; left: 50%; width: 10px; height: 10px; background-color: #fff; border-radius: 50%; animation: snowing 5s linear infinite; } @keyframes snowing { 0% { transform: translateY(-30px); opacity: 0; } 50% { opacity: 1; } 100% { transform: translateY(800px); opacity: 0; } }
首先,大家需要创建一个class为.snowflake的元素。这个元素的属性包括了绝对定位,宽高10px,以及设定背景颜色。同时,该元素会采用圆角设计,这样更加符合雪花的形状特征。
接下来,大家将使用animation属性来定义下雪的动画特效。使用的参数包括第一个参数“snowing”(即定义的关键帧 name),5s表示动画持续5秒,linear表示动画效果为线性,最后的infinite意味着该动画会永久循环下去。
紧接着定义了@keyframes,用来设计下雪动画的关键帧。该关键帧具有三个状态,分别是0%, 50%, 100%,这些状态代表了雪花下落的三个阶段。
当动画在0%处时,雪花开始往下落并且透明度为0;而在50%时,雪花的透明度变为1;在100%时,雪花向下落了800个px的距离,同时透明度变为0。
通过这些CSS代码,大家就完成了CSS3下雪动画的设计。只需要把.snowflake元素插入到HTML的合适位置就可以看到雪花飞舞的效果啦。