条件注释只适用于样式表


Do conditional comments only work for stylesheets?

条件注释是否只适用于CSS样式和样式表链接,还是可以应用于所有HTML/JS ?我问,因为我想显示一个特定的消息,如果用户正在使用的浏览器,其中一些功能已知不工作/功能以及它可以在其他人?

如果没有,无论如何,通过PHP + regex来获得用户正在使用的确切浏览器,因为$_SERVER['HTTP_USER_AGENT']似乎返回一个包含几个用户代理名称的字符串?

如果你的意思是:

<!--[if lte IE 6]> ... <![endif]-->

是的,你也可以在HTML中使用它(例如:它通常用于有条件地添加一些额外的CSS用于IE6修复)。

但是我不会依赖于这个,比如说,告诉用户升级过时的浏览器。相反,我将通过检查$_SERVER['HTTP_USER_AGENT']在服务器端执行此操作。

浏览器识别不是直接的,因为浏览器倾向于按照他们喜欢的格式设置用户代理;有许多库使用比较列表等,以便通过解析user-agent字符串来尝试找出实际是浏览器/版本/操作系统。

条件注释在标记中"有效",你可以将它们包裹在CSS, HTML和JavaScript中。只要用[if !IE]

将非IE的内容括起来