為什麼ie對html5的支持總是丟三落四?
補充:我的意思是ie支持html5的其中一個特性都不一定是完整的
比如9、10、11支持svg也支持&來使用模板,方便復用和減少頁面大小卻不支持使用外部資源。。。也就是&ie9、10、11均不支持這麼寫,必須用js去請求那個資源用模塊替換use才能解決
差別圖:已知的解決方案來自:http://css-tricks.com/svg-use-external-source/還有類似問題:使用父節點上的requestAnimationFrame修改子接節點樣式不能正常工作為什麼ie對html5的支持總是丟三落四,等完整支持一個特效對於當前版本就幾乎沒戲。
由於樓上關評了,所以只能回答來反對這個答案了。
Chrome對於字體最小尺寸有限制,目的是為了防止縮小後字體過小影響閱讀。你當然可以設置最小的字體大小。另外這和html5和css3完全沒有關係,否則你用IE8這個頁面就別看了:
另外,內核決定了渲染,不同縮放比例使用的還是同一個內核。支持的就是支持,不支持的還是不支持。但是,我只同意Chrome在34之前對中文在超大字體下渲染不如IE和FF。
接著你對圓角的吐槽,請使用「審查元素」。然後你會看到這個網址:http://6.url.cn/zc/chs/img/input_error.png?v=10030
打開你就會看到如下的圖片:該頁面的圓角框沒有用css3的border-radius屬性,而是直接使用了圖片。使用css3寫的圓角放大多少倍都不會出現鋸齒,如下圖:關於樓上說的虛線的例子能否給出演示地址?我在chrome 39中測試並沒有出現你所說空虛線出現在直角的情況(height: 50px; width: 200~219px):
我支持你發表觀點的權利。但是在分不清什麼是html5和css3的情況下就隨意回答真的不好,會誤導其他人。關於題主的問題答案是這樣的:
微軟最早和網景比拼遊覽器的時代是各種創新的源頭,當網景落敗之後。微軟認為遊覽器已經沒有什麼可以創新的了。那時正是IE6時代。而後,出現了FF。微軟被打的措手不及,更別提回頭看幾年前的代碼多頭痛了。接著FF步步緊逼,chrome後起直追。而微軟的策略確是繼續在IE6上改進並保證兼容性。這樣的結果就導致了輕裝上陣的FF和chrome更新特別快。而IE卻背負著巨大的歷史包袱。而且chrome的自動升級保證了不斷更新的新特性。相對於一版本一版本發布的IE顯得總是落後。所以對於題主的而言,最好是避免使用IE不兼容的新特性。
(PS: IE對svg的支持絕對是坑,寫了多少兼容的代碼。說多了都是淚……)最後,送上CSS3兼容性列表:http://www.w3schools.com/cssref/css3_browsersupport.asp還不是因為你們總要兼容IE6。你們狠下心來,告訴微軟說,你不完整支持HTML5,你的客戶就不能看我的網頁,很快微軟就會立刻實現了的。我自己都不兼容了,你們還兼容,真是無法理解。
為了證明號稱對 HTML5 支持最完整的 Chrome 對 HTML5 和 CSS3 支持的有多好,特發以下截圖,部分圖片請點開細看!
第一組,Windows 7、DPI:150%、Chrome:39
67%
75%150%
200%第二組:Windows 7、DPI:150%、IE:1150%
100%
第四組:Retina MacBook Pro、Chrome:39、QQ 註冊頁面100%
補充說明:高分屏 Windows 上 Chrome 對文本框邊框處理效果簡直亮瞎我的狗眼啊!為了以所謂的 Windows 對高分屏支持不好為理由,後面是在 Mac 上的截圖,各位看官,你確保 Chrome 的圓角效果是用戶想要的?
再舉個例子,當年 IE9 開始公開測試的時候,微軟提供的一個關於虛線的 Test Case,當時一眾號稱標準瀏覽器的例如 Firefox、Chrome 竟然能把虛線的空白部分畫到矩形的直角上。這個 IE6 已經能確保直角畫正確的例子在現在的 Chrome 39、Safari 8 上竟然還不是很完美。
最後:
有人始終覺得答案中的這些例子不是問題,能看就行了,那能看就行了吧,我也懶得討論了,來知乎第一次關評。推薦閱讀:
※程序員看世界容易形成哪些偏見?
※看不同類型的書,兩個人互相看不起對方看的書是不是人格缺陷?
※缺少父愛的孩子性格上會有什麼特點?
※你最大的性格缺陷是什麼?你是怎麼反省自己的?
TAG:網頁設計 | HTML5 | InternetExplorer | 缺陷 |