html - 在具有多个 div 的父 div 中居中特定子 div
问题描述
我有一个有两个子 div 的父 div。父 div 占据视口高度。第一个孩子(标题)必须在顶部,而第二个孩子(文本包装)必须垂直居中。无论屏幕大小如何,如何确保文本包装器垂直居中?
一种可能的解决方案是将标题设置为绝对,并设置顶部:0px。然后通过设置 align-items: center 可以轻松地使文本包装器居中。但是因为我最近了解了视口单位,所以我想知道是否可以使用 vh/vw 等。我只是不明白如果文本包装器的高度是流动的,我将如何使用 vh 居中文本包装器.
链接到小提琴:http: //jsfiddle.net/s1fhae65/3/
我的父 div 的结构:
<section id="zero">
<div id="header">
Header
</div>
<div id="text-wrapper">
<h2>
Title
</h2>
<h4>
Subtitle
</h4>
</div>
</section>
解决方案
您可以将 position:absolute 和margin-top: 50vh赋予 text-wrapper div。这样,它将保持在其父 div 的中心。您还可以使用 width:100vw 为文本包装器 div 提供全宽。
推荐阅读
- java - sdkmanager:找不到命令
- maven - maven 的简单本地存储库管理器工具
- sql - 基于产品持有量的排名
- c# - AWS ElastiCache (Memcached) 不断攀升的连接数
- asp.net-core - 为什么 this.ChangeTracker.LazyLoadingEnabled = false ; 不工作?
- firebase - 我无法使用自动生成的文档 ID 将数据批量上传到 firestore 子集合
- ruby-on-rails - 使用 Devise 退出 - 发出不必要的 DELETE 请求
- javascript - 按下空格键时在图像之间切换
- android - 在 androidx 片段之间传递数据
- javascript - 允许字母数字和空格的正则表达式