css中position属性有哪些用法


本文摘自PHP中文网,作者V,侵删。

position属性

position属性指定用于元素的定位方法的类型(静态,相对,固定,绝对或粘性)。 有五种不同的值:

?static
?relative
?fixed
?absolute
?sticky

然后使用top,bottom,left和right属性定位元素。但是,除非首先设置position属性,否则这些属性将不起作用。根据位置值,它们的工作方式也不同。

position:static;

默认情况下,HTML元素定位为静态。静态定位元素不受top,bottom,left和right属性的影响。 元素position:static;没有以任何特殊方式定位; 它总是根据页面的正常流程定位:

(推荐教程:CSS入门教程)

这个<div>元素的position:static;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

<!DOCTYPE html>

<html>

<head>

    <meta charset="utf-8">

    <title>css</title>

    <style>

        div.static {

            position: static;

            border: 3px solid #73AD21;

        }

    </style>

</head>

<body>

<h2>position: static;</h2>

<p>一个位置为position:static; 没有任何特殊的定位; 它是始终根据页面的正常流程定位:</p>

<div class="static">

    这个div元素的位置为:static;

</div>

</body>

</html>

position:relative;

具有position:relative;相对于其正常位置定位的元素。设置相对定位元素的top,bottom,left和right属性将使其远离其正常位置进行调整。其他内容不会被调整以适应元素留下的任何空白。

这个<div>元素的position:relative;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

<!DOCTYPE html>

<html>

<head>

    <meta charset="utf-8">

    <title>css</title>

    <style>

        div.relative {

            position: relative;

            left: 30px;

            border: 3px solid #73AD21;

        }

    </style>

</head>

<body>

<h2>position: relative;</h2>

<p>position:relative的元素; 相对于其正常位置定位:</p>

<div class="relative">

    这个div元素有position: relative;

</div>

</body>

</html>

position:fixed;

元素position:fixed;相对于视口定位,这意味着即使页面滚动,它也始终保持在同一位置。top,bottom,left和right属性用于定位元素。固定元素不会在页面中留下通常位于其中的间隙。注意页面右下角的固定元素。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

<!DOCTYPE html>

<html>

<head>

    <meta charset="utf-8">

    <title>css教程(jc2182.com)</title>

    <style>

        div.fixed {

            position: fixed;

            bottom: 0;

            right: 0;

            width: 300px;

            border: 3px solid #73AD21;

        }

    </style>

</head>

<body>

<h2>position:fixed;</h2>

<p>position:fixed; 相对于视口定位,这意味着即使页面滚动,它也始终保持在同一位置:</p>

<div class="fixed">

    这个div元素有position: fixed;

</div>

</body>

</html>

position:absolute;

具有position:absolute;相对于最近定位的祖先定位的元素(而不是相对于视口定位,如fixed)。然而; 如果绝对定位元素没有定位祖先,它将使用文档正文,并随页面滚动一起移动。 注意: “定位”元素的位置是除了static之外的任何元素。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

<!DOCTYPE html>

<html>

<head>

    <meta charset="utf-8">

    <title>css教程(jc2182.com)</title>

    <style>

        div.relative {

            position: relative;

            width: 400px;

            height: 200px;

            border: 3px solid #73AD21;

        }

        div.absolute {

            position: absolute;

            top: 80px;

            right: 0;

            width: 200px;

            height: 100px;

            border: 3px solid #73AD21;

        }

    </style>

</head>

<body>

<h2>position: absolute;</h2>

<p>position:absolute;的元素; 相对于最近定位的祖先定位(而不是相对于视口定位,如fixed):</p>

<div class="relative">这个div元素有 position: relative;

    <div class="absolute">这个div元素有 position: absolute;</div>

</div>

</body>

</html>

position:sticky;

position:sticky;根据用户的滚动位置定位元素。粘性元素在relative和之间切换fixed,具体取决于滚动位置。它被相对定位,直到在视口中满足给定的偏移位置 - 然后它“粘住”到位(如位置:fixed)。

注意: Internet Explorer,Edge 15及更早版本不支持粘性定位。Safari需要-webkit-前缀(参见下面的示例)。您还必须指定的至少一个top,right,bottom或left为粘稠的定位工作。

在此示例中,top: 0当您到达其滚动位置时,粘性元素会粘到页面顶部。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

<!DOCTYPE html>

<html>

<head>

    <style>

        div.sticky {

            position: -webkit-sticky;

            position: sticky;

            top: 0;

            padding: 5px;

            background-color: #cae8ca;

            border: 2px solid #4CAF50;

        }

    </style>

</head>

<body>

<p>尝试在此框架内<b>滚动</b>以了解粘性定位的工作原理。</p>

<p>注意:IE/Edge15及更早版本不支position: sticky;。</p>

<div class="sticky">我很粘!</div>

<div style="padding-bottom:2000px">

    <p>在此示例中,当您到达其滚动位置时,粘性元素会粘到页面顶部(顶部:0)。</p>

    <p>向上滚动以消除粘性。</p>

    <p>Some text to enable scrolling.. Lorem ipsum dolor sit amet, illum definitiones no quo, maluisset concludaturque et eum, altera fabulas ut quo. Atqui causae gloriatur ius te, id agam omnis evertitur eum. Affert laboramus repudiandae nec et. Inciderint efficiantur his ad. Eum no molestiae voluptatibus.</p>

    <p>Some text to enable scrolling.. Lorem ipsum dolor sit amet, illum definitiones no quo, maluisset concludaturque et eum, altera fabulas ut quo. Atqui causae gloriatur ius te, id agam omnis evertitur eum. Affert laboramus repudiandae nec et. Inciderint efficiantur his ad. Eum no molestiae voluptatibus.</p>

    <p>Some text to enable scrolling.. Lorem ipsum dolor sit amet, illum definitiones no quo, maluisset concludaturque et eum, altera fabulas ut quo. Atqui causae gloriatur ius te, id agam omnis evertitur eum. Affert laboramus repudiandae nec et. Inciderint efficiantur his ad. Eum no molestiae voluptatibus.</p>

    <p>Some text to enable scrolling.. Lorem ipsum dolor sit amet, illum definitiones no quo, maluisset concludaturque et eum, altera fabulas ut quo. Atqui causae gloriatur ius te, id agam omnis evertitur eum. Affert laboramus repudiandae nec et. Inciderint efficiantur his ad. Eum no molestiae voluptatibus.</p>

</div>

</body>

</html>

相关视频教程推荐:css视频教程

以上就是css中position属性有哪些用法的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

推荐一个chrome devtools实用小插件:css overview panel

css box-direction属性怎么用

css标准模型包含外边距吗

css怎么设置字体为微软雅黑

详解解读ie6中的position:fixed问题

css设置背景颜色

css里面div如何居中显示文字

div css怎么实现隐藏滚动条

css盒子模型尺寸如何计算

css中的&是什么意思

更多相关阅读请进入《css》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...