如何垂直对齐div中的元素?

我有一个带有两个图像的div,还有一个h1。它们都需要在div内垂直对齐,彼此相邻

其中一个图像需要位于div中的absolute

要在所有常见浏览器上工作,CSS需要什么

<div id="标题“&燃气轮机;
<img src=&quot&引用&燃气轮机&lt/img>
<h1>测试…&lt/h1>
<img src=&quot&引用&燃气轮机&lt/img>
&lt/部门>

哇,这个问题很流行。它基于垂直对齐属性中的误解。这篇优秀的文章解释了这一点:

了解垂直对齐,或Gavin Kistner的“如何(不)垂直居中内容”

“如何在CSS中居中”是一个很好的web工具,它有助于为不同的情况找到必要的CSS居中属性


简而言之,(为了防止链路损坏):

  • 内联元素(并且只有内联元素)可以通过垂直对齐:中间在上下文中垂直对齐。然而,“上下文”不是整个父容器的高度,而是它们所在文本行的高度。JSFIDLE示例
  • 对于块元素,垂直对齐比较困难,并且在很大程度上取决于具体情况:
    • 如果内部元素可以具有固定高度,则可以将其位置设置为绝对位置,并指定其高度、边距顶部和顶部位置。JSFIDLE示例
    • 如果居中元素由一条线组成,且其父元素高度固定,则只需设置容器的线高度即可填充其高度。根据我的经验,这种方法非常通用。JSFIDLE示例
    • ……这种特殊情况还有很多

发表评论