当前位置:Gxlcms > css > css实现波浪线和立方体的代码实例

css实现波浪线和立方体的代码实例

时间:2021-07-01 10:21:17 帮助过:16人阅读

本篇文章给大家带来的内容是关于css实现波浪线和立方体的代码实例,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

最近的项目有做到要画出波浪线效果,这里是利用linear-gradient来实现,也就是画圆,然后利用底色来遮住部分圆;

利用css3属性perspective加旋转实现立方体

1.css实现波浪线

  • html

  1. <div class="card-list">
  2. <div class="wave-container">
  3. <div class="wave"></div>
  4. <!-- 实现波浪线的div -->
  5. <div class="wave-left-decorate"></div>
  6. <div class="wave-right-decorate"></div>
  7. </div>
  8. </div>
  • css

  1. .card-list{
  2. display: flex;
  3. padding: 20px;
  4. width: 100%;
  5. }
  6. .wave-container{
  7. position: relative;
  8. margin-right: 28px;
  9. width: 20%;
  10. }
  11. .wave{
  12. width: 100%;
  13. height: 90px;
  14. background: linear-gradient(to right, rgb(85, 181, 255), rgb(207, 224, 232));
  15. }
  16. /* 波浪线 */
  17. .wave-left-decorate{
  18. position: absolute;
  19. top: -4px;
  20. width: 90px;
  21. height: 8px;
  22. transform-origin: center left;
  23. transform: rotate(90deg);
  24. background: radial-gradient(circle, #fff 2px, #fff, transparent 3px, transparent 4px, transparent 4px, transparent);
  25. background-size: 8px 8px;
  26. }

效果图

1497230186-5bb425d64e21c_articlex.png

2.实现立方体

  • html文件

  1. <div class="content">
  2. <div class="leftContent">
  3. <div class="leftContentItem">
  4. <div class="itemImg">
  5. <img class="leftContentImg" src="images/rabbit.jpg" alt=""/>
  6. <img class="leftContentImg" src="images/rabbit.jpg" alt=""/>
  7. <img class="leftContentImg" src="images/rabbit.jpg" alt=""/>
  8. <img class="leftContentImg" src="images/rabbit.jpg" alt=""/>
  9. <img class="leftContentImg" src="images/rabbit.jpg" alt=""/>
  10. <img class="leftContentImg" src="images/rabbit.jpg" alt=""/>
  11. </div>
  12. </div>
  13. </div>
  14. </div>
  • css文件

  1. .content{
  2. position: relative;
  3. display: flex;
  4. margin: 0 auto;
  5. padding-top: 50px;
  6. width: 1200px;
  7. height: 380px;
  8. background: url(../images/bg2.jpg) no-repeat;
  9. background-size: 1200px 100%;
  10. }
  11. .content .leftContent{
  12. margin-right: 25px;
  13. padding-left: 45px;
  14. padding-bottom: 30px;
  15. box-sizing: border-box;
  16. }
  17. /* 旋转的图片 */
  18. .content .leftContent .leftContentItem{
  19. width: 350px;
  20. height: 350px;
  21. /* 设置景深 */
  22. perspective: 1000px;
  23. /* 设置背景颜色在中间为椭圆形 */
  24. /*background: radial-gradient(ellipse at center, #430d6d 0%, #000 100%);*/
  25. }
  26. .leftContent .leftContentItem .itemImg{
  27. position: absolute;
  28. left: 20%;
  29. top: 20%;
  30. width: 200px;
  31. height: 200px;
  32. /* 实现3D呈现 */
  33. transform-style: preserve-3d;
  34. transform: rotateX(-20deg) rotateY(-20deg);
  35. -webkit-animation: 6s imgRotate linear infinite;
  36. -o-animation: 6s imgRotate linear infinite;
  37. animation: 6s imgRotate linear infinite;
  38. }
  39. .leftContent .leftContentItem .itemImg *{
  40. position: absolute;
  41. width: 100%;
  42. height: 100%;
  43. box-shadow: 0 0 25px rgba(0, 128, 0, .4);
  44. }
  45. .leftContentItem .itemImg .leftContentImg{
  46. position: absolute;
  47. width: 100%;
  48. height: 100%;
  49. }
  50. /* 分别对各个面进行旋转、平移操作 */
  51. .leftContentItem .itemImg .leftContentImg:nth-child(1){
  52. transform: translateZ(100px);
  53. }
  54. .leftContentItem .itemImg .leftContentImg:nth-child(2){
  55. transform: rotateX(180deg) translateZ(100px);
  56. }
  57. .leftContentItem .itemImg .leftContentImg:nth-child(3){
  58. transform: rotateY(-90deg) translateZ(100px);
  59. }
  60. .leftContentItem .itemImg .leftContentImg:nth-child(4){
  61. transform: rotateY(90deg) translateZ(100px);
  62. }
  63. .leftContentItem .itemImg .leftContentImg:nth-child(5){
  64. transform: rotateX(90deg) translateZ(100px);
  65. }
  66. .leftContentItem .itemImg .leftContentImg:nth-child(6){
  67. transform: rotateX(-90deg) translateZ(100px);
  68. }
  69. @-webkit-keyframes imgRotate {
  70. from{
  71. transform: translateZ(-100px) rotateX(0) rotateY(0);
  72. }
  73. to{
  74. transform: translateZ(-100px) rotateX(360deg) rotateY(360deg);
  75. }
  76. }

效果图

4210720639-5bbf57b25f072_articlex.png

主要就是设置景深perspective,然后对每个面旋转、平移

以上就是本篇文章的全部内容了,关于css更多的知识学习可以关注Gxl网的css视频教程栏目!!!

以上就是css实现波浪线和立方体的代码实例的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行