【发布时间】:2010-05-25 11:22:17
【问题描述】:
是否有任何 CSS 过滤器可以用来检测 IE6 的标准模式和怪癖模式?
故事是一个 jQuery 脚本使用 $.support.boxModel 来处理不同的渲染模式。但是 CSS 使用 *width hack 来定义尺寸。但是这个hack只能过滤浏览器是否是IE,而不能过滤IE的真实渲染模式。
【问题讨论】:
标签: browser filter css internet-explorer-6
是否有任何 CSS 过滤器可以用来检测 IE6 的标准模式和怪癖模式?
故事是一个 jQuery 脚本使用 $.support.boxModel 来处理不同的渲染模式。但是 CSS 使用 *width hack 来定义尺寸。但是这个hack只能过滤浏览器是否是IE,而不能过滤IE的真实渲染模式。
【问题讨论】:
标签: browser filter css internet-explorer-6
您不能在 css 中这样做,但您可以使用 conditional comments 为不同版本的 IE 包含不同的样式表。
【讨论】:
你为什么需要那个?通常,您为一个显式 HTML 文档或至少一个特定站点编写样式表,您知道该页面/站点是在怪癖模式还是标准模式下运行。
页面不会出乎意料地改变模式:-)
如果您确实需要支持具有不同模式的混合页面,则需要使用两个单独的样式表,每种模式一个。
【讨论】:
我最终使用了 js 注入
if(!$.support.boxModel) $('body').addClass('nobox');
然后在 CSS 中做样式。
【讨论】: