最近的项目有做到要画出波浪线效果,这里是利用linear-gradient来实现,也就是画圆,然后利用底色来遮住部分圆;
利用css3属性perspective加旋转实现立方体1.css实现波浪线
html
<div class="card-list"> <div class="wave-container"> <div class="wave"></div> <!-- 实现波浪线的div --> <div class="wave-left-decorate"></div> <div class="wave-right-decorate"></div> </div></div>
css
.card-list{ display: flex; padding: 20px; width: 100%;}.wave-container{ position: relative; margin-right: 28px; width: 20%;}.wave{ width: 100%; height: 90px; background: linear-gradient(to right, rgb(85, 181, 255), rgb(207, 224, 232));}/* 波浪线 */.wave-left-decorate{ position: absolute; top: -4px; width: 90px; height: 8px; transform-origin: center left; transform: rotate(90deg); background: radial-gradient(circle, #fff 2px, #fff, transparent 3px, transparent 4px, transparent 4px, transparent); background-size: 8px 8px;}
效果图
2.实现立方体
html文件
<div class="content"> <div class="leftcontent"> <div class="leftcontentitem"> <div class="itemimg"> <img class="leftcontentimg" src="images/rabbit.jpg" alt=""/> <img class="leftcontentimg" src="images/rabbit.jpg" alt=""/> <img class="leftcontentimg" src="images/rabbit.jpg" alt=""/> <img class="leftcontentimg" src="images/rabbit.jpg" alt=""/> <img class="leftcontentimg" src="images/rabbit.jpg" alt=""/> <img class="leftcontentimg" src="images/rabbit.jpg" alt=""/> </div> </div> </div></div>
css文件
.content{ position: relative; display: flex; margin: 0 auto; padding-top: 50px; width: 1200px; height: 380px; background: url(../images/bg2.jpg) no-repeat; background-size: 1200px 100%;}.content .leftcontent{ margin-right: 25px; padding-left: 45px; padding-bottom: 30px; box-sizing: border-box;}/* 旋转的图片 */.content .leftcontent .leftcontentitem{ width: 350px; height: 350px; /* 设置景深 */ perspective: 1000px; /* 设置背景颜色在中间为椭圆形 */ /*background: radial-gradient(ellipse at center, #430d6d 0%, #000 100%);*/}.leftcontent .leftcontentitem .itemimg{ position: absolute; left: 20%; top: 20%; width: 200px; height: 200px; /* 实现3d呈现 */ transform-style: preserve-3d; transform: rotatex(-20deg) rotatey(-20deg); -webkit-animation: 6s imgrotate linear infinite; -o-animation: 6s imgrotate linear infinite; animation: 6s imgrotate linear infinite;}.leftcontent .leftcontentitem .itemimg *{ position: absolute; width: 100%; height: 100%; box-shadow: 0 0 25px rgba(0, 128, 0, .4);}.leftcontentitem .itemimg .leftcontentimg{ position: absolute; width: 100%; height: 100%;}/* 分别对各个面进行旋转、平移操作 */.leftcontentitem .itemimg .leftcontentimg:nth-child(1){ transform: translatez(100px);}.leftcontentitem .itemimg .leftcontentimg:nth-child(2){ transform: rotatex(180deg) translatez(100px);}.leftcontentitem .itemimg .leftcontentimg:nth-child(3){ transform: rotatey(-90deg) translatez(100px);}.leftcontentitem .itemimg .leftcontentimg:nth-child(4){ transform: rotatey(90deg) translatez(100px);}.leftcontentitem .itemimg .leftcontentimg:nth-child(5){ transform: rotatex(90deg) translatez(100px);}.leftcontentitem .itemimg .leftcontentimg:nth-child(6){ transform: rotatex(-90deg) translatez(100px);}@-webkit-keyframes imgrotate { from{ transform: translatez(-100px) rotatex(0) rotatey(0); } to{ transform: translatez(-100px) rotatex(360deg) rotatey(360deg); }}
效果图
主要就是设置景深perspective,然后对每个面旋转、平移
以上就是本篇文章的全部内容了,关于css更多的知识学习可以关注的css视频教程栏目!!!
以上就是css实现波浪线和立方体的代码实例的详细内容。
