【问题标题】:IE6 - DIV with class and IDIE6 - 带有类和 ID 的 DIV
【发布时间】:2010-01-21 23:42:47
【问题描述】:

我有以下 HTML

<div id="nav" class="red">

some more HTML here

</div>

以下 CSS:

#nav.red {
background: red;
}

但是这在 IE6 中不起作用,有人可以帮忙吗?

【问题讨论】:

    标签: html css


    【解决方案1】:

    目前尚不清楚为什么会出现这种情况,也没有真正的“修复”。您只需要通过更改 CSS 来解决它。例如:

    #nav{
       /*basic styles*/
    }
       .red{
          /* stylings */
       }
       .blue{
          /* stylings */
       }
       .contact{
          /* stylings */
       }
       .news{
          /* stylings */
       }
    

    更多信息请参见here,测试页面请参见here

    【讨论】:

      【解决方案2】:

      随便用

      #nav

      .red { 
          background: red; 
      } 
      

      【讨论】:

      • 我不能那样做,我希望 nav 根据我添加的类是我想要的任何颜色。
      • 改用“.red { background: red; }”
      • 错误的代码,如果你想改变配色方案怎么办?改变你所有的课程是不好的。更好:语义名称。
      【解决方案3】:

      您可以使用 ie7.js 来修复该错误。它使 IE6 的行为更像 IE7。它至少应该解决多个类问题,因此也可能适用于#id.class。 More info about ie7.js

      否则,您必须解决它。例如

      <div id="nav">
         <span class="red">hep</span>
         <span>hep</span>
      </div>
      

      和 CSS

      #nav {}
      #nav span {color:#000;}
      #nav .red {color:#f00;}
      

      或者,如果可以的话,您可以使用 .red 进行颜色更改,并使用 #nav 作为常见的布局内容。例如。

      #nav {float:left; padding:10;}
      .red {background: #f00;}
      .blue {background: #00f;}
      

      【讨论】:

        【解决方案4】:

        有一个错误。 试试这个:

        #nav, .red {
        background: red;
        }
        

        【讨论】:

        • 该样式既可以设置#nav div(无论是什么类),也可以设置任何其他可能具有red 类的样式。
        猜你喜欢
        • 2012-07-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-09-11
        • 1970-01-01
        • 2012-12-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多