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/50990776/

相关文章:

android - 如何在flutter中根据不同的屏幕尺寸对齐堆栈内的小部件

javascript - 如何在JQuery中为子div自动生成id

HTML5 必需属性似乎不起作用

javascript - 查找与给定输入关联的 html 标签

php - 如何将此 php 代码放入 cloumus

javascript - 在多个选择框 JQuery 上动态生成 URL

css - 如何让主 div 容器居中对齐?

javascript - 打开折叠时移动页面焦点

html - 删除 iFrame 空间时出现问题

css - 如何将菜单对齐到标题底部