欢迎光临散文网 会员登陆 & 注册

position 的属性有哪些,区别是什么?

2023-02-02 09:56 作者:网星软件  | 我要投稿

position 的属性有哪些,区别是什么?

position 有以下属性值:

absolute:生成绝对定位的元素,相对于 static 定位以外的一个父元素进行定位。元素的位置通过 left、top、right、bottom 属性进行规定。

relative:生成相对定位的元素,相对于其原来的位置进行定位。元素的位置通过 left、top、right、bottom 属性进行规定。

fixed:生成绝对定位的元素,指定元素相对于屏幕视⼝(viewport)的位置来指定元素位置。元素的位置在屏幕滚动时不会改变,⽐如回到顶部的按钮⼀般都是⽤此定位⽅式。

static:默认值,没有定位,元素出现在正常的文档流中,会忽略 top, bottom, left, right 或者 z-index 声明,块级元素从上往下纵向排布,⾏级元素从左向右排列。

inherit:规定从父元素继承 position 属性的值

前面三者的定位方式如下:

relative: 元素的定位永远是相对于元素自身位置的,和其他元素没关系,也不会影响其他元素。

fixed: 元素的定位是相对于 window (或者 iframe)边界的,和其他元素没有关系。但是它具有破坏性,会导致其他元素位置的变化。

absolute: 元素的定位相对于前两者要复杂许多。如果为 absolute 设置了 top、left,浏览器会根据什么去确定它的纵向和横向的偏移量呢?答案是浏览器会递归查找该元素的所有父元素,如果找到一个设置了position:relative/absolute/fixed的元素,就以该元素为基准定位,如果没找到,就以浏览器边界定位。如下两个图所示:

position 的属性有哪些,区别是什么?的评论 (共 条)

分享到微博请遵守国家法律