惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Martin Fowler
Martin Fowler
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
雷峰网
雷峰网
J
Java Code Geeks
G
Google Developers Blog
博客园 - 司徒正美
The GitHub Blog
The GitHub Blog
L
LangChain Blog
人人都是产品经理
人人都是产品经理
GbyAI
GbyAI
Vercel News
Vercel News
S
SegmentFault 最新的问题
Engineering at Meta
Engineering at Meta
H
Hackread – Cybersecurity News, Data Breaches, AI and More
云风的 BLOG
云风的 BLOG
F
Fortinet All Blogs
Y
Y Combinator Blog
博客园_首页
Last Week in AI
Last Week in AI
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
罗磊的独立博客
A
About on SuperTechFans
B
Blog
Microsoft Security Blog
Microsoft Security Blog

博客园 - 青弦

WinForm打印之页边距 [转载]交换的概念和原理 [转载]交换机概述 [转载]笑傲江湖之三层交换篇 [转载]Window.Open()网页弹出窗口大全 [转载]详解HTML中的META标签 [转载]网页滚动条特效 VS2005中TableAdapter中实现动态查询并使用LIKE的方法整理 [转载]如何在MDI中使子窗体只保留一个实例(反射方法) 去除MDI子窗体最大化后在MainMenuStrip上自动产生的最大化等按钮 第一次认真画用例图,错误很多,请大家来指点 代码段,你用了吗? Excel数字、文本混合列导入SQL Server出现的问题&解决办法 SQL Server 2000导入数据时遇到的问题 不逐流俗,独辟蹊径——另类又好用的软件推荐[不断更新……] Winform中全屏显示问题 [资源]在线工具测试网页载入速度 博客园blog模板CSS自定义美化 达摩克利斯之刃——.NET破解技术初探
DIV的水平、垂直居中的最佳实现
青弦 · 2008-04-22 · via 博客园 - 青弦

最近开始尝试Web标准,不可避免的就遇到了DIV的居中问题。
在网上搜了一通,有用DIV嵌套的,有用脚本的,不过都不理想。
最后发现网友Charlee这个方法效果不错:

<style>
#warp
{
  position
: absolute;
  width
:500px;
  height
:200px;
  left
:50%;
  top
:50%;
  margin-left
:-250px;
  margin-top
:-100px;
  border
: solid 3px red;
}

</style>
<body>
  
<div id=warp>Test</div>
</body>

这里要注意的是,margin-left、margin-top的值必须分别设为width和height值的一半
页面效果如下图所示:

原文地址:http://tech.idv2.com/2007/07/22/center-div-horizontally-and-vertically-with-css/

此方法可同时实现水平、垂直两个方向的居中,如果只要求水平方向的居中,可以这样写:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<style>
#warp 
{
    width
:200px;
    margin
:0px auto;
}

</style>
<body>
  
<div id=warp>Test</div>
</body>

第一行指定DocType的语句必不可少,否则有些新的CSS特性不会生效。
我在自己测试的时候忘记了加这一句,结果导致Div如何也不水平居中——后来才醒悟到是这个在作怪,加上后马上就正常了。
 还有,width的值是必须给出的,而height可以不用,因为只是要求水平方向居中。
如果不嫌麻烦的话,margin那一句也可用这个来代替:

    margin-left:auto;
    margin-right:auto;

以上CSS经过本人测试,完全可用。