条件注释不适用于Internet Explorer以外的浏览器

Mar*_*igo 1 html css

<!--[if !IE]>
    <style type="text/css" media="screen">
        .title {
            color: rgba(0, 0, 0, 0);
            display: block;
            font-family: sans-serif;
            font-size: 50px;
            margin-left: 0px;
            margin-right: 5px;
            text-align: right;
            text-shadow: rgba(255, 255, 255, 0.247059) 2px 2px 2px, #888 0px 0px 0px;
        }
    </style>
<![endif]-->
Run Code Online (Sandbox Code Playgroud)

头标签中的这段代码不起作用......为什么?我一直在网上搜索很多,每个人都说它有用......但是,实际上,在我的网页上没有.我已经使用了很多次并且它有效...但是我应该有错...任何人都可以帮助我,拜托?提前致谢!

Jas*_*n P 6

正如在这个SO答案(我在评论中链接)中发布的那样:

IE之外的浏览器将条件语句视为注释,因为它们包含在注释标记内.

<!--[if IE]>
Non-IE browsers ignore this
<![endif]-->
Run Code Online (Sandbox Code Playgroud)

但是,当您的目标浏览器不是IE时,您必须使用2条注释,一条在代码之前,一条在注释之后.IE将忽略它们之间的代码,而其他浏览器会将其视为普通代码.因此,定位非IE浏览器的语法是:

<!--[if !IE]-->
IE ignores this
<!--[endif]-->
Run Code Online (Sandbox Code Playgroud)

你有这个:

<!--[if !IE]>
some stuff
<![endif]-->
Run Code Online (Sandbox Code Playgroud)

哪些非IE浏览器看到如下:

(没有什么,因为它只是对非IE浏览器的评论).

你需要这个:

<!--[if !IE]-->
some stuff
<!--[endif]-->
Run Code Online (Sandbox Code Playgroud)

因此,开始和结束标记都是对非IE浏览器的完全包含的注释,并且呈现样式.