您好,欢迎来到意榕旅游网。
搜索
您的当前位置:首页如何使用纯CSS实现一个没有DOM元素的动画效果

如何使用纯CSS实现一个没有DOM元素的动画效果

来源:意榕旅游网
本篇文章给大家带来的内容是关于如何使用纯CSS 实现一个没有DOM元素的动画效果,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

效果预览

1315127971-5b735e6f1e46e_articlex.gif

代码解读

没有 dom 元素,直接写 css。
设置页面空间:

body {
 position: fixed;
 margin: 0;
 width: 100vw;
 height: 100vh;
}

用伪元素设置背景图案:

body::before {
 content: '';
 position: fixed;
 width: 200vmax;
 height: 200vmax;
 background-color: steelblue;
 color: turquoise;
 background-image: 
 linear-gradient(
 45deg, 
 currentColor 25%, 
 transparent 25%, transparent 75%, 
 currentColor 75%),
 linear-gradient(
 45deg, 
 currentColor 25%, 
 transparent 25%, transparent 75%, 
 currentColor 75%);
 background-position: 0 0, 5vmax 5vmax;
 background-size: 10vmax 10vmax;

平移背景图案:

body::before {
 top: 50%;
 left: 50%;
 animation: 
 9s move infinite ease-in-out alternate;
}

@keyframes move {
 from {
 left: -40%;
 top: -40%;
 }

 to {
 left: -60%;
 top: -60%;
 }
}

让背景图案转动起来:

body::before {
 animation: 
 9s move infinite ease-in-out alternate,
 9s -1.5s rotating infinite ease-in-out alternate;
}

@keyframes rotating {
 to {
 transform: rotate(180deg);
 }
}

平移页面:

body {
 top: 50%;
 left: 50%;
 animation: 
 3s move infinite ease-in-out alternate;
}

缩放页面:

body {
 animation: 
 3s move infinite ease-in-out alternate,
 3s zoom infinite ease-in-out alternate;
}

@keyframes zoom {
 to {
 transform: scale(10);
 }
}

最后,增加变色效果:

@keyframes rotating {
 to {
 transform: rotate(180deg);
 filter: hue-rotate(1turn);
 }
}

大功告成!

Copyright © 2019- yrrf.cn 版权所有 赣ICP备2024042794号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务