- CSS有@import,對吧?
- IE6明白
*html selector
黑客,對不對?
是否有可能他們像CSS方法包括IE6 hacker
//*html @import url(ie6hacks.css);
,或者可能結合起來,
//*html { @import url(ie6hacks.css); }
?
好的瀏覽器必須跳過這個,它仍然可以在IE6中工作嗎?它如何看起來是一種解決方案?我可以清楚地看到它看起來像普通的CSS一樣醜陋。
*html selector
黑客,對不對?是否有可能他們像CSS方法包括IE6 hacker
//*html @import url(ie6hacks.css);
,或者可能結合起來,
//*html { @import url(ie6hacks.css); }
?
好的瀏覽器必須跳過這個,它仍然可以在IE6中工作嗎?它如何看起來是一種解決方案?我可以清楚地看到它看起來像普通的CSS一樣醜陋。
是否有可能像他們在規則一樣@import
* html @import url(ie6hacks.css);
號組合都沒有選擇,所以不能與其他選擇相結合。
有辦法讓在規則作爲工作的黑客,例如這樣的:
@import url(/* no! */iehacks.css);
將IE6/7加載而不是其他的瀏覽器。但是,我不會推薦使用它;這種事情可能非常脆弱。這個特殊的例子也是無效的CSS。正如丹尼爾所說,如果你想要單獨的.css文件作爲黑客,最好的方法是一個有條件包含的鏈接標記。 「* html」的美妙之處在於,你可以將黑客規則放在同一個樣式表中,只有少數幾個樣式表更易於管理;如果你有獨立的樣式表,它沒有任何優勢。
對於IE6來說,IMO「* html」是唯一的黑客,它今天仍然是合法的。所有盒子模型的東西都與IE5一起死了 - 假設你沒有使用IE6 Quirks模式,你不應該這麼做 - 而其他瀏覽器,甚至IE7,通常都很好,不能用簡單的黑客攻擊;可以針對他們的少數黑客太複雜/脆弱/無效以至於無法使用。
(作爲Simplified Box Model Hack的發明者,我對他們說了一個爽朗的好消息。)
不幸的是,*html
黑客無法用於導入其他樣式表。
Here is an article解釋了黑客攻擊和其他攻擊IE特定錯誤的其他攻擊。
當你可以使用條件註釋來包含你所需要的CSS時,爲什麼還要使用這種古怪的黑客?
<!--[if IE 6]>
<link rel="stylesheet" type="text/css" href="ie-6.0.css" />
<![endif]-->
一些資源:
如果你真的必須使用@import,你可以採取的事實,IE不遵循規範的優勢@import規則。通常它必須是第一個想到的樣式表或樣式標記,或者它完全被忽略。但是,IE6(至少當我測試它)似乎並不在乎。沿着這些線路,你可以這樣做:
<style type="text/css">
.NotARealClass { }
@import url("ie-style.css");
</style>
請注意,我沒有再說什麼FF3(它無法加載,即-style.css文件)和IE6測試了這(它加載它反正)。你的旅費可能會改變。
謝謝你的明確答案。不幸的是,我今天沒有投票:) – temoto 2009-03-05 16:15:33