换行符(如<br>)只使用CSS

是否有可能在纯CSS,这是没有添加额外的HTML标签,像一个换行符? 我想在<h4>元素之后换行,但不要在之前:

HTML

 <li> Text, text, text, text, text. <h4>Sub header</h4> Text, text, text, text, text. </li> 

CSS

 h4 { display: inline; } 

我发现了很多这样的问题,但总是用“use display:block”这样的答案 ,当<h4>必须保持在同一行时,我不能这样做。

它是这样工作的:

 h4 { display:inline; } h4:after { content:"\a"; white-space: pre; } 

例如: http : //jsfiddle.net/Bb2d7/

诀窍来自这里: https : //stackoverflow.com/a/66000/509752 (有更多的解释)

尝试

 h4{ display:block;} 

在你的CSS

http://jsfiddle.net/ZrJP6/

您可以使用::after<h4> ::after创build一个0px -height块,这有效地将<h4>之后的任何内容移动到下一行:

 h4 { display: inline; } h4::after { content: ""; display: block; } 
 <ul> <li> Text, text, text, text, text. <h4>Sub header</h4> Text, text, text, text, text. </li> </ul>