IE9對(duì)HTML5中部分屬性不支持的原因分析

本文較為詳細(xì)的分析了IE9對(duì)HTML5中部分屬性不支持的原因,分享給大家供大家參考。具體方法如下:
眾所周知,在IE9中對(duì)于HTML5標(biāo)準(zhǔn)中的離線(xiàn)應(yīng)用程序以及CSS3中的一部分不提供支持。本文對(duì)此做一簡(jiǎn)要分析。
微軟日前已經(jīng)發(fā)布了Internet Explorer 9(以下簡(jiǎn)稱(chēng)IE9)正式版。在該版本中,微軟遵循他們的發(fā)展戰(zhàn)略,對(duì)于作為最新Web標(biāo)準(zhǔn)的HTML5與CSS3中大多數(shù)功能提供了支持。
同時(shí),微軟也準(zhǔn)備將IE9應(yīng)用在Windows Phone 7中使用。IE9無(wú)疑成為了微軟的Internet戰(zhàn)略中非常重要的一個(gè)環(huán)節(jié)。
但是,現(xiàn)在公布的IE9中,應(yīng)該被用來(lái)與Firefox,Safari,Chrome等瀏覽器相競(jìng)爭(zhēng)的HTML5中的幾個(gè)重大功能卻沒(méi)有得到支持。
現(xiàn)將W3C公布的HTML5以及與其相關(guān)的主要功能列舉如下:
通信相關(guān)(Web Sockets, Server-Sent Events等等)
CSS3樣式
設(shè)備定位功能(取得地理位置信息等等)
3D以及畫(huà)面顯示效果(WebGL,CSS3的3D功能等等)
多媒體(Audio/Video等等)
性能及功能性的提高(Web Workers,XHR2等等)
語(yǔ)義性(Microdata微數(shù)據(jù)等等)
離線(xiàn)及本地存儲(chǔ)(App Cache,本地存儲(chǔ),IndexedDB等等)
在這之中,即使離線(xiàn)也可以使用Web網(wǎng)頁(yè),Web應(yīng)用程序的功能,使用JavaScript也可以使用多線(xiàn)程的Web Workers,以及CSS3中的幾個(gè)功能都沒(méi)有在IE9中得到支持。
應(yīng)該對(duì)于HTML5提供積極支持的微軟,為什么沒(méi)有在IE9中對(duì)這幾個(gè)重要功能提供支持呢?如何這樣的話(huà)在Windows Phone7中使用IE9又有什么必要呢?這個(gè)理由在微軟的官方人士那里得到了回答。
提問(wèn):首先確認(rèn)一個(gè)事實(shí),IE9中對(duì)于HTML5的離線(xiàn)功能等等的確不提供支持嗎?
官方回答:的確如此,大致上來(lái)說(shuō),關(guān)于離線(xiàn)功能,以及CSS3中的幾個(gè)功能,在IE9中并不支持。
首先針對(duì)CSS3做一個(gè)說(shuō)明,CSS的屬性中的供應(yīng)商前綴(為了在其他供應(yīng)商所提供的瀏覽器中使用而在CSS的屬性前增加的“-moz-”,“-webkit-”等等前綴。)在IE9中不提供支持。
在IE9中提倡“統(tǒng)一標(biāo)記”,就是說(shuō)同樣的屬性,標(biāo)記應(yīng)該在任何瀏覽器中的渲染效果應(yīng)該都是同樣的。也就是說(shuō)為了在各供應(yīng)商所提供的瀏覽器中使用而人為增加的各種前綴是不符合這個(gè)概念的,所以不提供支持。
還有一個(gè)問(wèn)題就是關(guān)于離線(xiàn)應(yīng)用。這是因?yàn)樗囊粋€(gè)相關(guān)功能IndexedDB的實(shí)現(xiàn)方法也還沒(méi)有被確定下來(lái),所以與之密切相關(guān)的離線(xiàn)應(yīng)用程序功能也暫時(shí)不被支持。
現(xiàn)在使用IE的有個(gè)人,開(kāi)發(fā)者,企業(yè)等等各種客戶(hù)。因此無(wú)論如何對(duì)于新的功能提供的支持必須要采取一種保守的做法。
現(xiàn)在我們所提供的支持都是非常安全穩(wěn)定的,今后也將優(yōu)先對(duì)那些在用戶(hù)那里獲得非常高的渴望度的功能進(jìn)行支持。
不管什么功能一下子全部提供支持,或者說(shuō)為了迎合企業(yè)用戶(hù)而特意對(duì)某些功能提供支持的話(huà),這種支持是十分不安全、不穩(wěn)定的,所以我們不希望采取這種做法。
但是,對(duì)于IE功能的加強(qiáng)肯定不會(huì)停止在IE9這個(gè)版本上面,所以我們今后肯定還會(huì)對(duì)HTML5/CSS3繼續(xù)提供新的支持。
提問(wèn):事實(shí)上在IE9中,作為HTML5主要功能之一的離線(xiàn)功能與WebWorker功能沒(méi)有提供支持這件事是最近被民眾所關(guān)注的一件事。在宣稱(chēng)對(duì)于HTML5提供支持的同時(shí),不說(shuō)清楚支持什么功能,不支持什么功能,這種宣傳不是等于沒(méi)有嗎?
官方回答:并不是要特意隱瞞,應(yīng)該是在忙于對(duì)于IE9這種新的瀏覽器做一個(gè)比較全面地介紹,而沒(méi)有考慮到這個(gè)問(wèn)題。當(dāng)然,在對(duì)于各API各屬性進(jìn)行單獨(dú)介紹的時(shí)候,肯定是有一個(gè)比較明確的說(shuō)明的。
希望本文所述對(duì)大家的HTML5程序設(shè)計(jì)有所幫助。
相關(guān)文章
- 微軟不大張旗鼓支持的技術(shù)我就不去嘗試,等微軟一說(shuō)要支持了我就要嘗試了??赡苁歉④浀穆肪€(xiàn)走習(xí)慣了吧,不過(guò)想想挺傻的。2010-09-21
IE9beta版本瀏覽器對(duì)HTML5/CSS3的支持
IE9beta版本已經(jīng)發(fā)布幾天了,我也在第一時(shí)間體驗(yàn)了下,但是由于時(shí)間的問(wèn)題,這篇日志一直沒(méi)有發(fā),嗯,最近比較忙,其實(shí)主要是沒(méi)有大塊大塊的時(shí)間了,然后碎片時(shí)間利用的也2010-12-18如何讓IE9以下版本(ie6/7/8)認(rèn)識(shí)html5元素
瀏覽器不會(huì)給未知元素設(shè)定任何樣式(不同瀏覽器對(duì)元素會(huì)有不同的默認(rèn)樣式)在IE9之前的版本中,也不能對(duì)未知元素設(shè)定樣式,針對(duì)這個(gè)問(wèn)題有一個(gè)彌補(bǔ)方案,感興趣的朋友可以2013-04-01- 讓IE(包括IE6)支持HTML5元素,需要在HTML頭部添加一個(gè)簡(jiǎn)單的document.createElement聲明,具體祥看本文2014-03-12
- HTML 5 常用語(yǔ)法一覽(列舉不支持的屬性)2010-01-26
- Placeholder是HTML5新增的另一個(gè)屬性,當(dāng)input或者textarea設(shè)置了該屬性后,該值的內(nèi)容將作為灰字提示顯示在文本框中,當(dāng)文本框獲得焦點(diǎn)時(shí),提示文字消失2014-09-02
HTML5 微格式和相關(guān)的屬性名稱(chēng)
HTML5 發(fā)展中的命名約定和微格式。2010-02-10HTML5自定義data-* data(obj)屬性和jquery的data()方法的使用
可能大家在使用jquery mobile時(shí),經(jīng)常會(huì)看到data-role、data-theme等的使用,這些都是HTML5自定義屬性,本文整理一些,需要的朋友可以參考下2012-12-13- HTML5中,在新增加和廢除很多元素的同時(shí),也增加和廢除了很多屬性比如表單相關(guān)的屬性/鏈接相關(guān)屬性是新增的而HTML4中一些屬性就被廢除掉了,感興趣的你可以了解下,或許對(duì)2013-02-20
HTML5的結(jié)構(gòu)和語(yǔ)義(4):語(yǔ)義性的內(nèi)聯(lián)元素
HTML4用5個(gè)不同的內(nèi)聯(lián)元素表示略有差異的計(jì)算機(jī)代碼:var、code、kbd、tt和samp。但是,它無(wú)法表示時(shí)間、數(shù)字等基本數(shù)值。HTML5提供了幾個(gè)新的內(nèi)聯(lián)元素來(lái)滿(mǎn)足非技術(shù)作2008-10-17