1

我很难让一个网站与 Internet Explorer 一起工作——真是大吃一惊,对吧?下面列出的代码在我测试过的所有浏览器上都能完美运行,但旧版本的 Internet Explorer 除外。

p1 是最大的字体,p2 次之,p3 是最小的。Internet Explorer 当前正在以正确的大小读取 p2 和 p3,但 p1 比它们都小。此外,p1 和 p2 应该是深绿色,p3 应该是浅绿色,但所有文本都显示为黑色。我使用的是 px 而不是 pt 所以我不应该遇到这个问题......关于我做错了什么的任何想法?

p1 {color:#0B610B; font-family: "Arial"; font-size: 24px; -webkit-text-size-adjust: none;}     
p2 {color:#0B610B; font-family: "Arial"; font-size: 14px; -webkit-text-size-adjust: none;}     
p3 {color:#659965; font-family: "Arial"; font-size: 14px; -webkit-text-size-adjust: none;} 
4

2 回答 2

2

p1不存在。我假设这是一堂课?尝试使用.p1,.p2等 :)

p {单独将选择所有段落标签<p>
p1 {选择无
.p1 {选择任何元素class="p1"

于 2012-12-06T16:23:41.803 回答
1

你在使用人造元素吗?您发布的 CSS 仅适用于 p1、p2、p3 标记,例如<p1>Some text</p1>. 但这些元素并不存在。旧版本的 IE 不会设置未知元素的样式。您应该执行以下操作之一:

  1. 如果它们是标题,请使用正确的标题标签,例如<h1>Some text</h1>

  2. 或使用类,例如<p class="p1">Some text</p>并将 CSS 选择器更改为.p1 {...}

  3. 如果您真的想使用自定义标签(通常是个坏主意),那么如果您使用 Javascript 将它们添加到 DOM,它们可以在 IE 中设置样式:

    <script>
    var elems = ['p1','p2','p3'];
    for (var i in elems)
        document.createElement(elems[i]);
    </script>
    
于 2012-12-06T16:30:21.657 回答