样式段落前面没有标题级别元素

时间:2011-05-18 03:46:57

标签: css css-selectors

我想知道是否可以设置一个没有标题的段落?

我猜规则看起来像这样:

  p (direction for "without/not preceded by") h1, h2, h3, h4, h5, h6 {

或......是否必须为相反的规则编写规则:

  h1, h2, h3, h4, h5, h6 + p {

...因此,默认情况下,段落可以具有段落前面没有标题的样式。

亲切的问候, 戴尔

3 个答案:

答案 0 :(得分:5)

我很确定你必须写下相反的内容,如你所描述的那样。但是有两个要点:

  1. 我想到的第一个解决方案是使用:notthe negation pseudo-class。但是,它只需要一个简单的选择器,所以

    :not(h1, h2, h3, h4, h5, h6) + p
    

    将是非法的。

  2. 在您编写第二个选择器后,+ p字词仅适用于h6;将其粘贴到SelectORacle即可查看。正确的选择器是

    h1 + p, h2 + p, h3 + p, h4 + p, h5 + p, h6 + p
    

答案 1 :(得分:1)

不确定。按照您希望它们出现的方式设置所有段落的样式,而不用前面的标题:

p {//styles here}

然后,在样式表的下方,添加以标题开头的段落的样式:

h1 + p, h2 + p, etc {//styles here}

常规段落将根据您的需要进行样式设置。具有前面标题的那些将获得后面的样式。

编辑:我应该补充一点,后面的样式将继承早期的样式,因此您需要覆盖某些规则...例如,如果您的所有background-color: red代码都有p但是您不希望p上有h前面的红色背景,那么您需要将background-color设置为none或其他颜色等。< / p>

答案 2 :(得分:1)

感谢你们的建议。

我觉得有一些选择器可以完成这项工作,但使用那个选择器看起来很狡猾。

我会选择:

 p {

然后,在级联中降低:

 h1 + p, h2 + p, h3 + p, h4 + p, h5 + p, h6 + p {

恼人的

 p {

是例外而不是规则:D