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

CSS样式表
CSS网页布局中文排版的9则技巧
剖析网站的布局实例以及如何对其黄金分割
Float菜单水平居中简单方法
CSS网页制作教程:网页中常用的web安全字体
CSS网页制作教程:字体单位em简介
CSS网页制作:浮动清除的新方法
收集分享的3个讲解css及标签的视频
CSS网页制作技巧:节约网页代码编写时间
收集的6个关注CSS3的国外网站
CSS实例教程:reflow
CSS教程:需要知道的CSS3动画技术
快速实时编辑网页代码的FireFOX和IE插件
在IE6,IE7下变通实现pre-wrap
CSS圆角框进行JS封装
CSS教程:Mozilla建议的css书写顺序
基于链接关系的微格式:使用rel属性
非常酷的微格式:XFN规范
为网页内容添加结构和语义的hAtom微格式
网页简历结构和语义信息:hResume微格式
hCalendar微格式:关于事件和基于时间或地点的活动

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 138 ::
收藏到网摘: 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>的后面.
欢迎大家到我的小站交流更好的实现方法!