【问题标题】:Internet Explorer form styling problem in Quirks Mode vs Standards Mode怪癖模式与标准模式中的 Internet Explorer 表单样式问题
【发布时间】:2011-08-11 00:49:32
【问题描述】:

我已从 Quirks 模式切换到标准模式(HTML 4.01 过渡版),并注意到在 IE7 和 IE8 中,所有表单元素的样式现在都与 Quirks 模式下不同。

在 Quirks 模式中,选择下拉框的元素周围没有边框,看起来有点圆滑,而在添加 DOCTYPE 声明后,选择的下拉框在输入矩形和带有黑色小三角形的正方形周围都显示有边框看起来很像 Windows 95。

我看到 Windows 7 系统的样式行为发生了这种变化,默认标准皮肤启用了透明度。

显然在 Quirks Mode 中,精美的​​ Windows 系统皮肤被应用于表单元素的样式,而切换到 HTML 4.01 过渡切换到经典的老式 Windows-95 外观。通过在 Internet Explorer 中以 Quirks 模式(即无 doctype)打开表单,然后通过 Developer Tools 窗口 (F12) 将文档模式切换为 IE8 标准,可以轻松看出差异。

我没有为输入、选择等表单元素定义任何 CSS 规则,即这会影响表单元素的无样式显示。

我的问题是:我如何让 IE8 显示带有“花式”系统皮肤的表单,用于带有 doctype 的页面?

我意识到我可以使用 CSS 进行自定义表单样式设置,但是有没有办法强制将系统装饰应用于标准模式下的默认表单元素?还是我错过了什么?

我使用的文档类型是<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

【问题讨论】:

    标签: css internet-explorer-8 internet-explorer-7 quirks-mode


    【解决方案1】:

    有一种方法可以强制 IE 使用特定的渲染引擎,X-UA Compatible meta tag。如果您使用以下内容,您的页面似乎将以 Quirks 模式呈现:

    <meta http-equiv="X-UA-Compatible" content="IE=5" >
    

    但是,我在这方面没有经验,所以它可能根本不起作用。 :D

    【讨论】:

    • 另外,即使这确实触发了怪癖模式,我也非常怀疑它是否会按照您想要的方式呈现这些输入。 编辑:实际上,在 IE9 中快速尝试后,这可能对你很有效。当然,对其他浏览器没有帮助...
    • 嗯,我不想回到带有替代 CSS 框模型和特质的 Quirks 模式。事实上,这就是切换到标准模式的原因。它只是我想从怪癖模式“迁移”的选择元素的样式。不是我个人关心它,但这是客户的要求。
    • @ccpizza Yikes。我的回答并没有太大帮助,然后...Here's another question on SO 处理它,并带有指向this page 的链接,实际上说:“保留基本的&lt;select&gt; 不是一种选择。”祝你好运。
    【解决方案2】:

    看起来某些东西,比如下拉按钮的外观无法修改 - 这些是特定于浏览器/操作系统的。

    为什么 Internet Explorer 对具有 DOCTYPE 的页面使用通用的 Window Classic 样式,而 Quirks 模式的花哨操作系统定义的装饰仍然是个谜。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-08-01
      • 2023-04-07
      • 1970-01-01
      • 2012-07-09
      • 1970-01-01
      • 2011-11-20
      • 1970-01-01
      • 2011-12-12
      相关资源
      最近更新 更多