国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > CSS > 正文

瀏覽器兼容HTML5和CSS3的問題

2020-03-24 17:58:35
字體:
來源:轉載
供稿:網友
HTML5和CSS3是非常好用并且功能強大的新屬性,唯一的重大缺陷就是可能很多舊版瀏覽器兼容,今天就給大家分享一下關于舊版的瀏覽器兼容HTML5和CSS3的問題。

1.讓老式瀏覽器支持HTML5

HTML5能為我們做的事兒很多,最為可口的就是語義化標簽的應用,如果你已經在Chrome或者其他支持HTML5的瀏覽器上用過它的牛x,那這篇文章對你一定有用,因為現在你也可以在IE上用到HTML5。

第一種方法:使用Google的html5shiv包(推薦)

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


JavaScript Code復制內容到剪貼板

1. !--[if IE]
2. script src=”https://html5shiv.googlecode.com/svn/trunk/html5.js” /script
3. ![endif]--

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

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

第二種方法:Coding JavaScript


JavaScript Code復制內容到剪貼板

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]-- 

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


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

1./*html5*/
2.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] 2. noscript 3. style .html5-wrappers{display:none!important;} /style 4. p >

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

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

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

Opacity透明度

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

CSS Code復制內容到剪貼板

1.background-color:green; 2.opacity: .4; 3.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 */ 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中有自己的濾鏡來實現陰影(shadow)和投影(drop-shadow)效果的

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


CSS Code復制內容到剪貼板

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

CSS Code復制內容到剪貼板

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

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


相信看了這些案例你已經掌握了方法,更多精彩請關注php 其它相關文章!

相關閱讀:

用Js操作HTTP的Cookie的實現步驟

Js操作BOM對象模型的詳細介紹

在HTML的網頁布局里div與span有什么區別

以上就是瀏覽器兼容HTML5和CSS3的問題的詳細內容,html教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宜君县| 兴业县| 周至县| 兴安县| 宁夏| 湖南省| 繁峙县| 岑溪市| 秀山| 宿州市| 峨边| 治县。| 安陆市| 泰和县| 南川市| 济南市| 正宁县| 舞钢市| 宝丰县| 普陀区| 贵港市| 郯城县| 九龙城区| 福州市| 新晃| 基隆市| 遵义县| 射阳县| 江川县| 泰州市| 响水县| 咸宁市| 北辰区| 乐亭县| 奉节县| 共和县| 武邑县| 璧山县| 稻城县| 北流市| 新巴尔虎右旗|