- 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