Position总结测试
关于position我目前能想到的知识点:文档
Position:absolute(绝对定位):it
问题io
解答float
对于这个问题有测试了几回,发现只要设置了position:absolute就脱离文档流总结
3. 基于static之外的第一个父元素的宽度(width)或者高度(height)进行计算,若是这个定位的元素上一级父元素就是body,那么这个元素的百分比基于屏幕的可视宽度或者高度进行计算(不是基于body定位啊,除非body是static之外的定位)margin
4. absolute是不能和float(浮动)共用的,若是一个元素同时有position:absolute;和float:left那么position优先级会高于floatstatic
5. 首先来讲absolute和margin之间的联系top
这么一个结构,box父元素并相对定位,son子元素绝对定位,并且有一个margin-left:20px,那么若是我在给这个元素添加一个left:20px;这个元素依然会向右边移动20px,说明absolute在定位的时候是吧margin算进来的(不会重叠)移动
再来讲padding与absolute,padding会把整个盒子称大,absolute在计算的时依然会把padding算进在box内
6.元素定位后生成一个块级框,而不论原来它在正常流中生成何种类型的框(因为float也是脱离文档流,因此也会造成块级)
Position:relative(相对定位):
基本也是这五个问题
2.relative是不会脱离文档流的
3.这个百分比基于其父元素的width或者height计算的,无论父元素有没有定位,因此说若是这个元素的父元素就是body,而body没有设定高度,那么此时的百分比是不起做用的
4.能共用,两个属性都会起做用(估计是用了relative属性的元素没有脱离文档流,因此float会起做用)
5.同absolute ,会把margin,padding算进box中,不会叠加,跟absolute相同
Position:fixed(固定定位):