首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >跨单元中不工作的垂直对齐

跨单元中不工作的垂直对齐
EN

Stack Overflow用户
提问于 2018-04-24 11:46:37
回答 4查看 3.7K关注 0票数 2

vertical-align:middle属性不适用于span元素。我尝试将文本中心和中间对齐放在span元素中。我尝试了以下代码:

代码语言:javascript
运行
复制
span {
  text-align: center;
  vertical-align: middle; /* Not working */
  height: 150px;
  width: 150px;
  border: 1px solid black;
  display: block;
}
代码语言:javascript
运行
复制
<span>center</span>

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2018-04-24 11:48:46

您可以使用display: flex来实现这一点。

代码语言:javascript
运行
复制
span {
  height: 150px;
  width: 150px;
  border: 1px solid black;
  display: flex;
  align-items: center;
  justify-content: center;
}
代码语言:javascript
运行
复制
<span>center</span>

vertical-align: middle不适用于display: block

票数 8
EN

Stack Overflow用户

发布于 2018-04-24 11:55:20

你对此有很多选择。我提供了3个例子:

  1. 使用line-height属性(在本例中,您指定行高与高度相同): .线-高度-中心{显示:内联块;线-高度:150;}
  2. 使用display: table: 表-中心{显示:内联表;}.表-中心跨度{显示:表格单元格;}
  3. 使用display: inline-flex;: 显示:内联-flex;对齐-项目:中心;对齐-内容:中心;}

代码语言:javascript
运行
复制
span {
  text-align: center;
  vertical-align: middle; /* Not working */
  height: 150px;
  width: 150px;
  border: 1px solid black;
}
.line-height-center {
  display: inline-block;
  line-height: 150px;
}

.table-center {
   display: inline-table;
}

.table-center span {
  display: table-cell;
}

.flex-center {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
代码语言:javascript
运行
复制
<p>With line height property:</p> 
<span class="line-height-center">center</span>
<p>With display table:</p> 
<span class="table-center"><span>center</span></span>
<p>With display flex:</p> 
<span class="flex-center">center</span>

票数 7
EN

Stack Overflow用户

发布于 2018-04-24 11:51:06

您使用的是显示:块;显示块具有框行为。

但你想要运行一个文本行为。

如果你有一个已知的高度,你可以只使用线的高度。

例如,如果高度为150 is:

代码语言:javascript
运行
复制
line-height: calc(150px - 15px);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50000904

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档