css 定位

来源:百度知道 编辑:UC知道 时间:2024/05/25 05:28:24
<li style="float:left; background-image:url(images/lggsmain_78.gif); height:23px; width:90px; margin:7px 0px 0px 30px;">AAAAAAAAAAAA
</li>

margin:7px 0px 0px 30px; ——》(30px)显示成60px (图片向右多移动了30px 准确的说是2倍)
去掉float就没事 以前也出现过这种情况 li里面加float属性的话是不是
不能定位li了呢?
请高手指点

加上float时,可以再加上一句display:inline;
即可解决ie中这个问题。

或者可以用所谓hack

你这个不是定位的问题,定位属性为position;

左边界是值的两倍,这个是IE的BUG;你可以用左填充30px(margin:7px 0px 0px 0px;padding-left:30px)来代替左边界30px,不过这个办法在你这里不行;
也可以hack;margin:7px 0px 0px 30px; *margin-left:15px;如果只是在IE6中是这种情况则用margin:7px 0px 0px 30px;_margin_left:15px;

不太明白你说的这种情况显示出来到底是什么样的
不过好像知道一点!
float:left是向左浮动的意思!那么它的前面是不是还设了别的了?
比如之前你是不是先设了一个宽30px的层 然后又设了这个 那么这个浮动的基础对象就是前面的层 也就是在以前面的层为参照物向左浮动30px 你再好好看看吧!

ie6下给浮动容器定义margin-left 或者margin-right 实际效果是数值的2倍。解决方案,给浮动容器定义display:inline