ie浏览器兼容

来源:互联网 发布:最小割算法 编辑:程序博客网 时间:2024/05/19 13:24

ie低版本浏览器默认很多标签是自带样式的。

ul默认室友padding-left 40px

li标签的默认样式是跟其他浏览器不一样的。

默认情况下,Firefox中list-style-position值为outside,即列表项符号会在LI标签的外面显示。而IE6的默认值则相反(inside)。不过这还不是问题关键,

IE6完全是属于占着茅坑不拉屎的那种,即使你不显示列表项符号,即把list-style-type设置成none,它依然会保留列表项符号占用的空间。

所以无论你给LI的设置margin:0或者padding:0,你都会发现Li左边会多出16PX的空间。
既然知道问题的关键,解决起来就不难了,直接设置
list-style-position:outside;

设置position后记得在relative属性的元素设置浮层  z-index:0;初始化。避免不兼容


多个并排div,设置margin等值无效:

这种情况可能是第一个div设置了浮动,而其他的并没有设置浮动。所以会导致后边的元素的margin等值无效。

解决方法:

1在浮动和没有设置浮动的div元素中间添加<divstyle="clear:both;"></div>

2.给所有div元素设置float属性


ie7中li标签有默认的做编剧导致字体有左移动,设置里标签的样式 list-style-position:outside;


ie老版浏览器外层父div标签设置了宽高,里面嵌套li等标签同时有设置padding或者margin的时候,整个div的宽高度会变成原本的宽加上oadding的宽或者margin的宽,原本的高度变成原高加padding高,或者加margin高 ,这时候需要在原div里面加一个div或者ul之类的标签包裹住li等标签,这种bug事因为写法不够严谨而导致的


ie浏览器margin:0 auto失效,全部在左边。只需要给父元素添加一个text-align:center属性即可

0 0