如何改变一个<br>的高度?

我有一大段文字,与中文分成几段:

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

我想扩大这些分段之间的差距,就像有两个类似的东西或类似的东西。 我知道正确的做法是使用<p></p> ,但现在我无法更改此布局,所以我正在寻找纯CSS解决scheme。

我试着用display: block设置<br>line-heightheight ,我也简单的谷歌search和堆栈溢出,但没有find任何解决办法。 这甚至可以不改变布局?

CSS:

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

该解决scheme可能不是跨浏览器兼容的,但至less是这样的。 还要考虑设置line-height

 line-height:22px; 

对于Google Chrome,请考虑设置content

 content: " "; 

除此之外,我认为你坚持使用JavaScript解决scheme。

这是实际上具有跨浏览器支持的正确解决scheme:

  br { line-height: 150%; } 

另一种方法是使用人力资源 。 但是,这里是狡猾的部分,让它看不见。

从而:

 <hr style="height:30pt; visibility:hidden;" /> 

使用HR:Btw在所有浏览器中都可以使用模拟BR清除程序!

 { height:2px; visibility:hidden; margin-bottom:-1px; } 

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

所以,偷窥以上基本上有了类似的答案,但是这里非常简洁。 在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 */ } 

我刚刚遇到了这个问题,我用它来解决这个问题

 <div style="line-height:150%;"> <br> </div> 

你可以在<p>元素上应用行高,所以行变大。

我之前没有尝试过:before / :after CSS2伪元素,主要是因为它只支持IE8 (这与IE浏览器有关) 。 这可能是唯一可能的CSS解决scheme:

 br:before { display: block; margin-top: 10px; content: ""; } 

这里是一个QuirksMode的例子 。

有趣的是,如果中断标签是以全格式写入,如下所示:

 <br></br> 

那么CSS行高:145%的作品。 如果中断标记写为:

 <br> or <br/> 

那么它不起作用,至less在Chrome,IE和Firefox。 奇怪的!

请记住,在某处使用<hr>标记(错误)会结束<p>标记,因此不要考虑该解决scheme。
如果f.ex. 在周围的<p>上有一些样式,在插入<hr>之后,其余内容的样式就消失了。

迈克尔和尤达都是对的。 你可以做的是使用<p>标签,它是一个块标签,使用底部边距来抵消下面的块,所以你可以做类似的事情来获得更大的间距:

 <p> A block of text. </p> <p> Another block </p> 

另一种方法是使用块<hr>标签,您可以使用该标签明确定义间距的高度。

我有一个想法,你可能会使用:

 br:after { content: "."; visibility: hidden; display: block; } 

但是,这不适用于Chrome或Firefox。

只是觉得我会提到,如果其他人发生,我会救他们的麻烦。

什么对我来说是在段落标签之间内联添加…不是最好的解决scheme。

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

——–编辑———

我遇到了与PC / Mac的问题…这给了文本新的行高,但没有做断行…你可能想自己做一些testing。 抱歉!

这是一个在IE,Firefox和Chrome上运行的解决scheme。 这个想法是将br元素的字体大小从14px的体大小增加到18px,并将元素的大小减小4px,这样额外的大小就在文本行的下面。 结果是br下面多了4px多余的空白。

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

<br />会占用你的<p>文本填充行的空间,你不能改变它。 如果你想要更大,这意味着你想分成段落,所以添加其他<p> 。 不要忘记你是最有语义的;)

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

适用于Firefox,Chrome和Safari。 没有在资源pipe理器中testing。 (Windows平板电脑没电了。)

在Firefox和Safari中,换行符,字体大小的工作方式不同。

您似乎无法调整BR的高度,但可以使用display:none(无显示)使其可靠消失

在search以下解决scheme时遇到此页面:

