Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/41.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
Css 条件注释与Javascript_Css - Fatal编程技术网

Css 条件注释与Javascript

Css 条件注释与Javascript,css,Css,目前我正在处理一个网页,只需要为IE设置样式。我使用的是有条件的评论: <!--[if IE]> <link rel="Stylesheet" href="../../IEstyles.css" rel="Stylesheet" /> <![endif]--> 这是最好的方法还是使用javascript是最佳实践?不是每个人都启用了javascript-据我所知,每个主流浏览器都支持HTML注释。因为这只是一个样式表,因此是一个UI问题,我会避免

目前我正在处理一个网页,只需要为IE设置样式。我使用的是有条件的评论:

<!--[if IE]>
    <link rel="Stylesheet" href="../../IEstyles.css" rel="Stylesheet" />
<![endif]-->


这是最好的方法还是使用javascript是最佳实践?

不是每个人都启用了javascript-据我所知,每个主流浏览器都支持HTML注释。

因为这只是一个样式表,因此是一个UI问题,我会避免使用javascript,而只是使用条件注释来定位IE。如果您尝试进行某种浏览器嗅探,那么这也可以解决禁用javascript的人的问题。

使用条件注释。它们可以防止其他浏览器下载/运行任何脚本,同时还可以始终为IE用户工作。

是最佳实践的网站,他们建议:



这允许您保留一个样式表,只需在上面的任何类前面加上前缀,以针对特定的条件攻击。

这几乎是最佳实践。您可能应该改为检查
[如果lt IE 9]
,因为IE 9非常支持CSS,但绝对不使用浏览器嗅探JavaScript。这几乎总是问题的最糟糕解决方案。

使用条件将是最好的主意,因为您无法保证访问者不会禁用javascript或脚本。这只适用于IE浏览器,其他浏览器会忽略它,所有浏览器都会处理Javascript,无论是否适用于IE。

Javascript可以禁用,所以我认为条件注释是服务于IE特定CSS的最佳方式。

这不是一个问题。如果需要查看代码,请使用。当我切换到[if IE lt 9]时,我的页面上出现了以下内容
,并且样式很好。当我把它当作[如果IE]时,页面上不会出现任何额外的内容,而且样式也会起作用。有什么想法吗?编辑:代码示例仅显示在中的第页IE@Ironsides24:对不起,我的意思是
[如果它是9]