2013-04-12 143 views
5

明星是做什麼的?這叫什麼?對我來說,這是一種通配符。它叫什麼,所以我可以讀到它?*在CSS中做了什麼?

#div { 
    *zoom: 1; /*this ... * 
    zoom : 1; 
    display: inline; 
    *display: inline; /*... and this, whats the difference? * 
} 

我知道這意味着什麼(所有元素):

* { 
..css code 
} 

回答

8

簡而言之,它是在不同IE瀏覽器版本上針對css的關鍵。它也可以稱爲CSS Hack。

#div { 
    *zoom: 1; /*Only works on IE7 and below*/ 
    zoom : 1; 
    display: inline; 
    *display: inline; /*Only works on IE7 and below*/ 
} 

表示此CSS僅適用於IE7及更低版本。這是一種黑客,我們可以用它來在IE7及以下版本上應用CSS。

這裏是如何定位的IE6,IE7和IE8獨特

#div{ 
color: red; /* all browsers, of course */ 
color : green\9; /* IE8 and below */ 
*color : yellow; /* IE7 and below */ 
_color : orange; /* IE6 */ 
} 

CLICK HERE如果您想了解更多關於特定瀏覽器CSS。

3

* 屬性:值

雖然Internet Explorer 7中修正自己的行爲,當屬性 名稱前綴用下劃線或連字符,其他 非字母數字字符前綴被視爲在IE6中。 因此,如果您在屬性名稱之前添加非字母數字字符(如星號 (*)),則該屬性將在IE中應用 ,而不在其他瀏覽器中應用。與連字符和下劃線 方法不同,CSS規範不會將星號 作爲前綴進行保留,因此隨着CSS規範的發展,使用此hack可能會導致意外行爲 。

http://www.javascriptkit.com/dhtmltutors/csshacks3.shtml

2

在你的背景下,似乎是星破解。它是否只適用於某些版本的IE,取決於它的用途。

您可以檢索更多信息here

4

star-property hack但是,IE系列忽略了*,並且在沒有它的情況下應用該屬性。此hack用於僅將樣式規則傳遞給Internet Explorer 7(及更低版本)。它依賴於自1997年以來影響Explorer的錯誤DOM實現。根據規範,任何格式良好的(X)HTML文檔的實際根元素都是html元素。相反,Explorer 7(和更低版本)將html元素視爲包裹在另一個未知元素中。

0

What does the * in css? - >選擇指定元素之後的所有元素,例如。 div.red *{color: red;}將導致所有的顏色紅色後同級車紅色即使你定義了其他顏色的內div.red因此你知道*意味着ALLThis Fiddle

* zoom: 1; - 在這裏>您已經把*在第一,所以這將破解IE只有這種類型的風格只適用於IE和其他瀏覽器忽略了這一點。

*它被稱爲星號用簡單的語言和編碼語言這叫做Universal Selector