CSS方法包括IE6黑客
-
03-07-2019 - |
题
- CSS有@进口,对吗?
- IE6理解
*html selector
黑客,对吗?
它是可能把它们结合起来像
//*html @import url(ie6hacks.css);
或者,可能的话,
//*html { @import url(ie6hacks.css); }
?
好的浏览器必须跳过这一点,将它仍工作在IE6?怎么样作为一个解决方案?我可以清楚地看到它看起来好丑陋的正常CSS。
解决方案
它是可能把它们结合起来像
* html @import url(ie6hacks.css);
没有。在规则等@进口不是选择,因此不能与其他选择。
有方法可以使在规则的工作,如黑客,例如:
@import url(/* no! */iehacks.css);
将被载入通过IE6/7,但是没有其他浏览器。然而,我不会推荐使用;这种事可真是脆弱的。这个特别的例子,也是无效的CSS。
作为丹尼尔说,如果你想分开。css文件进行攻击,最好的办法是有条件的包含的链接标签。美丽的"*html"是的,你可以把破解规则相同的样式表,这是易于管理,如果只有几个;如果你有一个单独的样式表无论如何,它没有提供任何优势。
海事组织"*html"为IE6是唯一的黑客它仍然是合法使用今天。所有的框模型的东西已经死了与IE5—假设你不用IE6怪癖模式,该模式你不应该和其他浏览器,甚至IE7,一般都是太好到能攻击一个简单的哈克;这些黑客可以他们的目标过于复杂/脆弱/无效,以真正使用。
(并且作为发明者的简化模型框哈克,我说一顿丰盛的太好了他们.)
其他提示
为什么要打扰那个古怪的黑客的时候你可以使用有条件的意见,包括就CSS你需要什么?
<!--[if IE 6]>
<link rel="stylesheet" type="text/css" href="ie-6.0.css" />
<![endif]-->
一些资源:
如果你真的必须使用@进口,可以利用的事实,即没有遵循前为@进口的规则。通常它必须是第一次觉得样式或风格的标签,或是完全被忽略。然而,IE6(至少当我进行了测试)似乎并不关心。沿着这些线路,你可以这样做:
<style type="text/css">
.NotARealClass { }
@import url("ie-style.css");
</style>
注意,我还没有测试,这在任何一FF3(未载即式。css)和IE6(其加载它反正).你的里程可能会有所不同。
不幸的是的 *html
哈克不能用于进口其他样式表。
这是一篇文章 解释说,黑客和其他可用于攻击即特定错误。