代码之家  ›  专栏  ›  技术社区  ›  Alistair

非IE6 IE7黑客

  •  2
  • Alistair  · 技术社区  · 14 年前

    我设法创建了一个页面崩溃ie6和7定期按照这里: http://raven-seo-tools.com/blog/2675/crash-ie6-with-only-css

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

    问题是IE67在到达display:inline块行时立即崩溃,所以我需要一种方法来隐藏IE6和7中的代码,而不是其他浏览器。

    更新:

    有条件的评论不是一个选项!ie67一旦到达其他浏览器的行,就会崩溃,因此条件css将永远不会运行。我需要一种方法把这条线隐藏起来。contional注释不允许您在ie67中隐藏css。

    更新2:

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

    3 回复  |  直到 9 年前
        1
  •  3
  •   BalusC    14 年前

    使用 html>/**/body 乱劈。

    html>/**/body .someclass {
        /* Will be applied on everything but IE6/IE7. */
    }
    
        2
  •  3
  •   MiffTheFox    14 年前

    这些有条件的评论可能有用。 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]> -->
    
        3
  •  1
  •   Ken Browning    14 年前

    Conditional Comments 对这样的问题很有效。

    推荐文章