Heim  >  Artikel  >  Web-Frontend  >  CSS3-Implementierung des Browser-Hintergrundgradienten-Methodencodes

CSS3-Implementierung des Browser-Hintergrundgradienten-Methodencodes

小云云
小云云Original
2018-03-06 09:27:562344Durchsuche

Dieser Artikel führt Sie hauptsächlich in die CSS3-Methode zum Schreiben einer Verlaufshintergrundfarbe für den Browserhintergrund ein. Wir werden Ihnen den Code zum Implementieren dieses Verlaufshintergrunds mitteilen und hoffen, Ihnen dabei zu helfen.

Der Effekt ist wie folgt:

Wissenspunkte: RGB-Vollfarbzyklusalgorithmus, HEX- und RGB-Farbkonvertierungsalgorithmus, CSS3-Farbverlauf, CSS3-Verlaufsfarbe kompatibel, z. B. Methode, Timer und Schleifen, Funktionskapselung, Array-Anwendungen usw.

CSS-Code:


  <style>
    *{margin:0;padding:0;}
    body#wrap{width:100%;height:500px;
}
  </style>

Javascript-Code:


    <script>
        (function(){
            var oWrap=document.getElementById(&#39;wrap&#39;);
            var max=220;  /*存储封值*/
            var min=180;      /*存储谷值*/
            var color=[max,min,min]; /*根据初始值红色来初始化数组*/
            var timer=null;
            var length=color.length;
            var colorL,colorR
            timer=setInterval(change,20);
            /*不容许在机组运行中直接修改代码*/
            function change(){
                /*在定时器中每过20毫秒 执行一次代码*/
                /*检测一次数组*/
                for(var i=0;i<length;i++){
                    i%=length;
                   var arrX=(i+1)%length;
                   var arrY=(i+2)%length;
                    if(color[i]==max&&color[arrX]==min){
                        color[arrY]++;
                    }
                    if(color[i]== min&&color[arrX]==max){
                        color[arrY]--;
                    }
                 colorL=&#39;#&#39;+convert(color[0])+&#39;&#39;+convert(color[1])+&#39;&#39;+convert(color[2])+&#39;&#39;;
                colorR=&#39;#&#39;+convert(color[2])+&#39;&#39;+convert(color[0])+&#39;&#39;+convert(color[1])+&#39;&#39;;
                        
                    }
                    gColor(colorL,colorR);
                }
            
            function convert(sRgb){ /*rgb转换成HEX*/
                var sRgb=sRgb;
                var sHex=sRgb.toString(16);
                sHex=sHex.length<2?&#39;0&#39;+sHex:sHex 
                /* 三目判断  判断条件 ? 符合条件 :不符合条件*/
                return sHex;
            }
            function gColor(colorL,colorR){
                if(navigator.userAgent.match(/Trident/i)&&navigator.userAgent.match(/MSIE [7|8|9].0/i)){
                    //通过正则检测浏览器信息是否是ie 并且 ie版本是不是 7或者8或者9 之一
                    oWrap.style.filter = "progid:DXImageTransform.Microsoft.gradient( startColorstr=" + colorL + ", endColorstr=" + colorR + ",GradientType=0 )";
                }else{
                    oWrap.style.background=&#39;-webkit-linear-gradient(left,&#39;+colorL+&#39;,&#39;+colorR+&#39;)&#39; //谷歌
                    oWrap.style.background=&#39;-ms-linear-gradient(left,&#39;+colorL+&#39;,&#39;+colorR+&#39;)&#39;  //ie 10 11
                }
             
            
            }
        })();            
    </script>

Verwandte Empfehlungen :
Verwenden Sie CSS3, um eine Hintergrundverlaufsmethode zu erzielen

CSS3-Klickschaltfläche, um einen Hintergrundverlaufsanimationseffekt zu erzielen

div+css Beispiel für einen Hintergrundfarbverlaufsfarbcode

Das obige ist der detaillierte Inhalt vonCSS3-Implementierung des Browser-Hintergrundgradienten-Methodencodes. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn