html - 如何水平居中元素?

标签 html css alignment centering

如何水平居中 <div>在另一个<div>使用 CSS?

<div id="outer">
  <div id="inner">Foo foo</div>
</div>

最佳答案

flexbox水平和垂直居中设置 div 的样式非常容易。

#inner {  
  border: 0.05em solid black;
}

#outer {
  border: 0.05em solid red;
  width:100%;
  display: flex;
  justify-content: center;
}
<div id="outer">
  <div id="inner">Foo foo</div>
</div>

要使 div 垂直居中对齐,请使用属性 align-items: center .


其他解决方案

您可以将此 CSS 应用于内部 <div> :

#inner {
  width: 50%;
  margin: 0 auto;
}

当然,您不必设置 width50% .小于包含 <div> 的任何宽度将工作。 margin: 0 auto什么是实际居中。

如果您的目标是 Internet Explorer 8 (及以后),最好改用这个:

#inner {
  display: table;
  margin: 0 auto;
}

它将使内部元素水平居中,并且无需设置特定的 width 即可工作。 .

这里的工作示例:

#inner {
  display: table;
  margin: 0 auto;
  border: 1px solid black;
}

#outer {
  border: 1px solid red;
  width:100%
}
<div id="outer">
  <div id="inner">Foo foo</div>
</div>

关于html - 如何水平居中元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18155922/

相关文章:

html - 将图像放入图像大小不同的 div 中

php - 如何停止在 apache 服务器上缓存图像

javascript - 显示用户上传的 html 内容 - 安全问题

javascript - 在鼠标悬停时显示不同的标题文本(手电筒效果)

CSS冲洗图像?

c - 为什么结构中的 double 成员未在 8 字节边界上对齐?

html - 对齐两个不同的段落

html - 是否有可能让一个元素透明并透过他的父不透明背景看到

html - 定位 href 内的特定 div 以及所有用 main div 包裹的内容,以便在 css 中悬停

html - 中间有图片的列表