代码之家  ›  专栏  ›  技术社区  ›  n1313

如何更改a的高度<br>?

  •  221
  • n1313  · 技术社区  · 17 年前

    <br> s:

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

    我想扩大这些分段之间的差距,就像有两个分段一样 <br> <p></p> ,但现在我无法更改此布局,因此我正在寻找CSS唯一的解决方案。

    我试过了 <br> line-height height display: block ,我也在谷歌上搜索了一下,并对堆栈溢出进行了短暂的修改,但没有找到任何解决方案。在不改变布局的情况下,这是可能的吗?

    32 回复  |  直到 13 年前
        1
  •  303
  •   Community Mohan Dere    9 年前

    Css:

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

    line-height :

    line-height:22px;
    

    consider content :

    content: " ";
    

        2
  •  78
  •   Larry K    12 年前

    以下是正确的解决方案: 事实上

      br {
            line-height: 150%;
         }
    
        3
  •  73
  •   Isaac Minogue    11 年前

    所以,上面的peeps得到了基本相似的答案,但这里的答案非常简洁。在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 */
    }
    
        4
  •  44
  •   MrPizzaFace    14 年前

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

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

    { height:2px; visibility:hidden; margin-bottom:-1px; }
    
        5
  •  32
  •   nigel    14 年前

    我只是有这个问题,我通过使用

    <div style="line-height:150%;">
        <br>
    </div>
    
        6
  •  25
  •   Michael Borgwardt    17 年前

    据我所知 <br> 分段。可以更改行距,但这将影响所有行。

        7
  •  12
  •   yoda    17 年前

    你可以在上面应用线条高度 <p> 元素,因此线条变大。

        8
  •  8
  •   Filip Dupanović    17 年前

    我还没试过这个 :before / :after CSS2伪元素,主要是因为它只在IE8中受支持 (这与IE浏览器有关) . 这可能是唯一可能的CSS解决方案:

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

    example 在…上 QuirksMode .

        9
  •  7
  •   keithphw    14 年前

    有趣的是,如果break标记的完整形式如下所示:

    <br></br>
    

    那么CSS行高:145%就行了。

    <br> or 
    <br/> 
    

    那么它就不起作用了,至少在Chrome、IE和firefox中是这样。 奇怪的

        10
  •  7
  •   Dave Burton    6 年前

    更新日期:2019年9月13日:

    我用 <br class=big> 在我需要的时候做一个超大的断线。直到今天,我都是这样设计的:

    br.big {line-height:190%;vertical-align:top}
    

    (修订) vertical-align:top 仅IE和Edge需要。)

    然而, 它最近停止在基于Chrome的浏览器中工作

    (我不知道他们是什么时候打破的。截至2019年9月12日,它在我过时的Chrome Portable 55.0.2883.11中仍然有效,但在Opera 63.0.3368.71和Chrome 76.0.3809.132(Windows和Android)中都坏了。)

    经过一些尝试和错误,我最终得到了以下替代品,它适用于所有这些浏览器的当前版本:

    br.big {display:block; content:""; margin-top:0.5em; line-height:190%; vertical-align:top;}
    

    笔记:

    line-height:190% 除了最新版本的基于Chrome的浏览器外,其他浏览器都可以使用。

    IE和Edge需要(与 线高:190% ),以获得前一行所属位置之后的额外空间,而不是部分在前一行之前和部分在后。

    display:block;content:"";margin-top:0.5em

    <br>

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

    (当然,您可以根据需要调整“-37%”,以获得更大或更小的差距。)下面是一个演示页面,其中包括主题的一些其他变化:

    https://burtonsys.com/a_little_extra_vertical_space_for_br_tag.html


    我已经更新了演示页面;现在,它演示了上述所有技术:

    https://burtonsys.com/a_little_extra_vertical_space_for_br_tag.html

        11
  •  6
  •   DeFliGra    11 年前
    br {   
        content: "";
        margin: 2em;
        display: block;
        margin-bottom: -20px; 
     }
    

    在Firefox、Chrome和;游猎。 没有在Explorer中测试过。(Windows平板电脑已断电。)

    换行符、字体大小在Firefox&游猎。

        12
  •  5
  •   Sam Lowry    17 年前

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

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

    我想我应该提一下,以防其他人发生这种事,我会省去他们的麻烦。

        13
  •  5
  •   niels    12 年前

    记住(mis)使用 <hr> <p>
    如果f.ex。周围的东西都有样式 <p> <人力资源>

        14
  •  5
  •   David Shaked    11 年前

    br 
    { 
    font-size: 18px; 
    vertical-align: -4px; 
    }  
    
        15
  •  4
  •   robinwkurtz    12 年前

    对我来说,有效的方法是在段落标记之间添加这个内联标记。。。但这不是最好的解决方案。

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

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

    我遇到了PC/Mac电脑的问题。。。它为文本提供新的行高,但不进行换行。。。你可能想自己做一些测试。很抱歉

        16
  •  2
  •   Filip Dupanović    17 年前

    迈克尔和尤达都是对的。你能做的就是使用 <p> 标记,作为块标记,它使用底部边距偏移以下块,因此可以执行类似操作以获得更大的间距:

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

    <hr> 标记,使用该标记可以显式定义间距的高度。

        17
  •  2
  •   Aaron Davidson    14 年前

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

    我的情况是,第三方支付网关(Worldpay)只允许您使用最多10万个CSS和HTML(不允许使用脚本)定制他们的支付页面,这些CSS和HTML被注入到他们的模板主体中,在几个BR之后,字体标签等。 再加上他们的DTD迫使IE7/8进入怪癖模式,这使得跨浏览器定制变得非常困难!

    关闭BR会使事情更加一致。。。

        18
  •  2
  •   Sumutiu Marius    5 年前

    <p class="" style="margin: 4px;"></p>
    

    增大或减小边距大小将增大或减小元素之间的距离,就像边框一样,但可以调整。

        19
  •  1
  •   Marcus Rickert    12 年前

    尝试使用CSS line-height 阿曲布他在你的脸上 p 包含 br 标签。记住你可以 id 你的 如果要将其隔离,请使用标记,尽管使用 div 对于隔离,国际海事组织。

        20
  •  1
  •   David Arenburg Ulrik    10 年前

    很抱歉,如果有人已经这么说了,但简单的解决办法是玩弄你的“线高”。如果你在使用换行符时获得了太多的空间,那只是因为你的行高度设置得太高了。您可以在CSS中纠正这一点(但要知道它会影响使用该属性的所有内容),也可以使用内联样式覆盖CSS。

        21
  •  1
  •   3xCh1_23    9 年前

    我必须开发一个将HTML转换为PDF的解决方案,并将文本垂直居中放置在表格单元格中,但除了输入纯文本外,什么都不起作用 <br>

    因此,跳出框框思考,我通过调整字体大小(在pt中)来更改垂直大小。

    <font style="font-size: 4pt"><br></font>
    
        22
  •  1
  •   T.Todua Laurent W.    5 年前

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

    br {
        display:none;
    }
    

    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;
    }
    

    br:after { content: "" }
    br { content: "" }
    
        23
  •  0
  •   Clement Herreman    17 年前

    <br /> 将占用的空间与文本填充行的空间相同 <p> ,你不能改变。若你们想要更大一点,那个就意味着你们想分成一段,所以加上其他的 <p>

        24
  •  0
  •   Jonn    17 年前

    您还可以在CSS中使用“块引号”属性。这将使它不会影响你的每一行,但允许你设置参数只是段落之间的休息或“块引号”。


    我被纠正了。“blockquote”实际上是一个html属性。您使用它就像<p>及</p>围绕你的工作。然后可以在css中设置块引号的参数,如

    blockquote { margin-top: 20px }
    

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

        25
  •  0
  •   Liam    12 年前
    <span style="line-height:40px;"><br></span> 
    

    您必须以内联方式并在每个
    元素,但它应该可以在大多数浏览器上使用 摆弄线条的高度以获得想要的效果。如果将它内联到每个元素上,它应该可以在大多数浏览器和电子邮件中使用(但这太复杂了,无法在这里讨论)。

        26
  •  0
  •   Gene Bo Krzysztof Dziuba    12 年前

    当我无法从跨度标记获取样式间距时,这为我提供了窍门:

            <p style='margin-bottom: 5px' >
                <span>I Agree</span>
            </p>
            <span>I Don't Agree</span>
    
        27
  •  0
  •   Artyer    10 年前

    使用 <div>

    <div>Content 1</div>Content 2
    

    <div>Content 1</div>Content 2
        28
  •  0
  •   JGallardo anglimasS    9 年前

    在一个更一般的层面上回答任何在这里着陆的人,因为他们正在修复由地震引起的间距问题 <br>

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

    对于我正在处理的特定问题,我必须在字里行间留出特定的空间。我在顶部和底部加了一个边距。

    br {
        content: " ";
        display: block;
        margin: 0.25em 0;
    }
    
        29
  •  0
  •   TylerH Ash Burlaczenko    9 年前

    .narrow {
        display: block;
        margin: 0px;
        line-height: 0px;
        content: " "; 
    }
    
    <div class="narrow" run at="server"><br></br></div>
    
        30
  •  0
  •   Miloud Eloumri    8 年前

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

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