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

时间:2012-06-28 20:43:44

标签: 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吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

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

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

h1元素后紧跟10px的margin-top应用于p元素。

<强> Here's a good article on the subject.