当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > DIV 居中的绝好解决方法

CSS样式表
line-height使文本居中的3像素bug问题
IE8.0Beta比较不错的功能:WebSlices
IE8、IE7、IE6、FF简单的CSS HACK测试
Web前端开发的Firefox插件
CSS3教程:background-clip和background-origin
CSS教程:使用ul进行网页的多列布局
CSS盒模型制定网页的宽度和高度的原理
CSS:何制作一个向各个方向延展box?
CSS高级技巧:CSS Sprites
CSS高级技巧:图片替换
CSS高级技巧:文字环绕图片
CSS样式表教程:screen媒体类型的作用
css教程:美化网页段落的排版
网页注册表单的网页设计技巧
CSS控制表格文字样式的研究
dl,dt,dd,ul,li,ol区别及应用
英文教程:鼠标悬停(hover)效果
CSS制作的三款漂亮的网页表单
CSS教程:行高line-height属性(2)
CSS:闭合元素和浮动元素的差别

CSS样式表 中的 DIV 居中的绝好解决方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 128 ::
收藏到网摘: n/a

现在进行WEB重构的时候,一般我们做DIV 居中是这样:
复制代码 代码如下:

body{
margin:0px auto;
text-align:center;
}

但是在没申明下面这句解析方法的时候,页面就会出错.不能居中对齐!
复制代码 代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

为此困扰了我几天.那么有的朋友就会说:你加上这句不就行了吗? 可是有时候页面并不能全部按上面规定的代码格式来编写,比如说要改多彩滚动条.
直到昨天,一个想法在我脑中闪了一下. 何不用JS来控制页面的边距?说干就干!
找了个页面.添加了下面的一小段代码.
复制代码 代码如下:

<script language="javascript" type="text/javascript" src="function.js"></script>

function.js内容:
复制代码 代码如下:

if(window.screen.width>800){document.write("<style type=\"text/css\">body{margin-left:"+(window.screen.width-800)/2+"px}</style>");}

保存,测试. 哈哈,换了几个分辨率都可以正常居中!至此试验成功.
总结一下:
主要是这句代码起的作用:
复制代码 代码如下:

(window.screen.width-800)/2 //计算页面应该留出的边距数值.800为我的DIV宽度 + 滚动条宽度.实际应用改为你自己的大小.

补充一点:上面这段JS 必须放在你的最后一个CSS连接或</style>的后面.
欢迎大家到我的小站交流更好的实现方法!