2011-05-26 43 views
2
*:first-child+html .clearfix{zoom:1px;} 

這是幹什麼的?它在Internet Explorer 7中將所有內容都變成1px。這是在我的WordPress主題的style.css中(由ElegantTheme設計)。它應該做什麼?我認爲這是Internet Explorer中的一個錯誤,導致它無法正確渲染。這行CSS是做什麼的?

回答

4

這給所有.clearfix元素在IE7使用非標準zoom屬性,以便佈局適當地放在一起,在IE7否則不會使他們。

*:first-child + html選擇器或簡單地* + html利用IE7的錯覺,即在html之前有一些元素。 It is a hack.

我認爲聲明應該是zoom: 1;而不是zoom: 1px;

+0

由於'px' – thirtydot 2011-05-26 23:10:11

+0

@thirtydot:我有理由確定它實際上不會設置'hasLayout':根據我鏈接到的文章,'zoom:除'normal'之外的任何其他值授予佈局。正如OP描述的那樣,'px'導致IE7將所有內容縮小到1平方像素的區域。 – BoltClock 2011-05-26 23:11:31

+0

我認爲這意味着「任何[有效值]」。我測試了IE9的IE7標準模式:http://jsfiddle.net/XRXa4//http://fiddle.jshell.net/XRXa4/show/light/ - 警報「真/假」。我認爲''將所有東西變成1px「意味着OP的意思是他的浮動在IE7中沒有被清除(由於'zoom'值無效)。 – thirtydot 2011-05-26 23:28:25