【问题标题】:change css id into a class将 css id 更改为类
【发布时间】:2011-02-23 01:24:45
【问题描述】:

我得到了以下 css:

#navlist li #current
{
  color: #000;
  background: #FFFFFF;
  border-bottom: 1px solid #FFFFFF;
}

我需要将该#current 元素更改为一个类,以便将其动态分配给正确的 li。

如何将上面的代码翻译成具有相同结果的 .current 并且仍然仅适用于 #navlist li 元素。

我真的不擅长css,也不知道怎么写。 (我尝试了很多方法都没有成功)

【问题讨论】:

  • li#current 之间的空格是有意的吗?因为这样,li 元素内的 id 为 current 的元素会受到影响,而根据您的描述,您希望影响 li 元素本身。将 id 转换为 class 通常只是将 # 更改为 .

标签: html css css-selectors


【解决方案1】:

编辑:下面的代码应该可以工作。

#navlist li {
    color: #000;
    background: #FFFFFF;
    border-bottom: 1px solid #FFFFFF;
}

【讨论】:

  • 好的。我可以解决这个问题 x) 更准确地说,我希望这仅适用于 #navlist li 元素。
  • 好吧,那么你可以简单地做#navlist li {css}。
  • 好的。事实是,我对 css 很傻,所以在我看来,如果我这样设置这个类并且我在其他地方有另一个 .current ,它也将适用于那里。我只想将类限制为 #navlist li 元素,这样如果
    有它,它将不适用于它。那么,只需在#navlist id css 条目之后编写它就足够了吗?
  • 如果您只想应用于#navlist li 元素,请使用:#navlist li.current 并在所需的 li 元素上设置 class="current"
  • 我会接受你的回答。谢谢您的帮助。用#navlist li.current 解决了
【解决方案2】:

我不确定我是否理解您的问题,但 ID 和类之间的主要区别在于 ID 在您的页面中必须是唯一的。因此,只要id="current" 只有一个元素,一切都很好。如果您需要多个,请将其全部更改为 class="current"

在 CSS 中,您将使用 #current {...} 设置 ID 和使用 .current {...} 的类的属性

希望对你有帮助。

更新: 根据您的 HTML 结构,您需要的是 #navlist li.current(对于当前类的 li)或 #navlist li .current(对于 li 的子元素 - 例如 div)。在这种情况下,CSS 将仅适用于导航列表 div 中具有 current 类的元素。

【讨论】:

  • 非常感谢大家的帮助。问题是,我需要你提到的子元素,比如 li 的 div。我不知道#navlist li.current 和#navlist li .current 之间有区别。我学到了一些非常有价值的东西。再次感谢。
【解决方案3】:

试试:

#navlist li {
   // styles here
}

【讨论】:

    猜你喜欢
    相关资源
    最近更新 更多
    热门标签