设定行距


145

我如何在CSS中设置行距,就像我们可以在MS Word中设置行距一样?

Answers:


236

尝试使用line-height属性。

例如,字体大小为12px,距底行和底行的距离为4px:

line-height: 20px; /* 4px +12px + 4px */

或带em单位

line-height: 1.7em; /* 1em = 12px in this case. 20/12 == 1.666666  */

10
我发现我还需要display: block;这些设置在所有地方都有效,而不仅仅是段落的顶部和底部。
PatrickT

2
请记住,如果将line-height属性的值设置为<a>元素,则不能将其设置为“ 1”或“ 100%”以下。例如,如果需要,可以在文本和<a>之间设置<p>。
raulchopi '16

2
它不适用于跨度,因为如@PatrickT所述,跨度未显示:block
沃尔夫

1
@walv不是必需的,如果需要在跨度中使用它,则最好使用display:inline-block,而不是display:block。
马里奥·塞萨尔

1
@Userthatisnotauser,您将无法使用需要使用Socket的Java Applet或Web应用程序的用户发生类似的事情(由于失去了ɴᴘᴀᴘɪ支持,并且所有浏览器都在其自定义插件ᴀᴘɪ中撤回了支持)。用于Cassini任务的ini网站仍然需要快速插件,才能在线观看他们的视频。更不用说只有ɴᴘᴀᴘɪ插件允许您通过流媒体中的立体显示器观看立体视频。在我国,两家主要的电视频道提供商仍要求Silverlight计划不进行升级。
user2284570

103

您还可以使用无单位值,即行数:line-height: 2;双倍行距,一倍line-height: 1.5;半等等。


它在基于Presto的Opera中不起作用。我需要解决方法...请!:\
user2284570

@用户状态:可在我的计算机上使用。您是否尝试过其他任何答案?
MikeTheLiar 2013年

我的意思是可以识别CSS元素,但不会影响渲染输出。经过测试12.16和12.50。其他答案基本相同:THEY ALL TELL使用line-height元素!
user2284570 2013年

@user因为这就是您的操作方式。我想这是浏览器错误或缺乏对CSS规则的支持。应该单独提出一个问题。
MikeTheLiar 2013年

当然,在这里提出问题的解决方法是不合时宜的……据我所知,它会影响其他浏览器品牌:当使用DOM设置设置或出现contenteditable =“ true”时,它就存在。
user2284570 2013年

12

您不能在CSS中使用行高(<p>块之间的间距)设置段落间的间距。而是设置段落内的行间距,即<p>块内行之间的间距。也就是说,行高是印刷者在段落中的行间领先,由行高控制。

我目前不知道CSS中有任何方法可以产生(例如)0.15em <p>间隔,无论是在任何font属性上使用em还是rem变体。我怀疑可以使用更复杂的浮点数或偏移量来完成。可惜在CSS中这是必需的。


7
不能为<p>间隔使用边距吗?
Flimm 2015年

4
在某些情况下,margin-top和/或margin-bottom可以有效地实现此处期望的功能。
user1147171'1

10

如果要使用压缩线,可以为font-size和设置相同的值。line-height

在您的CSS文件中

.condensedlines {              
    font-size:   10pt;
    line-height: 10pt;  /* try also a bit smaller line-height */
}

在您的HTML文件中

<p class="condensedlines">
bla bla bla bla bla bla <br>
bla bla bla bla bla bla <br>
bla bla bla bla bla bla <br>
</p>

-> 在jsfiddle.net上播放此片段

您还可以增加line-height以进行精细的行距控制:

.mylinespacing {
    font-size:   10pt;
    line-height: 14pt; /* 14 = 10 + 2 above + 2 below */
}

9

试试这个属性

line-height:200%;

要么

line-height:17px;

使用增加和减少音量


@AVD:在基于Presto的Opera中不起作用。我需要解决方法...请!:\
user2284570


4

尝试line-height物业;有很多分配线高的方法


1

众所周知,line-height是的。您正在使用的任何字体,中间高度的字符(例如a或■,不通过上下字符)都应与line-height: 0.6to 处的高度相同0.65

<div style="line-height: 0.65; font-family: 'Fira Code', monospace, sans-serif">
aaaaa<br>
aaaaa<br>
aaaaa<br>
aaaaa<br>
aaaaa
</div>
<br>
<br>

<div style="line-height: 0.6; font-family: 'Fira Code', monospace, sans-serif">
■■■■■■■■■■<br>
■■■■■■■■■■<br>
■■■■■■■■■■<br>
■■■■■■■■■■<br>
■■■■■■■■■■<br>
■■■■■■■■■■<br>
■■■■■■■■■■<br>
■■■■■■■■■■<br>
■■■■■■■■■■<br>
■■■■■■■■■■
</div>
<br>
<br>
<strong>BUT</strong>
<br>
<br>
<div style="line-height: 0.65; font-family: 'Fira Code', monospace, sans-serif">
ddd<br>
ƒƒƒ<br>
ggg
</div>


0

lineSpacing在React Native(或本机移动应用程序)中使用。

对于网络,您可以使用letterSpacing(或letter-spacing

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.