盒子的高度是130 px,不知道为什么?

.box {
  line-height: 120px;
  background-color: #cd0000;
  color: #fff;
}

.content {
  display: inline-block;
  line-height: 20px;
}
<div class="box">
  <div class="content">1<br />2<br />3<br />1</div>
</div>

Set .box的高度120px,就会是120px,但我不知道为什么会出现130px

推荐答案

vertical-align:top添加到inline-Block元素.额外的空间是由于默认基线对齐造成的.

.box {
  line-height: 120px;
  background-color: #cd0000;
  color: #fff;
}

.content {
  display: inline-block;
  vertical-align: top;
  line-height: 20px;
}
<div class="box">
  <div class="content">1<br />2<br />3<br />1</div>
</div>

您的元素有80px高(其线高的4 x 20 px).它的基线是文本的最后一行,因此默认情况下,最后一行将以某种方式位于线框的中心.

最后一条线高20px,位于中心,下方10px,上方10px.将剩余的60px添加到上面的10px上,就会得到中心上方的70px.

你的line-height等于120px,所以一半是60px.我们缺少10px才能放置70px,因此我们将高度增加到130px

再加一条线,高度就会是150px

.box {
  line-height: 120px;
  background-color: #cd0000;
  color: #fff;
}

.content {
  display: inline-block;
  line-height: 20px;
}
<div class="box">
  <div class="content">1<br />2<br />3<br />1<br />1</div>
</div>

删除一条线,高度将为120px,并注意内容不再接触顶部,因为我们有足够的空间将50px(10px + 2*20px)放入60px(120px/2)中

.box {
  line-height: 120px;
  background-color: #cd0000;
  color: #fff;
}

.content {
  display: inline-block;
  line-height: 20px;
}
<div class="box">
  <div class="content">1<br />2<br />3</div>
</div>

Html相关问答推荐

CSS复选框并排

如何在一个div中心字体图标?

如何使用bslb设置可导航页面侧边栏的样式

Tumblr博客:如何修复提交页面和询问页面框列计数问题?

如何在用css使用网格视图时设置宽度?

为什么根捕获上的`min-height`溢出,而`height`没有?

多次使用组件时计数Angular 14中嵌套数组的指令

jquery向单词中的一组字母添加跨度

即使必填字段为空,HTML 表单也已成功提交

使用 Thymeleaf 将图像水平居中

使用 popover api 和 `

带圆角帽的 CSS 部分边框

本地和在jsfiddle上页面工作正常,但在GitHub上无法运行.

如何使我的设计适合与我的框架尺寸不同的视口?

什么没有 margin-right 和 width:100% 溢出子元素到左边?

有没有办法让 textarea 在调整大小时不显示 CSS 转换?

Header 或 P 标记中的填充不能与 em 单元一起正常工作

弹出窗口溢出溢出:自动,我不明白为什么

我如何使用 HTML 和 CSS 在我的下拉菜单中获得这种类型的样式

如何在不删除

标记的情况下加入 HTML 中的段落