中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何解決老式瀏覽器兼容HTML5和CSS3的問題

發布時間:2021-09-15 13:41:24 來源:億速云 閱讀:121 作者:柒染 欄目:web開發

這期內容當中小編將會給大家帶來有關如何解決老式瀏覽器兼容HTML5和CSS3的問題,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

1.讓老式瀏覽器支持HTML5
 
HTML5能為我們做的事兒很多,最為可口的就是語義化標簽的應用,如果你已經在Chrome或者其他支持HTML5的瀏覽器上用過它的牛x,那這篇文章對你一定有用,因為現在你也可以在IE上用到HTML5。
 
第一種方法:使用Google的html5shiv包(推薦)

首先你要引用下面是引用Google的html5.js文件,好處就不說了:

JavaScript Code復制內容到剪貼板

  1. <!--[if IE]>   
    <script src=”http://html5shiv.googlecode.com/svn/trunk/html5.js”></script>   
    < ![endif]-->

將上代碼復制到head部分,記住一定要是head部分(因為IE必須在元素解析前知道這個元素,所以這個js文件不能在其他位置調用,否則失效)

主要是讓這些html5標簽成塊狀,像div那樣。好了,簡單吧,一句話概括就是:引用html5.js  使html5標簽成塊狀

第二種方法:Coding JavaScript

JavaScript Code復制內容到剪貼板

  1. <!--[if lt IE9]>    
    <script>    
       (function() {   
         if (!    
         /*@cc_on!@*/  
         0) return;   
         var e = "abbr, article, aside, audio, canvas, datalist, details, dialog, eventsource, figure, footer, header, hgroup, mark, menu, meter, nav, output, progress, section, time, video".split(', ');   
         var i= e.length;   
         while (i--){   
             document.createElement(e[i])   
         }    
    })()    
    </script>   
    <![endif]-->

但是不管使用以上哪種方法,都要初始化新標簽的CSS.因為HTML5在默認情況下表現為內聯元素,對這些元素進行布局我們需要利用CSS手工把它們轉為塊狀元素方便布局

XML/HTML Code復制內容到剪貼板

  1. /*html5*/   
    article,aside,dialog,footer,header,section,footer,nav,figure,menu{display:block}

但是如果ie6/7/8 禁用腳本的用戶,那么就變成了無樣式的"白板"網頁,我們該怎么解決呢?

我們可以參照facebook的做法,即引導用戶進入帶有noscript標識的 “/?_fb_noscript=1”頁面,用 html4 標簽替換 html5 標簽,這要比為了保持兼容性而寫大量 hack 的做法更輕便一些。

XML/HTML Code復制內容到剪貼板

  1. <!--[if lte IE 8]>    
    <noscript>  
         <style>.html5-wrappers{display:none!important;}</style>  
         <div class="ie-noscript-warning">您的瀏覽器禁用了腳本,請<a href="">查看這里</a>來啟用腳本!或者<a href="/?noscript=1">繼續訪問</a>.   
         </div>  
    </noscript>  
    <![endif]-->

這樣可以引導用戶開啟腳本,或者直接跳轉到HTML4標簽設計的界面。

2.讓老式瀏覽器兼容CSS3(不完全兼容方案)

到Internet Explorer 8為止,IE系列是不支持CSS3的。在IE中要做一些常用的效果如圓角、陰影,就需要用一些冗余而無意義的元素和圖片來做出這些效果。在厭倦這些后,就 想著用更為簡潔、直接有效、CSS3式的辦法來解決這些問題。好在就算是飽受批評的Internet Explorer,其本身也是足夠強大的。IE特有的技術可以很好的實現一些CSS3的效果。

Opacity透明度

元素的透明度在IE中可以很方便的用濾鏡來實現。

CSS Code復制內容到剪貼板

  1. background-color:green;   
    opacity: .4;   
    filter:progid:DXImageTransform.Microsoft.alpha(opacity=40);

這里半透明區域
opacity: .4;

filter:alpha(opacity=40);

border-radius圓角/Box Shadow盒陰影/Text Shadow文字陰影

在IE中可以利用Vector Markup Language (VML)和javascript來實現這些效果,參見IE-CSS3,在引用了一個HTC文件后,在IE瀏覽器中就可以使用這三種CSS3屬性了。

CSS Code復制內容到剪貼板

  1. -moz-border-radius: 15px; /* Firefox */  
    -webkit-border-radius: 15px; /* Safari 、Chrome */  
    border-radius: 15px; /* Opera 10.5+, IE6+ 使用 IE-CSS3*/  
    -moz-box-shadow: 5px 5px 5px #000; /* Firefox */  
    -webkit-box-shadow: 5px 5px 5px #000; /* Safari、Chrome */  
    box-shadow: 5px 5px 50px #000; /* Opera 10.5+,IE6+ 使用 IE-CSS3 */  
    behavior: url(ie-css3.htc); /*引用ie-css3.htc */

實際上,在IE中有自己的濾鏡來實現陰影(shadow)和投影(drop-shadow)效果的

shadow會產生連續、漸變的陰影

CSS Code復制內容到剪貼板

  1. filter: progid:DXImageTransform.Microsoft.Shadow(color='#000000', Direction=145, Strength=10);  

drop-shadow產生的陰影沒有明暗變化

CSS Code復制內容到剪貼板

  1. filter:progid:DXImageTransform.Microsoft.DropShadow(Color="#6699CC",OffX="5",OffY="5",Positive="1");  

濾鏡似乎和現有的htc腳本有沖突,或者可以稱之為特性:兩者同時在一個元素上啟用的時候,濾鏡效果會轉移到其子元素上

上述就是小編為大家分享的如何解決老式瀏覽器兼容HTML5和CSS3的問題了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

庆阳市| 仪陇县| 丰顺县| 永胜县| 鲁山县| 扬州市| 顺义区| 旺苍县| 枣阳市| 澜沧| 洞口县| 安义县| 房产| 闽侯县| 潮州市| 高平市| 岑溪市| 西林县| 千阳县| 同仁县| 星座| 枣强县| 蒙阴县| 夹江县| 大渡口区| 临潭县| 永仁县| 石泉县| 渝中区| 扶绥县| 荥阳市| 铁岭市| 彝良县| 奉新县| 高雄县| 楚雄市| 泰州市| 正宁县| 台安县| 巧家县| 浑源县|