我有一大段的文本,分为<br>的子段落:

<p>
  Blah blah blah.
  <br/>
  Blah blah blah. Blah blah blah. Blah blah blah.
  <br/>
  Blah blah blah.
</p>

我想扩大这些分段之间的间隔,比如有两个<br>之类的。我知道这样做的正确方法是使用<p></p>,但现在我不能改变这个布局,所以我正在寻找css的解决方案。

我试着用display: block设置<br>的行高和高度,我也谷歌了一下,堆栈溢出了,但没有找到任何解决方案。在不改变布局的情况下,这可能吗?


当前回答

在更一般的层面上回答任何登陆这里的人,因为他们正在修复由<br>标签引起的间距问题。为了接近完美像素,我不得不做很多重置。

br {
    content: " ";
    display: block;
}

对于我要解决的特定问题,我必须在字里行间留出特定的空间。我在顶部和底部加了边距。

br {
    content: " ";
    display: block;
    margin: 0.25em 0;
}

其他回答

据我所知<br>没有高度,它只是强制换行。你得到的是一个文本,除了自动换行之外,还有一些换行符,而不是段落。您可以更改行间距,但这将影响所有行。

我让它在IE7中工作通过使用解决方案的组合,但主要是包装在DIV中的Br奈杰尔和其他人建议。添加Id和运行在="服务器",所以我可以删除BR时,从复选框行删除复选框。

.narrow {
    display: block;
    margin: 0px;
    line-height: 0px;
    content: " "; 
}
<div class="narrow" run at="server"><br></br></div>

可能使用两个br标签是适用于所有浏览器的最简单的解决方案。但这是重复的。

<p>
content
</p>
<br /><br />
<p>
content
</p>
<br /><br />
<p>
content
</p>

对我来说有用的是在段落标签之间添加这个内联…但这并不是最好的解决方案。

<br style="line-height:32px">

--------编辑---------

我在PC/Mac上遇到了问题…它赋予文本新的行高,但不做换行…你可能想自己做一些检查。对不起!

br {   
    content: "";
    margin: 2em;
    display: block;
    margin-bottom: -20px; 
 }

工作在Firefox, Chrome和Safari。 还没有在Explorer中测试。(windows平板电脑没电了。)

换行,字体大小在Firefox和Safari中是不同的。