2013-03-20 73 views
3

以下非常基本的问题样式化标题内容。我有以下情况: 通常内容是结构化的方式如下:CSS样式标题和以下内容

<h1>Main Header</h1> 
<h2>Sub Header</h2> 
<p>Content</p> 

但在某些情况下,子头不存在。我想在主标题和内容之间添加一个不同的填充/页边距,当内容直接跟在没有子标题的位置时。

我觉得我必须有一个简单的解决方案,我正在监督。

回答

3

使用adjacent sibling selector

h1 + p { 
    /* ... */ 
} 

这只是选择<p/>如果直接是<h1/>后。

+0

好吧,你有它!我没有意识到这个选择的存在!谢谢 – 2013-03-20 16:36:07

0

失去边缘底部并使用边缘顶部。

这种方式margin-top: 15px<p>将给予15px的空间,无论它上面什么。

+0

你是对的。但是如果h1和h2存在,我不想拥有那么多的空间。所以上面的h1 + p听起来不错! – 2013-03-20 16:34:59

0
h1 + p { 
    margin-top: ...; 
} 

这只会器选择p的H1

-2

之前你可以尝试overflow:hidden属性用于此。