From aae53bfa8a4366a1cb246bc818b6e290af82818d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=86=9C=E4=BB=95=E9=B9=8F?= <2293215729@qq.com> Date: Sun, 20 Oct 2024 20:38:38 +0800 Subject: [PATCH] 20241018 --- ...24\350\256\260\345\256\232\344\275\215.md" | 147 ++++++++++++++++++ 1 file changed, 147 insertions(+) create mode 100644 "\345\206\234\344\273\225\351\271\217/20241018-\345\256\232\344\275\215\347\254\224\350\256\260\345\256\232\344\275\215.md" diff --git "a/\345\206\234\344\273\225\351\271\217/20241018-\345\256\232\344\275\215\347\254\224\350\256\260\345\256\232\344\275\215.md" "b/\345\206\234\344\273\225\351\271\217/20241018-\345\256\232\344\275\215\347\254\224\350\256\260\345\256\232\344\275\215.md" new file mode 100644 index 0000000..a0838a0 --- /dev/null +++ "b/\345\206\234\344\273\225\351\271\217/20241018-\345\256\232\344\275\215\347\254\224\350\256\260\345\256\232\344\275\215.md" @@ -0,0 +1,147 @@ +## 定位 +CSS的定位属性有三种,分别是绝对定位、相对定位、固定定位。 + +``` + position: absolute; + + position: relative; + + position: fixed; + +``` +## 相对定位 + +**相对定位**:让元素相对于自己原来的位置,进行位置调整(可用于盒子的位置微调)。 + +我们之前学习的背景属性中,是通过如下格式: + +``` + background-position:向右偏移量 向下偏移量; +``` + +但这回的定位属性,是通过如下格式: + +``` + position: relative; + left: 50px; + top: 50px; +``` + +### 相对定位不脱标 + +**相对定位**:不脱标,老家留坑,**别人不会把它的位置挤走**。 + +也就是说,相对定位的真实位置还在老家,只不过影子出去了,可以到处飘。 + +### 相对定位的用途 + +如果想做“压盖”效果(把一个div放到另一个div之上),相对定位,就两个作用: + +- (1)微调元素 +- (2)做绝对定位的参考,子绝父相 + +### 相对定位的定位值 + +- left:盒子右移 + +- right:盒子左移 + +- top:盒子下移 + +- bottom:盒子上移 + +PS:负数表示相反的方向。 + +## 绝对定位 + +**绝对定位**:定义横纵坐标。原点在父容器的左上角或左下角。横坐标用left表示,纵坐标用top或者bottom表示。 + +格式如下: + +``` + position: absolute; /*绝对定位*/ + left: 10px; /*横坐标*/ + top/bottom: 20px; /*纵坐标*/ +``` +### 绝对定位脱标 + +**绝对定位的盒子脱离了标准文档流。** + +所以,所有的标准文档流的性质,绝对定位之后都不遵守了。 + +绝对定位之后,标签就不区分所谓的行内元素、块级元素了,不需要`display:block`就可以设置宽、高了。 + +### 以盒子为参考点 + +一个绝对定位的元素,如果父辈元素中也出现了已定位(无论是绝对定位、相对定位,还是固定定位)的元素,那么将以父辈这个元素,为参考点。 +(1) + +``` +