html设置居左边距,关于居中布局和IE双倍边距bug

关于居中布局和IE双倍边距bug

更新时间:2006年09月25日 00:00:00   作者:

今天google了一下css居中布局的问题,结果差不多都是引用了同一篇文章。在ie中要居中,只要在

元素中定义text-align:center;的属性。而在firefox中,需要定义一个wrapper包裹器。然后指定margin-left:auto;margin-right:auto;的属性来使区块在firefox中居中。其实,我自己都是用margin:auto;的缩写margin属性来设定居中。margin缩写属性是上、右、下、左的顺时针顺序来设定四个方位的页面边距的。需要注意的是,如果你据此以为只要设定margin-top:auto;属性后就想使区块居中的话,那你就错了。用这种方式的时候,非得同时设定margin-left:auto;margin-right:auto;属性才能居中。但是,你设定margin:0 auto;这样的方法也是可以居中的。

另外一种居中的方法是在使用绝对定位的前提下,用left:50%+margin-left:-375px;的组合方式来居中。两种居中方式如下。

/* 方法一 */

body {

background: #00FF7F;

text-align: center; /* hack for ie center alignlayout */

}

#wrapper{

background: Aqua;

width: 750px;

margin:auto; /* 或者 margin-left:auto;margin-right:auto;*/

}

/* 方法二 */

#wrapper2 {

position: absolute;

width:750px;

left:50%;

margin-left:-375px;

background: Orange;

}

我个人一直使用方法一的方式来居中,因为感觉方法二的区块缺乏必要的刚性,代码也不太好理解。如果你缩小方法二的窗体到一定限度,就会看到整个布局会出现流动的情况。当然有人要的就是这种效果。:),另外方法二的一个好处是在其他嵌套区块中不必覆盖body元素的text-align: center;的设定,因为大部分文本还是会以左对齐居多。这样一定程度上可以减少一点冗余。不过我觉得这个好处可以忽略不计。总之,大家根据各自喜好各取所需便是。

另外一个是ie的双倍边距的bug,解决方法就是加上display:inline;的设定即可。其实这个解析错误的bug会影响很多方面。如果你遇到css布局在ie中间距表现异常的时候,就可以试试看加上display:inline;的属性申明了。而且在一定特定的布局问题问题,需要组合使用display:block;和display:inline;才能让布局如你所愿。我在一个unorder list控制的图片菜单中就遇到过类似的问题。

尽快各种不同的浏览器都有css bug,但是css页面布局方式发展到今天,已经比较成熟了,因为bug而让你抓狂不已的发生机率已经不大了。如果有问题,多查查搜索引擎能够解决你大部分的问题。如果,平时闲着的时候,可以作些试验的话,也许更能够在紧急情况下也能够泰然自若。

相关文章

1a1b05c64693fbf380aa1344a7812747.png

DIV+CSS网页制作布局技巧学习...2006-09-09

4f55910a645b073bc4fc65dc10dc14bd.png

这篇文章主要介绍了div的offsetLeft与style.left区别的相关资料,需要的朋友可以参考下2016-09-09

0ea3c7666119d5615e582f823fb3fad6.png

最基本的HTML标签:链接、FRAMES、span、div还有样式表css,这些都要学会才可以手写HMTL代码。2013-10-10

4f96a78db829b1556ff16de21e013c7a.png

学习CSS的10大理由...2006-09-09

8cc1031babc6aff2319f1c6af8544aa0.png

这篇文章主要介绍了纯CSS实现鼠标放上去改变文字内容,需要的朋友可以参考下2014-05-05

0c932a99bb7b6f23c937db507070cc7b.png

CSS滤镜参考...2006-09-09

cca732bf65a93ed2ec0ac80c638460fe.png

li的简单应用(将前面的点换成图标)...2006-08-08

2d9f31f2af7b675a3d153d2b7f1035a7.png

130个漂亮CSS布局站点参考...2006-09-09

b452cee8ec5cd9e58ab98eba17281e59.png

stylelint是一个强大的现代CSS检测器,可以让开发者在样式表中遵循一致的约定和避免错误。本文将详细介绍CSS代码检查工具stylelint2020-02-02

f4838ec7e2d4da28e0b57d4e852dadd4.png

兼容各个浏览器的技巧...2006-09-09

最新评论

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值