<img src="1.jpg">
<img src="2.jpg">
<img src="3.jpg">
三个图片,width都是100px,三个行内元素,这个时候都设置float:left
这个时候将第一个图片的margin-left设置为-100px,可以看到刚好第一张图片消失,但是理想状态是随着第一张图片的margin-left负值不断扩大,第二,三张图要尾随着走的,,,但这个效果没出现,奇怪
而如果不设置float:left,则很正常?为何?
<img src="2.jpg">
<img src="3.jpg">
三个图片,width都是100px,三个行内元素,这个时候都设置float:left
这个时候将第一个图片的margin-left设置为-100px,可以看到刚好第一张图片消失,但是理想状态是随着第一张图片的margin-left负值不断扩大,第二,三张图要尾随着走的,,,但这个效果没出现,奇怪
而如果不设置float:left,则很正常?为何?
表示让一个block 浮起来 然后吸附在父容器的 左(left) 或者 右(right)
吸附就是说 尽量靠近容器的边界 除非之间有其他东西(float的东西)占了位置 剩下的就好解释了
第一个img因为负margin 滚出了这个容器的显示区域 不管负多少 只要整个出去了 都是留出了一样的 100宽度的空间
所以 你要图片滚动 要滚的是 图片外面的容器
就是 显示区域 和图片之间 还要有一个 放置图片的容器 这个放置图片的容器在显示区域里面 移动就可以了
第一个图片 移动出去就出去啦。虽然第2个图片已经占位上来
但第2个图片本身设置float:left的含义就是要贴近父容器的左边,所以已经达到目的,因此第1个图片再怎么移动跟父容器已经没有关系,所以第2,第3个图片都没什么影响?