当先锋百科网

首页 1 2 3 4 5 6 7

标签:

css position 属性

首先准备一下测试的html代码:

1,absolute:中文意思为绝对的,生成绝对定位的元素,元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。

1 .one{

2 position: absolute;

3 width: 500px;

4 height: 500px;

5 border: 1px solid #000;

6 top: 100px;

7 left: 100px;

8 }

9 .two{

10 position: absolute;

11 width: 500px;

12 height: 500px;

13 border: 1px solid #000;

14 top: 700px;

15 left: 100px;

16 }

在这里我们就将class为one和two的两个元素的position设置为absolute,这两个元素就被固定在了网页的某个位置,不会因为其他的一些因素而改变。当鼠标向下滚动时,没有变化。效果图:

28c72d303a18b70bdfcc9931a8a719a3.png

2,fixed:生成固定定位的元素,相对于浏览器窗口进行定位。元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。

添加代码:

.three{

position: fixed;

width: 500px;

height: 500px;

border: 1px solid #000;

top: 300px;

left: 700px;

}

当我们鼠标向下滚动时,class为three这个元素相当于固定在窗口的某个位置。可自行测试效果。图片不好展示效果。

8f390d11f1af12ce3c4ebddcbcf330a5.png

右边的滚动条我向下拉动了一点,但是class为three这个元素在窗口中的位置还是没变,而另外两个变了。

3,relative:生成相对定位的元素,相对于其正常位置进行定位。因此,"left:20" 会向元素的 LEFT 位置添加 20 像素。相对定位会按照元素的原始位置对该元素进行移动。

代码为:

1

这是标题正常位置

2

这是标题向左移动位置

3

这是标题向右移动位置

1 h2.left{

2 position: relative;

3 left: -30px;

4 }

5 h2.right{

6 position: relative;

7 left: 30px;

8

9 }

样式 "left:-20px" 从元素的原始左侧位置减去 20 像素。

样式 "left:20px" 向元素的原始左侧位置增加 20 像素。

c0ff683555c20a57fdf08b4dc8854d11.png

4,static:默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。

5,sticky:基于用户的滚动位置来定位。

粘性定位的元素是依赖于用户的滚动,在 position:relative 与 position:fixed 定位之间切换。

它的行为就像 position:relative; 而当页面滚动超出目标区域时,它的表现就像 position:fixed;,它会固定在目标位置。

元素定位表现为在跨越特定阈值前为相对定位,之后为固定定位。

这个特定阈值指的是 top, right, bottom 或 left 之一,换言之,指定 top, right, bottom 或 left 四个阈值其中之一,才可使粘性定位生效。否则其行为与相对定位相同。

标签:

来源: https://www.cnblogs.com/xu-xiao-jin/p/9715171.html