Internet Explorer 未呈现自定义列表项中的前导文本

Internet Explorer not rendering the leading text in a custom list item

提问人:DavidRR 提问时间:9/10/2014 最后编辑:CommunityDavidRR 更新时间:9/13/2014 访问量:132

问:

这是如何创建带有短划线的自定义列表样式的后续内容。

具体来说,我的问题涉及 Internet Explorer 9(请参阅本问题末尾的示例 XHTML 文档。我的示例文档包括内联 CSS。

当我将示例 XHTML 文档作为本地文件查看时,我在 IE9 中看到预期结果:

Here is a list:
- One
- Two
- Three

但是,当我通过 IIS 查看相同的 XHTML 文档时,我在 IE9 中看到了一些不同的东西:

Here is a list:
  One
  Two
  Three

也就是说,IE9 不会呈现要出现在每个列表项开头的短划线

(请注意,Firefox 31 本地以及通过 IIS 查看文件时会呈现破折号。

此问题是否与 IIS 返回的 HTTP 标头有关?下面是我的 IIS 实例返回的关键标头:

200 OK
Date: Tue, 09 Sep 2014 18:41:34 GMT
Server: Microsoft-IIS/7.5
Content-Length: 706
Content-Type: text/html
Title: Custom List Item Test
X-Powered-By: ASP.NET

示例 XHTML 文档:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Custom List Item Test</title>

    <!-- https://stackoverflow.com/a/24279072/1497596 -->
    <style type="text/css">
      ul
      {
        list-style-type: none;
      }

      ul > li:before
      {
        content: "-";
        position: absolute;
        margin-left: -1.1em;
      }
    </style>
  </head>
  <body>
    <h1>Here is a list:</h1>
    <ul>
      <li>One</li>
      <li>Two</li>
      <li>Three</li>
    </ul>
  </body>
</html>
css 互联网浏览器 IIS xhtml HTML 列表

评论

1赞 Mr Lister 9/12/2014
IE 是否能够以不同的方式响应本地和远程内容?我似乎记得你可以告诉IE对所有本地内容或类似的东西使用兼容模式模式。检查设置。和/或如果你在 http 中放置一个显式的 x-ua-compatible 标头(或作为源代码中的 http-equiv)会发生什么?
0赞 DavidRR 9/12/2014
相关:本地部署和远程部署的系统之间 Internet Explorer 行为的差异
0赞 DavidRR 9/12/2014
相关新闻: Internet Explorer 和 X-UA 兼容

答:

0赞 DavidRR 9/13/2014 #1

@Mr李斯特,您的评论为我指出了一个解决方案。

我发现我的 IE9 兼容性视图设置如下:

[x] Include updated website lists from Microsoft
[x] Display intranet sites in Compatibility View
[ ] Display all websites in Compatibility View

我感兴趣的网页由 IIS 在作为我的 Intranet 成员的服务器上提供服务。由于选中了第二个复选框,IE9 使用兼容性视图设置呈现页面。清除第二个复选框后,介绍每个列表项的破折号将变为可见。

使用我上面显示的设置,当我从本地磁盘查看文档时,IE9 最初确实显示列表项破折号。但是,当我选中第三个复选框时,破折号从列表中消失了。

因此,这解释了我在本地查看文档与通过 IIS 查看文档时观察到的不同结果。