手机
当前位置:查字典教程网 >网页设计 > Div+Css教程 >IE6中DIV使用了relative不定义宽度导致right定位误差
IE6中DIV使用了relative不定义宽度导致right定位误差
摘要:今天在做项目使用right时,老是碰到在IE6中显示总是比自己定义的right要小,没时间想那么多迫不得已就使用了hack方法解决,于是晚上...

今天在做项目使用right时,老是碰到在IE6中显示总是比自己定义的right要小,没时间想那么多迫不得已就使用了hack方法解决,于是晚上闲余时特意测试了一下,最后终于找到原因之所在了:IE6中如果使用absolute标签的父级DIV(此DIV使用了relative)不定义宽度,则该标签的right定位会出问题。好像挺难看懂这话的意思,还是看看下面的例子吧,先看下面代码:

<div>

<div>

<a href="#">测试</a>

</div>

</div>

代码显示效果如下图:

IE6中DIV使用了relative不定义宽度导致right定位误差1

由图可知,谷歌浏览器显示是我们所预期的那样,而IE6有点诡异。IE6中蓝色距离红色右边有20px,而谷歌浏览器中有30px,经过不断的测试发现在IE6中,上面的代码中a标签中的right是相对于最外面的那个div,而非父级div。同时我又测试了一下left,发现left显示的是正常的。

目前的只知道有两种解决方法:

1、就是用hack方法,将实际的right值加上最外面DIV的内边距(_right:20+10 px);

2、定义a标签的父级div的宽度即可。

【IE6中DIV使用了relative不定义宽度导致right定位误差】相关文章:

dev控件中LookUpEdit的数据绑定问题

CSS清除浮动 万能float闭合

div使用margin:0px auto不居中的原因分析及解决

如何用!important解决浏览器兼容性问题

了解CSS的查找匹配原理

Div+CSS网页制作布局入门

DIV+CSS 分享学习心得 导航篇

CSS基础教程:CSS属性结合起来使用

CSS属性behavior的语法使用

CSS技巧荟萃:了解CSS页面布局和加载流程

精品推荐
分类导航