css - 如何使用相邻兄弟组合器?

标签 css

<分区>

我们正在尝试控制内容的垂直间距并使一切正常,除非内容跟随 div - 请考虑以下几点:

<div>
  <ul>
    <li></li>
  </ul>
</div>

我们想从紧跟在 div 之后的所有 ul 中删除顶部边距,因此一直在尝试:

div + ul {
  margin-top: 0;
}

这是该选择器的正确用法吗?

我们似乎无法让它发挥作用 - 任何指向正确方向的指示都将不胜感激。

干杯

最佳答案

它里面有“adjacent”这个词,意思是“紧挨着”:你的 ul 不是“紧挨着”你的 div(在同一层级) 但里面。

你想要的是一个直接的(不是递归的)子选择器,> 所以:

div > ul { ... }

如果它只发生在 div 的第一个 child 身上:

div > ul:first-child { ... }

关于css - 如何使用相邻兄弟组合器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23379281/

上一篇:html - 什么标签控制间距和放在哪里?

下一篇:javascript - 如何使用 jQuery 停止动画

相关文章:

html - 宽度为 :100% are different 的 div

CSS3 : Vertically centered page with margin 10 pixels

html - 如何将一个容器分成多行,每行有不同的列

javascript - 如何检测浏览器是否支持prefers-color-scheme

javascript - 中心动态高度/宽度图像到固定高度/宽度 div

html - 复合组件和 CSS

css - DurandalJS app.showMessage 模态导致 Y 溢出工件

css - 类名之间不留空格

MS Outlook margin 问题的 HTML 表格

html - 重新调整浏览器大小时,如何防止 float 的 div 元素换行?