日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

七夕情人节表白-纯JS实现3D心形+图片旋转

發(fā)布時間:2023/12/13 综合教程 33 生活家
生活随笔 收集整理的這篇文章主要介紹了 七夕情人节表白-纯JS实现3D心形+图片旋转 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

七夕情人節(jié)就快到了,這里獻上純js表白神器-心里都是你,預(yù)覽:

技術(shù)點:css-3d、js-隨機色、js-transform

1.html:

 1     <div class="heart">
 2         <div class="cube">
 3             <div>
 4                 <img src="images/1.jpg" width="100" height="100" alt="">
 5             </div>
 6             <div>
 7                 <img src="images/2.jpg" width="100" height="100" alt="">
 8             </div>
 9             <div>
10                 <img src="images/3.jpg" width="100" height="100" alt="">
11             </div>
12             <div>
13                 <img src="images/4.jpg" width="100" height="100" alt="">
14             </div>
15             <div>
16                 <img src="images/5.jpg" width="100" height="100" alt="">
17             </div>
18             <div>
19                 <img src="images/6.jpg" width="100" height="100" alt="">
20             </div>
21         </div>
22     </div>

2.css:

 1 *{
 2     margin:0;
 3     padding:0;
 4 }
 5 body{
 6     background:#000;
 7     overflow:hidden;
 8 }
 9 .heart{
10     position:absolute;
11     left:0;
12     right:0;
13     top:0;
14     bottom:0;
15     width:200px;
16     height:260px;
17     margin: auto;
18     transform-style:preserve-3d;
19     perspective:800px;
20     animation:rot 15s linear infinite;
21 }
22 @keyframes rot{
23     from{transform:rotateY(0deg) rotateX(0deg)}
24     to{transform:rotateY(360deg) rotateX(360deg)}
25 }
26 .rib{
27     position:absolute;
28     width:200px;
29     height:260px;
30     border:solid red;
31     border-width:1px 1px 0 0;
32     border-radius:100% 100% 0/40% 100% 0;
33     transition: all 1s;
34 }
35 .cube{
36     position:absolute;
37     left:0;
38     right:0;
39     top:0;
40     bottom:0;
41     margin:auto;
42     width:100px;
43     height:100px;
44     color:red;
45     transform-style:preserve-3d;
46     transform:translateZ(50px);
47 }
48 .cube div{
49     position:absolute;
50     width:100px;
51     height:100px;
52 }
53 .cube div:nth-child(1){
54     left:0;
55     top:-100px;
56     transform-origin:bottom;
57     transform:rotateX(90deg);
58 }
59 .cube div:nth-child(2){
60     left:0;
61     top:100px;
62     transform-origin:top;
63     transform:rotateX(-90deg);
64 }
65 .cube div:nth-child(3){
66     left:-100px;
67     top:0px;
68     transform-origin:right;
69     transform:rotateY(-90deg);
70 }
71 .cube div:nth-child(4){
72     left:100px;
73     top:0px;
74     transform-origin:left;
75     transform:rotateY(90deg);
76 }
77 .cube div:nth-child(5){
78     left:0;
79     top:0px;
80 }
81 .cube div:nth-child(6){
82     left:0;
83     top:0px;
84     transform:translateZ(-100px);
85 }

View Code

3.js:

 1 var heart = document.getElementsByClassName("heart")[0];
 2 for (var i = 0; i < 36; i++) {
 3     var oDiv = document.createElement("div");
 4     oDiv.className = "rib";
 5     // 畫36條心形曲線
 6     oDiv.style.transform = "rotateY(" + 10 * i + "deg) rotateZ(45deg) translateX(30px)";
 7     var n = 0;
 8     setInterval(function() {
 9         if (n < 36) {
10             document.getElementsByClassName('rib')[n].style.borderColor = getRandomColor();
11             n = n + 1;
12         } else {
13             n = 0;
14         }
15     },1000)
16     console.log(n)
17     heart.appendChild(oDiv);
18 }
19 
20 // 隨機色
21 var getRandomColor = function(){    
22   return  '#' +    
23     (function(color){    
24     return (color +=  '0123456789abcdef'[Math.floor(Math.random()*16)])    
25       && (color.length == 6) ?  color : arguments.callee(color);    
26   })('');    
27 } 

圖片資源自行填充。

下圖效果只是添加了一個hover改變div的transform屬性,大家可以擴展制作。

總結(jié)

以上是生活随笔為你收集整理的七夕情人节表白-纯JS实现3D心形+图片旋转的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。