DotNetNuke(DNN)皮肤制作如何居中内容"/>

DotNetNuke(DNN)皮肤制作如何居中内容

设计皮肤我们遇到的第一个问题就是如何居中内容,一般使用CSS+DIV布局有两种方法,
第一种方法是使用 auto margins,第二种方法是使用负margins
翻翻资料,使用auto margins的一般都是这么写的:
假设HTML部分如下:
<body>
<div id="wrapper">
</div>
</body>
现在使用auto margins居中id为wrapper的DIV,
#wrapper
{
   width
: 720px; 
   margin
: 0 auto;
}
但你却发现,按照这种“标准”写法,皮肤安装到DotNetNuke中后,在IE 5.x/Win、IE 6/Win中里面却怎么也没法把内容居中,auto margins方法失效了,
这是为什么呢?原来,IE 5.x/Win是不支持auto margins的,而DNN默认的DOCTYPE会触发IE6进入quirks模式(如何解决),这种模式下也是不支持auto margins的,看样子这个经典居中方法是没法用在DNN上了,幸运的是,IE错误的理解text-align:center这个定义,IE会把所有的东西都居中而不仅仅是text,我们可以利用这一点来解决问题。修改后的代码如下(只需要修改CSS部分):
body
{
   text-align
:center;
}


#wrappter
{
   width
:720px;
   margin
: 0 auto;
   text-align
: left;
}
修改完再试一试,在IE里面也表现完美!

第二种方法是使用负的margin,这种方法也会带来版式上的问题,且听下回分解!
原文地址:https://www.cnblogs.com/DotNetNuke/p/996286.html