2011-08-12 231 views
8

我知道BR用于创建换行符。我只是想知道它是否也在线条之间创造空间?请考虑以下例子:BR标签有高度吗?

<p> 
Hello <br/> Stackoverflow <br/><br/><br/> ! 
</p> 

输出看起来像:

Hello 
Stackoverflow 


! 

通过把越来越多的BR我发现距离之间的线增加。是因为<br>?但是当我试图控制CSS中的高度<br>时,它并没有跟随,看起来它根本没有高度,只是一个换行符。如果<br>不是行间空格的原因,那哪个是哪个以及如何在CSS中控制它?此外,我通常使用<br>来创建线条之间的大距离,我这样做以取代\n\r或类似的数据时,从数据库中,这样好吗?

+0

一种解决方案是这里''
高度 - http://stackoverflow.com/a/20488415/2165415 == –

回答

2

我发现,我们看到,当我们把多个BR的空间不是由BR但P元素的行高实际造成的。

考虑下面的标记:

<p> 
Hello <br/> Stackoverflow <br/><br/><br/> ! 
</p> 

输出

1. Hello 
2. Stackoverflow 
3. 
4.  
5. ! 

3号线和4,这里只是空行。尽管是空的,他们仍然拥有线条高度。

2

br元素强行突破(结束)文本的当前行...

更多信息here。是的,增加更多会增加距离,但我认为除了应用clear之外,你不能为造型设计太多。

2

使用的< br/>的数量只能创建换行符。如果您希望在页面上的特定部分之间创建较大的空间,我将使用CSS margin属性来距离下一个顶部部分。例如:

<div id="topSection" class="margin-bottom: 100px;">Hello Stackflow</div> 
<div id="bottomSection">Content lower on the screen without unnecessary breaks.</div> 
6

<br />标记用于换行符。如果你想这样看,你可以使用CSS line-height属性来控制线条之间的距离。

1

是的,通过更多的BR标签将创建新的换行符。不建议使用BR标签来创建线条之间的较大距离,而是使用CSS marginpadding来引入空格。

+0

我也想到了用margin和padding的。请参阅我从数据库中关于换行的编辑。 – dpp

+0

在这种情况下,请使用正则表达式将'BR'替换为'P'。参见工作[demo here](http://jsfiddle.net/f6ju2/2/)。 –

1

作为替代使用<br />让你字里行间喜欢的间距,您可以使用CSS line-height财产

+0

那么你的意思是那些空格不是来自'BR',而是来自默认的'line-height'? – dpp

+0

'Stackoverflow'和'!'之间的空格是由于您添加了'
''标签。当使用'line-height' CSS属性时,你可以改变行间的间距(不管它们是否被强行破坏) – kaveman

5

对线之间的大的距离,最好使用<p>标签的每一行,在其中可以控制身高。

http://jsfiddle.net/efortis/f6ju2/

+0

'p'是一个不错的选择,请参阅我关于换行符的编辑。当文本来自数据库时,我将如何使用'p'? – dpp

+0

是的,你可以预先格式化你的数据 –