【问题标题】:Second CSS class not working in IE8第二个 CSS 类在 IE8 中不起作用
【发布时间】:2010-05-04 17:03:12
【问题描述】:

我将以下 div 呈现给客户端,但在 IE 上,checked-yes 类被忽略。如果我在“开发人员工具”中查看目标元素,则 Style 面板中完全缺少该类。 shift-item-present 类附加在服务器端,checked-yes 类附加在客户端,取决于父行的 present 属性,如下所示。

<td><div class="shift-item-present checked-yes" jQuery1272958392665="94"/></td>

父行:

<tr class="shift-item" id="ctl00_mainContentPlaceHolder_ctl00_shiftList_ctl01_shiftRow" present="True" shift-id="641" jQuery1272958392665="64">

该页面在 FF 中完美运行。这是 CSS,都在同一个文件中:

.shift-item-present
{
    top: 2px;
    left: 2px;
    height: 12px;
    width: 20px;
    background-repeat: no-repeat;
    background-position: center right;
}

.checked-yes
{
    background-image: url('../Images/Icons/checked-yes-xs.png');
}

【问题讨论】:

  • 我假设没有应用 CSS,你也可以发布吗?

标签: css internet-explorer internet-explorer-8


【解决方案1】:

Internet Explorer 不支持 XHTML!连IE8都没有。所以它不支持自闭合元素。使用&lt;div&gt;&lt;/div&gt; 而不是&lt;div/&gt;

【讨论】:

  • 不,不能。它在这里可能是偶然的,因为div 本身就在td 中,但这并不能改变IE8 不支持自关闭元素 的事实。
  • "IE8 可以使用它。"错误的!当您认为它“有效”时,这是因为您错误地将 XHTML 作为 text/html(而不是 application/xhtml+xml)发送,导致 IE(和其他所有人)无论如何都将其解析为 HTML。使用正确的 MIME 发送它以允许正确的 XHTML 解析(和 IE 阻塞它,给出一个下载对话框)。
【解决方案2】:

当 IE8 以 Quirks 模式呈现页面时,可能会发生这种情况。尝试设置正确的 DOCTYPE。

【讨论】:

  • 什么是正确的 DOCTYPE?这是 VS 生成的默认值,我认为我可以假设它是正确的。
  • 您可能会发布整个文件还是 html 输出?这可能会有所帮助
猜你喜欢
  • 2013-11-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-29
  • 2016-12-02
  • 2014-10-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多