首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用css在页面中间居中放置div框

使用css在页面中间居中放置div框
EN

Stack Overflow用户
提问于 2010-03-23 14:35:07
回答 9查看 86.6K关注 0票数 10

我想要在页面中间居中放置一个div,我尝试了top:30%,但当窗口调整大小时偏离对齐方式。

代码语言:javascript
运行
复制
<div id=cent></div>

谢谢,吉恩

EN

回答 9

Stack Overflow用户

发布于 2010-03-23 14:48:02

如果你知道div的高度/宽度(例如,它将是100px x 200px),那么你可以这样做:

代码语言:javascript
运行
复制
#cent {
  position:absolute;
  top:50%;
  left:50%;
  margin-top:-50px; /* this is half the height of your div*/  
  margin-left:-100px; /*this is half of width of your div*/
}

更新:另一个选项:查看http://www.w3.org/Style/Examples/007/center (垂直居中)

票数 18
EN

Stack Overflow用户

发布于 2020-08-25 03:50:59

我知道这个问题很老了,但我偶然发现了它,将来我可能会再次寻找它。

在我的例子中,内容的高度是可变的,并且我不想使用绝对定位,所以我使用了flexbox容器。你只需要将你的内容包装在一个div中,风格如下:

代码语言:javascript
运行
复制
.container {
  min-height: 100vh; /* minimum height = screen height */
  display: flex;
  justify-content: center;
  align-items: center;
}

示例:https://codepen.io/alephao/pen/mdPRYqZ

票数 4
EN

Stack Overflow用户

发布于 2019-10-21 17:56:00

我知道这个问题已经有9年的历史了,但9年后偶然发现了这个问题,也许其他人也可以这么做。

这是我的工作解决方案:

代码语言:javascript
运行
复制
#cent {
  position: absolute;
  width: 500px;
  height: 500px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

通过这样做,它会将widthheight设置为500px,然后将topleftrightbottom约束设置为0,最后,通过将边距设置为auto,该框将被放在窗口的正中间。这也将是响应性的。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2498003

复制
相关文章

相似问题

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