1. 程式人生 > >html5表白神器開發,做一個浪漫的程式設計師

html5表白神器開發,做一個浪漫的程式設計師




效果知識點:css33D場景、3D變換、愛心製作技巧、3D立方體制作技巧、自定義動畫,原生js DOM節點操作、迴圈等。

html5表白神器原始碼:

<!doctype html><!--聲明當前文件為html文件-->
<html lang="en"><!--語言為英語-->
  <head><!--頭部-->
    <metacharset="UTF-8"><!--字元編碼:utf-8國際編碼 gb2312中文編碼-->
    <metaname="Keywords"content="關鍵詞">
    <metaname="Description"content="描述">
    <title>Document</title>
    <style>/*css樣式表的衣櫃*/
    *{margin:0px;padding:0px;}/*去除預設外邊距、內邊距*/
      body{background:#000;}
      .heart3d {
       position: absolute;
       top: 0;
       right: 0;
       bottom: 0;
       left: 0;
       margin: auto;
       width: 100px;
       height: 160px;
       transform-origin:centercenter center;
       transform-style: preserve-3d;
       animation: spin 15s infinite linear;
      }
      #display{width:200px;color:white;font-size:24px;white-space:normal;text-indent:55px;position:absolute;left:100px;top:100px;}
      .heart3d [class^="rib"] {
       position: absolute;
       width: 100px;
       height: 160px;
       border: solid #f22613;
       border-width: 1px 1px 00;
       border-radius: 50% 50% 0 /40% 50% 0;
      }
      .heart3d [class$="1"] {
       transform: rotateY(10deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="2"] {
       transform: rotateY(20deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="3"] {
       transform: rotateY(30deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="4"] {
       transform: rotateY(40deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="5"] {
       transform: rotateY(50deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="6"] {
       transform: rotateY(60deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="7"] {
       transform: rotateY(70deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="8"] {
       transform: rotateY(80deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="9"] {
       transform: rotateY(90deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="10"] {
       transform: rotateY(100deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="11"] {
       transform: rotateY(110deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="12"] {
       transform: rotateY(120deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="13"] {
       transform: rotateY(130deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="14"] {
       transform: rotateY(140deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="15"] {
       transform: rotateY(150deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="16"] {
       transform: rotateY(160deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="17"] {
       transform: rotateY(170deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="18"] {
       transform: rotateY(180deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="19"] {
       transform: rotateY(190deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="20"] {
       transform: rotateY(200deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="21"] {
       transform: rotateY(210deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="22"] {
       transform: rotateY(220deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="23"] {
       -webkit-transform: rotateY(230deg) rotateZ(45deg) translateX(30px);
       transform: rotateY(230deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="24"] {
       transform: rotateY(240deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="25"] {
       transform: rotateY(250deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="26"] {
       transform: rotateY(260deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="27"] {
       transform: rotateY(270deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="28"] {
       transform: rotateY(280deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="29"] {
       transform: rotateY(290deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="30"] {
       transform: rotateY(300deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="31"] {
       transform: rotateY(310deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="32"] {
       transform: rotateY(320deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="33"] {
       transform: rotateY(330deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="34"] {
       transform: rotateY(340deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="35"] {
       transform: rotateY(350deg) rotateZ(45deg) translateX(30px);
      }
      .heart3d [class$="36"] {
       transform: rotateY(360deg) rotateZ(45deg) translateX(30px);
      }

      @keyframes spin {
       to {
        transform: rotateY(360deg) rotateX(360deg);
       }
      }
      .per{
        width:50px;height:50px;position:absolute;top:0;left:0;right:0;bottom:0;
        margin:auto;transform-style:preserve-3d;perspective:800px;
      }
      
      .img{width:50px;height:50px;position:absolute;backface-visibility:hidden;
      }
      .img:nth-child(1){top:-50px;left:0;transform-origin:bottom;
      transform:translateZ(30px)rotateX(90deg);}
      .img:nth-child(2){top:50px;left:0;transform-origin:top;
      transform:translateZ(30px)rotateX(-90deg);}
      .img:nth-child(3){top:0px;left:-50px;transform-origin:right;
      transform:translateZ(30px)rotateY(-90deg);}
      .img:nth-child(4){top:0px;left:50px;transform-origin:left;
      transform:translateZ(30px)rotateY(90deg);}
      .img:nth-child(6){top:0px;left:0;transform:translateZ(30px);}
      .img:nth-child(5){top:0px;left:0;transform:translateZ(0px);}
      
    </style>
  </head>
  <body><!--身體-->
    <divid="display">
    </div>
    <divclass='heart3d'>
      <divclass='rib1'></div>
      <divclass='rib2'></div>
      <divclass='rib3'></div>
      <divclass='rib4'></div>
      <divclass='rib5'></div>
      <divclass='rib6'></div>
      <divclass='rib7'></div>
      <divclass='rib8'></div>
      <divclass='rib9'></div>
      <divclass='rib10'></div>
      <divclass='rib11'></div>
      <divclass='rib12'></div>
      <divclass='rib13'></div>
      <divclass='rib14'></div>
      <divclass='rib15'></div>
      <divclass='rib16'></div>
      <divclass='rib17'></div>
      <divclass='rib18'></div>
      <divclass='rib19'></div>
      <divclass='rib20'></div>
      <divclass='rib21'></div>
      <divclass='rib22'></div>
      <divclass='rib23'></div>
      <divclass='rib24'></div>
      <divclass='rib25'></div>
      <divclass='rib26'></div>
      <divclass='rib27'></div>
      <divclass='rib28'></div>
      <divclass='rib29'></div>
      <divclass='rib30'></div>
      <divclass='rib31'></div>
      <divclass='rib32'></div>
      <divclass='rib33'></div>
      <divclass='rib34'></div>
      <divclass='rib35'></div>
      <divclass='rib36'></div>
      <divclass="per">
        <divclass="img"><imgwidth="50" height="50" src="images/1.jpg" /></div>
        <divclass="img"><imgwidth="50" height="50" src="images/2.jpg" /></div>
        <divclass="img"><imgwidth="50" height="50" src="images/3.jpg" /></div>
        <divclass="img"><imgwidth="50" height="50" src="images/4.jpg" /></div>
        <divclass="img"><imgwidth="50" height="50" src="images/5.jpg" /></div>
        <divclass="img"><imgwidth="50" height="50" src="images/6.jpg" /></div>
      </div>
    </div>
    
    <script>
      
      var i =0;
      var str1 ="對於一個網頁製作者來說,對HTML語言一定不會感到陌生,因為HTML語言是所有網頁製作的基礎。但是如果頁面能夠方便網友們的使用,友好而大方,甚至像桌面應用程式一樣,那麼僅僅依靠HTML語言是不夠的,JavaScript在這其中扮演著重要的角色。";
      var str ="如果,愛一個人,守一份愛情,可以在早春一起去踏青,可以在盛夏一起去賞荷,可以在淺秋一起去觀月,可以在深冬一起去尋梅,不厭倦,卻歡樂,不平凡,卻平淡。那麼,此生便無憾了。";
      window.onload =function typing(){
        var mydiv =document.getElementById("display");
        mydiv.innerHTML +=str.charAt(i);
        var oBtn =document.getElementById('btn');
        i++;
        var id =setTimeout(typing,100);
        if(i==str.length){
          clearTimeout(id);
          mydiv.value ="";
          mydiv.innerHTML +=""
          //alert("程式執行完畢!");
        }
        
        
      }
    </script>
    
  </body>
</html>

web前端學習群:575308719,分享原始碼、視訊、企業級案例、最新知識點,歡迎初學者和在進階中的小夥伴。

關注公眾號→‘學習web前端’跟大佬一起學前端!