css 标准标签边距取决于前面/后面的元素

标签 css

我想将标准标签 (p h1...h6 ul li) 的 css margin 属性设置为依赖于标签之前或之后的元素。例如,如果 DOM 中它之前的元素是 p,我想将 h1 的 margin-top 设置为 10px,但如果它之前的元素是/ul,我想将其设置为 20px。我需要仅使用 css 来完成此操作,而无需使用间隔符或 div——因为内容是由 CMS 用户插入的,除了将普通的 p h1...h6 ul li 应用到他们的文本之外,他们别无他法。

这可以用 css 实现吗?

谢谢!

最佳答案

您可以使用相邻的兄弟 CSS 选择器:

p + h1 {
   margin-top: 10px;
}

将对 p 元素之后的 h1 元素应用 10px 的 margin-top。

Here's a good article on the subject.

关于css 标准标签边距取决于前面/后面的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11252590/

相关文章:

css - 如何异步加载 Material ui 字体?

css - 完成事件后更改父项的 css

javascript - 缩小 iPhone 视口(viewport)的脚本?

android - 如何使用 HTML/CSS 将宽度设置为移动屏幕大小

css - 如何编写 CSS 将 div 元素转换为 3 列或 4 列的表格?

javascript - 如何使用 js 或 jquery 调整非子图像的大小?

HTML5/CSS3 Circle inside a circle with inner circle stick on top inside the outer circle

javascript - 哪个元素属性连接到 CSS `:checked` 选择器?

css - 仅使用 CSS 更改顺序和位置

javascript - 有没有办法在 javascript 中进行反射但淡化反射的底部?