2013-07-04 87 views

回答

1

IE8不支持:last-child。它支持:first-child,但不支持:last-child

這是因爲IE8被設計爲支持CSS2.1::first-child在CSS2.1規範中,但:last-child只在CSS3規範中。

在很多情況下,如果你需要支持IE8這個問題最好的解決辦法是重新因子的佈局,您使用:first-child而不是:last-child

這個選項在很多情況下,一個很好的解決方案,並支持IE8沒有任何黑客,這是最好的方式,但它顯然是不適合在所有情況下(否則他們就不會需要創造:last-child)。你還沒有提供足夠的關於你的代碼的信息,以便我知道它是否適合你,但如果是這樣,那就是我的建議。

另一種選擇是使用舊的回退解決方案,只需添加一個類到適當的元素,風格類,而不是僞選擇。和老派的答案,但它會奏效。

移動到如何支持IE8,但仍使用:last-child。有這樣做的方法,但他們涉及使用Javascript polyfills。有兩個劇本,我知道了應該做的伎倆爲您提供:

其中,Selectivizr是軟件更新的一塊,並且隻影響CSS選擇器,而IE9 .js較舊,並嘗試在各種版本的IE中修補大量錯誤,漏洞和缺失功能。兩者都應該爲你做詭計;試試看看。

希望有所幫助。

+0

IE9.js幫助更多,謝謝你的回答! –

相關問題