html - 删除第一项的伪类

标签 html css

<分区>

我有一个简单的无序列表:

  <ul id="sub_menu">
    <li></li> 
    <li></li>
    <li></li>
    <!-- and some more -->
  </ul> 

我删除了所有 list-style-type 并使用 :pseudo 类创建了我自己的

#sub_menu ul li:before {
  content: "• ";
  color: #FFFFFF; 
}

我想知道的是,如果我想删除此列表的第一个 li 项的伪类,CSS 选择器会是什么样子。

谢谢

最佳答案

您可以使用 :not() 选择器排除第一个 li:

#sub_menu ul li:not(:first-child):before {
  content: "• ";
  color: #FFFFFF; 
}

如果您需要 IE8 兼容性,您可以使用同级选择器的组合,例如:

#sub_menu ul li:first-child ~ li:before {
  content: "• ";
  color: #FFFFFF; 
}

编辑

此外,只是一个旁注...根据您的 html,选择器是错误的。如果 ul 的 id 是 #sub_menu,它应该是

#sub_menu li

代替

#sub_menu ul li

关于html - 删除第一项的伪类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26531377/

上一篇:css - 通过父类删除子类的CSS

下一篇:css - 需要关于隐藏 bootstrap div 的建议

相关文章:

javascript - JS定义的方法仅在语句的一部分等于NaN

javascript - 包含 # 时禁用 href 链接,但启用所有其他链接

javascript - jQuery 或 JavaScript 获取靠近其他元素的元素

html - Twitter Bootstrap 中同样大的列

css - 使用 CSS 删除单词

html - 移动 html 中的响应式两列

javascript - jQuery 单击事件不会在 'loaded' html 上触发

javascript - LI 元素之间有空格的 UL 菜单 - 这怎么行?

html - 页脚宽度和文本对齐方式

jquery div 背景淡入淡出