设置绝对定位的元素背景色被全覆盖怎么回事?
我试着做,,把文本加长也没用了一遍,发现box2的文本正常显示,定位也对,但box2的背景色被覆盖在下面。以老师讲的为例,就是那个box2的蓝色背景被盖在box1的红色背景下,定位的其他效果都正常
我试着做,,把文本加长也没用了一遍,发现box2的文本正常显示,定位也对,但box2的背景色被覆盖在下面。以老师讲的为例,就是那个box2的蓝色背景被盖在box1的红色背景下,定位的其他效果都正常
2016-08-12
首先,老师说的BOX2背景颜色是绿色,正常情况下DIV是块级元素是会独占一行的,当BOX2设置了绝对定位时,BOX2就会脱离标准文档流,据我的理解,脱离了便准文档流后的DIV就不再独占一行,因此BOX2的位置会被BOX3代替,因为一开始老师没有设置BOX2的父级元素,所以脱离了标准文档流的BOX2会因为绝对定位的特点,以html为偏移参照基准,覆盖了BOX3,并且紧挨着在原本BOX1的下方,当老师设置了BOX2的父包含块BOX并且设置了黄色背景和相对定位时,BOX2就会以BOX2的父级BOX为基准偏移,因为相对定位仍然处于标准文档流中所以BOX1和BOX3之间会出现黄色一条,于是脱离了标准文档流的BOX2会跟着BOX紧挨着BOX1,这个时候如果设置BOX2的偏移量,BOX2就只会在BOX中移动,因为不太明白你问什么,所以重新用文字跟你说一遍,希望你能明白
举报