濮阳杆衣贸易有限公司

主頁 > 知識庫 > 關(guān)于老式瀏覽器兼容HTML5和CSS3的問題

關(guān)于老式瀏覽器兼容HTML5和CSS3的問題

熱門標(biāo)簽:高德地圖標(biāo)注賓館位置 電視購物電銷外呼系統(tǒng) 杭州營銷電銷機器人供應(yīng)商 電話機器人如何 貸款電銷人工和機器人哪個好 飛亞外呼系統(tǒng) 百應(yīng)電銷機器人產(chǎn)業(yè) 聯(lián)通400電話申請 西寧智能外呼系統(tǒng)加盟

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

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

JavaScript Code復(fù)制內(nèi)容到剪貼板
  1. <!--[if IE]>   
  2. <script src=”http://html5shiv.googlecode.com/svn/trunk/html5.js”></script>   
  3. < ![endif]-->  

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

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

第二種方法:Coding JavaScript

JavaScript Code復(fù)制內(nèi)容到剪貼板
  1. <!--[if lt IE9]>    
  2. <script>    
  3.    (function() {   
  4.      if (!    
  5.      /*@cc_on!@*/  
  6.      0) return;   
  7.      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(', ');   
  8.      var i= e.length;   
  9.      while (i--){   
  10.          document.createElement(e[i])   
  11.      }    
  12. })()    
  13. </script>   
  14. <![endif]-->  

但是不管使用以上哪種方法,都要初始化新標(biāo)簽的CSS.因為HTML5在默認(rèn)情況下表現(xiàn)為內(nèi)聯(lián)元素,對這些元素進(jìn)行布局我們需要利用CSS手工把它們轉(zhuǎn)為塊狀元素方便布局

XML/HTML Code復(fù)制內(nèi)容到剪貼板
  1. /*html5*/   
  2. article,aside,dialog,footer,header,section,footer,nav,figure,menu{display:block}  

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

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

XML/HTML Code復(fù)制內(nèi)容到剪貼板
  1. <!--[if lte IE 8]>    
  2. <noscript>  
  3.      <style>.html5-wrappers{display:none!important;}</style>  
  4.      <div class="ie-noscript-warning">您的瀏覽器禁用了腳本,請<a href="">查看這里</a>來啟用腳本!或者<a href="/?noscript=1">繼續(xù)訪問</a>.   
  5.      </div>  
  6. </noscript>  
  7. <![endif]-->  

這樣可以引導(dǎo)用戶開啟腳本,或者直接跳轉(zhuǎn)到HTML4標(biāo)簽設(shè)計的界面。

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

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

Opacity透明度

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

CSS Code復(fù)制內(nèi)容到剪貼板
  1. background-color:green;   
  2. opacity: .4;   
  3. filter:progid:DXImageTransform.Microsoft.alpha(opacity=40);  

這里半透明區(qū)域
opacity: .4;

filter:alpha(opacity=40);

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

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

CSS Code復(fù)制內(nèi)容到剪貼板
  1. -moz-border-radius: 15px/* Firefox */  
  2. -webkit-border-radius: 15px/* Safari 、Chrome */  
  3. border-radius: 15px/* Opera 10.5+, IE6+ 使用 IE-CSS3*/  
  4. -moz-box-shadow: 5px 5px 5px #000/* Firefox */  
  5. -webkit-box-shadow: 5px 5px 5px #000/* Safari、Chrome */  
  6. box-shadow: 5px 5px 50px #000/* Opera 10.5+,IE6+ 使用 IE-CSS3 */  
  7. behavior: url(ie-css3.htc); /*引用ie-css3.htc */  

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

shadow會產(chǎn)生連續(xù)、漸變的陰影

CSS Code復(fù)制內(nèi)容到剪貼板
  1. filter: progid:DXImageTransform.Microsoft.Shadow(color='#000000', Direction=145, Strength=10);  

drop-shadow產(chǎn)生的陰影沒有明暗變化

CSS Code復(fù)制內(nèi)容到剪貼板
  1. filter:progid:DXImageTransform.Microsoft.DropShadow(Color="#6699CC",OffX="5",OffY="5",Positive="1");  

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

以上這篇關(guān)于老式瀏覽器兼容HTML5和CSS3的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

標(biāo)簽:內(nèi)蒙古 煙臺 邯鄲 牡丹江 玉溪 晉中 安慶 撫州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《關(guān)于老式瀏覽器兼容HTML5和CSS3的問題》,本文關(guān)鍵詞  關(guān)于,老式,瀏覽器,兼容,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《關(guān)于老式瀏覽器兼容HTML5和CSS3的問題》相關(guān)的同類信息!
  • 本頁收集關(guān)于關(guān)于老式瀏覽器兼容HTML5和CSS3的問題的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    铁岭县| 徐汇区| 城口县| 平陆县| 贵溪市| 望江县| 阜宁县| 锦州市| 来宾市| 二连浩特市| 深泽县| 辛集市| 牟定县| 东海县| 岚皋县| 穆棱市| 马尔康县| 呼和浩特市| 黑水县| 芮城县| 海兴县| 汾西县| 多伦县| 太原市| 抚松县| 古田县| 南康市| 高平市| 广平县| 泊头市| 黄陵县| 建湖县| 博客| 洛南县| 泰安市| 务川| 蒙阴县| 镇巴县| 西乌| 正镶白旗| 禹州市|