2.能够在任意一个位置的元素(绝对定位)
相对定位只能够在文本流中进行位置的上下左右的移动,一样存在必定的局限性,虽然他的表现区脱离了文本流,可是在文本流却依然为其保留了一席之地,这就好 比一个打工的人他到了外地,可是在老家依然有一个专属于他的位置,这个位置不随他的移动而改变。可是这样很明显就会空出一块空白来,若是但愿文本流抛弃这 个部分就须要用到绝对定位。绝对定位不光脱离了文本流,并且在文本流中也不会给这个绝对定位元素留下专属空位。这就比如是一个工厂里的职位,若是有一个工 人走了天然会要有别的工人来填充这个位置。而移动出去的部分天然也就成为了自由体。绝对定位将能够经过TRBL来设置元素,使之处在任何一个位置。在父层 position属性为默认值时,TRBL的坐标原点以body的坐标原点为起始。看下图:
上图可知,文本流中的内容会顶替绝对定位无素的位置,一点都不会客气。而绝对定位元素天然的层叠于文本流之上。而在单一的绝对定位中,定位元素将会跑到网页的左上角,由于那里是他们的被绝对定位后的坐标原点。
3.被关联的绝对定位
实际的应用中咱们经常会须要用到一种特别的形式。即但愿定位元素要有绝对定位的特性,可是又但愿绝对定位的坐标原点能够固定在网页中的某一个点,当这个点 被移动时绝对位定元素能保证相对于这个原坐标的相对位置。也就是说须要这个绝对定位要跟着网页移动,而而且是因定在网页的某一个固定位置。一般当网页是居 中形式的时候这种效果就会显得特别的重要。要实现这种效果基本方式就是为这个绝对定位的父级设置为相对定位或是绝对定位。那么绝对定位的坐标就会以父级为 坐标起始点。
虽然是如此,可是这个坐标原点却并非父级的坐标原点,这是一个很奇怪的坐标位置。咱们看一下模型图示:
浏览器
咱们看到,这个图中父级为黑灰色区块,子级为青色区块。父级是相对定位,子级是绝对定位。子级设置了顶部位移50个像素,左倾位移50个像素。那么咱们看,子级的坐标原点并非从父级的坐标原点位移50个像素,而是从父级块的padding左上边缘点为坐标起始点(即A 点)。而父级这里若是要产生位置移动,或是浏览器窗口大小有所变更都不会影响到这个绝对定位元素与父级的相对定位元素之间的位置关系。这个子级也不用调整数值。 spa
4.总在视线里的元素 (固定定位)position:fixed; 他的含义就是:固定定位。这个固定与绝对定位很像,惟一不一样的是绝对定位是被固定在网页中的某一个位置,而固定定位则是固定在浏览器的视框位置。 对象