Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 非IE6 IE7黑客_Html_Css_Internet Explorer_Css Hack - Fatal编程技术网

Html 非IE6 IE7黑客

Html 非IE6 IE7黑客,html,css,internet-explorer,css-hack,Html,Css,Internet Explorer,Css Hack,我成功地创建了IE6和IE7页面,如下所示: 我有一个非IE浏览器的解决方案(display:inline block),但是让IE6/7工作的唯一方法是使用不同的CSS(display:inline)。通常我会让其他浏览器使用内联块,然后在一个单独的IE67 CSS文件中,我会将display设置为inline 问题是IE67在到达display:inline块行时就会崩溃,所以我需要一种方法来对IE6和IE7隐藏这段代码,而不是其他浏览器 更新: 条件注释不是选项!IE67一旦到达其他浏览器

我成功地创建了IE6和IE7页面,如下所示:

我有一个非IE浏览器的解决方案(display:inline block),但是让IE6/7工作的唯一方法是使用不同的CSS(display:inline)。通常我会让其他浏览器使用内联块,然后在一个单独的IE67 CSS文件中,我会将display设置为inline

问题是IE67在到达display:inline块行时就会崩溃,所以我需要一种方法来对IE6和IE7隐藏这段代码,而不是其他浏览器

更新:

条件注释不是选项!IE67一旦到达其他浏览器的队列就会崩溃,因此条件css永远不会运行。我需要一种方法来对IE67隐藏这条线。连续注释不允许您对IE67隐藏CSS

更新2:


好的,看起来条件注释是一个选项。给我想要的人正确的答案。

对于这样的问题非常有效。

这些有条件的评论可能有用
mincss.css
加载在IE8和其他浏览器中,而
ie6-7.css
加载在IE7及以下浏览器中

<!-- <![if (!IE)|(gte IE 8)]> -->
    <link rel="stylesheet" href="maincss.css" type="text/css" />
<!-- <![endif]> -->
<!-- <![if (lte IE 7)]>
    <link rel="stylesheet" href="ie6-7.css" type="text/css" />
<![endif]> -->

使用黑客


上面的第一条条件注释将阻止IE6&7加载maincss.css(“mincss.css”?),因此不会使它们崩溃。IE8+将看到“gte IE 8”并加载它,其他浏览器将忽略条件注释,因此他们将加载它。实际上,无论出于何种原因,IE7在我使用条件注释时加载maincss.css.Works!谢谢这是一个很好的参考。
html>/**/body .someclass {
    /* Will be applied on everything but IE6/IE7. */
}