-
这个题实际是这样的:将上面例子具体化一下,如body(margin:0)下面有一个div高35px,紧邻其后的X元素外边距15px,那么div设置fixed之后,div在原本文档流该处的地方脱离文档流(也就是作为body第一个元素的位置),导致紧邻其后的X元素带着它的15px跑到body的第一个元素,那么问题来了,margin-top:0的body和margin-top:15px的X元素,发生margin重叠(margin cllapse),取较大的值,导致body带着div和x元素一起向下方移动15px。(所以个人觉得,垂直外边距的重叠才是解释这个题目的合理原因)查看全部
-
absolute 与 fixed 相同点: 1、完全脱离标准文档流 2、未设置偏移量时,都定位在父元素的左上角 *偏移量——元素设置定位(绝对或相对)后就具有偏移属性和堆叠属性(z-index)查看全部
-
position属性值: static——静态定位 relative——相对定位 absolute——绝对定位 fixed——固定定位查看全部
-
总结: 1、在上下方向上,父元素和子元素的 margin 会叠加,前提是父元素上下方向没有设置 padding,否则不会叠加; 在左右方向上,父元素和子元素的 margin 不会叠加,无论父元素左右方向是否设置 padding。 2、如果元素设置了absolute 和 fixed 定位,在不指明偏移量的前提下,元素所在位置还是正常文档流中的位置(实际上该元素已经脱离文档流了,只不过位置还是原来的); 在指明偏移量的前提下,absolute 定位会相对于最接近的一个具有定位属性的前辈元素进行定位,如果没有则相对于 body 元素,fixed 定位则以浏览器窗口为参考。 3、无论是 absolute 定位还是 fixed 定位,在指明偏移量的前提下,都是以该元素的盒模型边界来定位的(即包括 margin !) 4、子元素设置 absolute 定位且指明偏移量,则在具有定位属性的前辈元素的 padding 和 content 中定位,如果没有该前辈元素,则相当于浏览器窗口定位(body标签有margin值无影响)查看全部
-
任务3:请补充代码解决 #top 设置为固定定位后,#mainbody 上移的问题,并使 #mainbody 与 #top 之间的间距为 20px查看全部
-
Fix定位总结 ① 定位形式:绝对定位,脱离标准文档流 ② 特点:位置固定,兄弟元素可以从它下面穿过 ③ 未设置偏移量时, 有已定位的祖先元素:以祖先元素为基准定位 无已定位的祖先元素:以浏览器窗口为基准定位 ④ 设置了偏移量:无论有没有已定位的祖先元素,均以浏览器窗口为基准定位查看全部
-
标准文档流中,当两个垂直边界(margin-top或margin-bottom)(且仅仅只在纵向的垂直边界)相遇时,它们将重合形成一个边界。这个边界的高度等于两个发生叠加的边界的高度中的较大者。查看全部
-
Fixed绝对定位查看全部
-
若没有设置偏移量时,都以父元素左上角为基准;若设置了偏移量,则查看全部
-
1、位置固定不变,兄弟元素会从其下面穿过 2、当设置偏移量的时候,不管有没有已经到位的祖先元素,均以浏览器窗口为基准进行偏移 3、未设置偏移量时:a:查看全部
-
margin在垂直方向上相遇时会出现重叠,但是左右方向不会重叠查看全部
-
关于top和mianbody层的设置查看全部
-
fixed定位查看全部
-
绝对定位的特点查看全部
-
fixed和absolute都是属于绝对定位,只是定位方式不同而已查看全部
举报
0/150
提交
取消