父元素不能overflow:hidden或者overflow:auto属性。
必须指定top、bottom、left、right4个值之一,否则只会处于相对定位
父元素的高度不能低于sticky元素的高度
sticky元素仅在其父元素内生效
在我满足这些要求以后 我将我一个侧边栏设置了position:sticky后 我侧边栏下面有一个div div中的img却被挤下去了 我已经给这个侧边栏设置了浮动 这是为什么啊
被设置sticky的元素,并没有脱离文档流。
超过你设置的top一类的偏移量像素后,才会触发效果。
而且,是参照父级元素的。如果父级元素不可滚动,那就是参照当前视口来判断
兼容性不好。
结合你的使用场景,我感觉你貌似使用的有问题。。。
设置了sticky的元素,在屏幕范围(viewport)时该元素的位置并不受到定位影响(设置是top、left等属性无效),
当该元素的位置将要移出偏移范围时,定位又会变成fixed,根据设置的left、top等属性成固定位置的效果。(不会脱离文档流)
第二天我又回去看浮动 才发现是浮动的问题 因为浮动会让文本环绕排列 所以会把图片挤压下去。我把那个块元素放到下面去 问题就解决了