2012-01-17 60 views
1

長話短說,我想在另一個元素之後添加一個絕對定位的僞元素,所以我只是在我的樣式表中使用了:after僞元素。除了IE7以外,這個功能很有魅力。我應該認爲IE7支持:after,不是嗎? Boilerplate中使用的clearfix黑客工作正常,那麼爲什麼不在我的例子?支持:在IE7之後

當我在樣式檢查器中查看CSS時,它似乎打印出來了,所以它對我來說似乎是,它理解它,但我看不到生成的元素。我錯過了什麼嗎?

.myclass:after { 
    content:""; 
    display:table; 
    width:100px; 
    height:100px; 
    background:#f7f7f7; 
    position:absolute; 
    top:0; 
    left:-1px; 
    z-index:0; } 
.myclass > div { 
    position:relative; 
    z-index:10; } 
.myclass { 
    z-index:1; 
    position:relative; } 

這是Fiddle

+1

[下面是與答案同樣的問題] [1] [1]:http://stackoverflow.com/questions/4181884/after-and-before-css-pseudo-elements- hack-for-ie-7 – FlashTrava 2012-01-17 13:01:22

回答

3

no support在IE7 :before:after,還有,你可以使用像IE8.js其他選項。

+0

這是一個非常繁重的腳本來加載,僅此而已。然後,我發現奇怪的是,clearfix hack工作正常。 – Nix 2012-01-17 13:05:40

+0

@Nix這很奇怪,因爲即使在微軟網站上也沒有說IE7支持它,http://msdn.microsoft.com/en-us/library/cc351024%28v=vs.85%29.aspx #pseudoelements – 2012-01-17 13:15:08

+0

@Nix剛剛看了一下你提到的clearfix黑客攻擊,這就是爲什麼它在IE中工作的原因''/ *對於IE 6/7(觸發hasLayout)*/ .cf { zoom:1; }' – 2012-01-17 13:20:05