我有一大段的文本,分为<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>的行高和高度,我也谷歌了一下,堆栈溢出了,但没有找到任何解决方案。在不改变布局的情况下,这可能吗?


当前回答

当我无法从span标签中获得样式间距时,这为我做了一件事:

        <p style='margin-bottom: 5px' >
            <span>I Agree</span>
        </p>
        <span>I Don't Agree</span>

其他回答

Css:

br {
   display: block;
   margin: 10px 0;
}

解决方案可能不跨浏览器兼容,但至少是可以的。还可以考虑设置行高:

line-height:22px;

对于谷歌Chrome浏览器,考虑设置内容:

content: " ";

除此之外,我认为您只能使用JavaScript解决方案了。

所以,上面的人基本上得到了类似的答案,但在这里它非常简洁。适用于Opera, Chrome, Safari和Firefox,最有可能也适用于IE ?

br {
            display: block; /* makes it have a width */
            content: ""; /* clears default height */
            margin-top: 0; /* change this to whatever height you want it */
}

下面是一个在IE、Firefox和Chrome中都能运行的解决方案。其思想是将br元素的字体大小从14px增加到18px,并将元素降低4px,以便额外的大小在文本行以下。结果是br下面有4px的额外空白。

br 
{ 
font-size: 18px; 
vertical-align: -4px; 
}  

你也可以在CSS中使用“block-quote”属性。这样一来,它就不会影响到你的每一行,而是允许你为段落之间的换行符或“块引号”设置参数。

更新: 我接受纠正。"blockquote"实际上是一个HTML属性。你在工作中使用它就像< p >和< /p >一样。然后,您可以在css中设置块引号的参数,如

blockquote { margin-top: 20px }

希望这能有所帮助。它类似于在br上设置参数,并且可能与跨浏览器兼容,也可能不兼容。

如果有人已经说过了,我很抱歉,但简单的解决方法是玩转你的“行高”。如果你在使用换行符时占用了太多的空间,这只是因为你把行高设置得太高了。你可以在CSS中纠正这个错误(但知道这会影响所有使用该属性的东西),或者你可以使用内联样式来覆盖CSS。