本文較為詳細(xì)的分析了ie9對html5中部分屬性不支持的原因,分享給大家供大家參考。具體方法如下:
眾所周知,在ie9中對于html5標(biāo)準(zhǔn)中的離線應(yīng)用程序以及css3中的一部分不提供支持。本文對此做一簡要分析。
微軟日前已經(jīng)發(fā)布了internet explorer 9(以下簡稱ie9)正式版。在該版本中,微軟遵循他們的發(fā)展戰(zhàn)略,對于作為最新web標(biāo)準(zhǔn)的html5與css3中大多數(shù)功能提供了支持。
同時(shí),微軟也準(zhǔn)備將ie9應(yīng)用在windows phone 7中使用。ie9無疑成為了微軟的internet戰(zhàn)略中非常重要的一個(gè)環(huán)節(jié)。
但是,現(xiàn)在公布的ie9中,應(yīng)該被用來與firefox,safari,chrome等瀏覽器相競爭的html5中的幾個(gè)重大功能卻沒有得到支持。
現(xiàn)將w3c公布的html5以及與其相關(guān)的主要功能列舉如下:
通信相關(guān)(web sockets, server-sent events等等)
css3樣式
設(shè)備定位功能(取得地理位置信息等等)
3d以及畫面顯示效果(webgl,css3的3d功能等等)
多媒體(audio/video等等)
性能及功能性的提高(web workers,xhr2等等)
語義性(microdata微數(shù)據(jù)等等)
離線及本地存儲(app cache,本地存儲,indexeddb等等)
在這之中,即使離線也可以使用web網(wǎng)頁,web應(yīng)用程序的功能,使用javascript也可以使用多線程的web workers,以及css3中的幾個(gè)功能都沒有在ie9中得到支持。
應(yīng)該對于html5提供積極支持的微軟,為什么沒有在ie9中對這幾個(gè)重要功能提供支持呢?如何這樣的話在windows phone7中使用ie9又有什么必要呢?這個(gè)理由在微軟的官方人士那里得到了回答。
提問:首先確認(rèn)一個(gè)事實(shí),ie9中對于html5的離線功能等等的確不提供支持嗎?
官方回答:的確如此,大致上來說,關(guān)于離線功能,以及css3中的幾個(gè)功能,在ie9中并不支持。
首先針對css3做一個(gè)說明,css的屬性中的供應(yīng)商前綴(為了在其他供應(yīng)商所提供的瀏覽器中使用而在css的屬性前增加的“-moz-”,“-webkit-”等等前綴。)在ie9中不提供支持。
在ie9中提倡“統(tǒng)一標(biāo)記”,就是說同樣的屬性,標(biāo)記應(yīng)該在任何瀏覽器中的渲染效果應(yīng)該都是同樣的。也就是說為了在各供應(yīng)商所提供的瀏覽器中使用而人為增加的各種前綴是不符合這個(gè)概念的,所以不提供支持。
還有一個(gè)問題就是關(guān)于離線應(yīng)用。這是因?yàn)樗囊粋€(gè)相關(guān)功能indexeddb的實(shí)現(xiàn)方法也還沒有被確定下來,所以與之密切相關(guān)的離線應(yīng)用程序功能也暫時(shí)不被支持。
現(xiàn)在使用ie的有個(gè)人,開發(fā)者,企業(yè)等等各種客戶。因此無論如何對于新的功能提供的支持必須要采取一種保守的做法。
現(xiàn)在我們所提供的支持都是非常安全穩(wěn)定的,今后也將優(yōu)先對那些在用戶那里獲得非常高的渴望度的功能進(jìn)行支持。
不管什么功能一下子全部提供支持,或者說為了迎合企業(yè)用戶而特意對某些功能提供支持的話,這種支持是十分不安全、不穩(wěn)定的,所以我們不希望采取這種做法。
但是,對于ie功能的加強(qiáng)肯定不會停止在ie9這個(gè)版本上面,所以我們今后肯定還會對html5/css3繼續(xù)提供新的支持。
提問:事實(shí)上在ie9中,作為html5主要功能之一的離線功能與webworker功能沒有提供支持這件事是最近被民眾所關(guān)注的一件事。在宣稱對于html5提供支持的同時(shí),不說清楚支持什么功能,不支持什么功能,這種宣傳不是等于沒有嗎?
官方回答:并不是要特意隱瞞,應(yīng)該是在忙于對于ie9這種新的瀏覽器做一個(gè)比較全面地介紹,而沒有考慮到這個(gè)問題。當(dāng)然,在對于各api各屬性進(jìn)行單獨(dú)介紹的時(shí)候,肯定是有一個(gè)比較明確的說明的。
更多信息請查看IT技術(shù)專欄