我有一种情况,第三方支付网关(Worldpay)只能让您自定义他们的支付页面,最多10k的CSS和HTML(无脚本允许)被注入到模板的主体中,并在几个BR之后,FONT标签等再加上强制IE7 / 8进入Quirks模式的DTD,这使得跨浏览器的定制变得越来越困难!

closuresBR's使事情更加一致…

我使用这些方法,但我不知道如果跨浏览器

=================方法1 ==================

 br { display:none; } 

要么

=================方法2 ==================

 br { display: block; margin-bottom: 2px; font-size:2px; line-height: 2px; } br:before { display: block; margin-top: 2px; content: ""; } br:after { content: "."; visibility: hidden; display: block; } 

要么

=================方法3 ==================

 br:after { content: "" } br { content: "" } 

尝试在包含br标记的p标记上使用CSS line-height属性。 记住,如果你想隔离它,你可以用你的p标签来id ,尽pipe使用div隔离IMO可能会更好。

你也可以使用CSS中的“块引用”属性。 这将使得它不影响你的个人行,但允许你设置段落或“块引用”之间的中断参数。

更新:
我纠正了。 “blockquote”实际上是一个html属性。 你在工作中就像<p>和</ p>一样使用它。 然后你可以在CSS中设置你的块引用的参数

 blockquote { margin-top: 20px } 

希望这可以帮助。 这与在br上设置参数类似,可能会或可能不会跨浏览器兼容。

<br>是一个换行符。
<br />也是换行,“/”可以selectvoid元素或xhtml。
使用<br></br> ,浏览器将插入两个换行符“几乎”相同。
没有办法增加换行符的大小,因为这只是一个换行符。
使用div设置为隐藏( <div style="vilibility:hidden; line-height:150%;"</div> )或者更好的是一个段落。

 <span style="line-height:40px;"><br></span> 

你必须这样做内联和每个
元素,但它应该在大多数浏览器上工作摆弄线高度以获得所需的效果。 如果你在每个元素上内联,它应该可以在大多数浏览器和电子邮件上工作(但是这太复杂了,不能在这里讨论)。

当我无法从span标签中获得样式间距的时候,这样做对我来说是个诀窍:

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

如果目的是在标签之后添加一些额外的垂直空间,而不会破坏逻辑段落,这样的事情就可以实现。 它在所有浏览器中都能正常工作:

 <span style="vertical-align:-37%"> </span><br> 

这是一个演示页面,其中包含一些其他的主题变化:

http://www.burtonsys.com/a_little_extra_vertical_space_for_br_tag.html

使用<div>

 <div>Content 1</div>Content 2 

这允许一条没有任何垂直空间的新线路。

这成为

 <div>Content 1</div>Content 2 

回答更为一般的问题,因为他们正在解决由于标签造成的空间问题。 为了贴近像素,我必须做很多重置。

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

对于我正在处理的具体问题,我必须在行之间有一个特定的空间。 我在顶部和底部添加了一个边距。

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

我通过使用一系列解决scheme,在IE7中工作,但是主要是将Nigel和其他人build议的包裹在DIV中。 添加Id并运行在=“服务器”,所以我可以删除checkbox从checkbox行删除checkbox。

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

我不得不开发一个解决scheme,将HTML转换为PDF,并垂直居中表格单元格中的文本,但没有任何工作,除了input平原

所以,在框外思考,我已经通过调整字体大小(以pt)来改变垂直大小。

 <font style="font-size: 4pt"><br></font> 

可能发现一个很容易的解决scheme,你只需要创build不同types的
。 似乎已经为我工作。

例如:(html代码)

 <br/ class="150%space"> 

(CSS代码)

 br[class='150%space'] { line-height: 150%; } 

对不起,如果别人已经这样说,但简单的解决办法是玩弄你的“行高”。 如果在使用换行符时空间太大,这只是因为您的行高设置太高。 你可以在CSS中纠正这个问题(但知道它会影响使用该属性的所有东西),或者你可以使用内联样式来覆盖CSS。