【发布时间】:2012-02-08 08:38:29
【问题描述】:
我有一个这样的 HTML 列表:
<ul>
<li class="heading">Heading 1</li>
<li class="heading">Heading 2</li>
<li>Text Under Heading 2</li>
</ul>
由于标题 1 下没有文字,我想用 CSS 隐藏它。
如果我这样做,
li.heading + li.heading { display: none; }
它隐藏了标题 2 而不是标题 1。
如何隐藏标题 1?有没有办法寻找相邻的兄弟姐妹并选择第一个?
【问题讨论】:
-
@greut:如果我找不到 CSS 选择器来执行此操作,我将使用 Javascript。
-
杰里米,我不太明白你所说的“第一个相邻兄弟”是什么意思。你不能用
:first-child吗? -
附带说明,这个 HTML 语义很差。为什么不使用标题标签作为标题?如果您这样做了,您可能会发现其他问题会自行解决。
标签: html css css-selectors