纯css是否可以在没有添加额外的html标签的情况下制作像<br>
这样的换行符?我希望在<h4>
元素之后换行,但不是之前:
HTML
<li>
Text, text, text, text, text. <h4>Sub header</h4>
Text, text, text, text, text.
</li>
CSS
h4 {
display: inline;
}
我发现了很多像这样的问题,但是当<h4>
必须保持不变时,我总会得到像“使用display:block;”这样的答案,这是我无法做到的线。
答案 0 :(得分:123)
它的工作原理如下:
h4 {
display:inline;
}
h4:after {
content:"\a";
white-space: pre;
}
诀窍来自:https://stackoverflow.com/a/66000/509752(有更多解释)
答案 1 :(得分:6)
答案 2 :(得分:3)
您可以使用::after
在0px
之后创建<h4>
- 高度阻止,有效地将<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>