以下內容取自Yahoo CSS重置。有人可以解釋星號的目的嗎?CSS屬性前星號的用途
body {
font:13px/1.231 arial,helvetica,clean,sans-serif;
*font-size:small;
*font:x-small;
}
以下內容取自Yahoo CSS重置。有人可以解釋星號的目的嗎?CSS屬性前星號的用途
body {
font:13px/1.231 arial,helvetica,clean,sans-serif;
*font-size:small;
*font:x-small;
}
這是一個瀏覽器特定的CSS黑客版本7或以下的Internet Explorer。
*屬性:值
雖然Internet Explorer 7的校正 其時的行爲屬性名稱是 以下劃線或 連字符前綴,其它非字母數字 字符前綴被視爲它們 是在IE6中。因此,如果您在 屬性名稱之前立即添加 非字母數字字符(如 )(*),則該屬性將在IE中應用 ,而不會在其他 瀏覽器中應用。不像連字符和下劃線 法,CSS 規範使任何保留 爲星號作爲前綴,所以使用這個技巧的 可能導致 意外的行爲爲CSS 規範發展。
*屬性:值應用IE 7及更低版本中的屬性值。它可能或可能會在未來的版本中不起作用。警告: 這使用無效的CSS。
據我所知,星號可以防止Firefox讀取屬性,但在IE中有效。
那樣配售字符是獲取IE 6使用風格的財產,而從更「理智的」瀏覽器中隱藏這一個黑客/解決方法。
從here:
爲了削減長話短說,Internet Explorer的CSS解析器是在試圖發現屬性的名稱過於 侵略性和將在 其實忽略了領先的非字母數字字符。從我的測試來看,這至少是IE5以上版本的情況。
這是一個Internet Explorer破解。如果您在屬性名稱前立即添加非字母數字字符(如星號(*)),則該屬性將應用於IE7及更低版本,但不會應用於其他瀏覽器。
這是一個CSS破解,該規則將只適用於IE7及以下。
雖然我不推薦使用它,但有更好的方法來解決IE不兼容問題。
所有的瀏覽器,但IE忽略規則。它被稱爲明星黑客。我認爲IE7會忽略標準模式下的規則。
在這種情況下,設置字體規則,然後覆蓋IE 6和有時7。
哦,這裏是我的參考:http://css-discuss.incutio.com/?page=StarHtmlHack – 2009-11-06 21:46:12
這不是star-html hack。那個進入選擇器並且是有效的CSS。 – bobince 2009-11-06 22:16:51
@bobince Star Hack和Star HTML Hack是兩個不同的東西:http://en.wikipedia.org/wiki/CSS_filter#Star_hack vs http://en.wikipedia.org/wiki/CSS_filter#Star_HTML_hack – 2015-04-22 18:44:54