CSS学习笔记之position定位

position:定义元素布局所用的定位机制。任何元素都可以定位。

定位元素的位置通过 "left", "right", "top", "bottom" 属性进行规定。

position属性常用的值有三个:

1)、relative:相对定位,相对于其在正常流中的默认位置进行定位。且该元素在正常流中的默认位置仍然

存在,不会被别的元素占据。例如:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
    <style type="text/css">
        .div1{
            border:3px solid red;
            width:300px;
            height:200px;
            position:relative;  /* 相对定位 */
            top:60px;
            left:30px;
        }

        #pid{
            border:2px solid blue;
            width:40px;
        }

        #hid{
            border:2px solid #c83dd8;
            width:60px;
        }

        .div2{
            border:3px solid green;
            width:400px;
            height:300px;
            margin-top:20px;
        }
    </style>
</head>
<body>
    <div class="div1">
        我是div1
        <p id="pid">我是段落</p>
        <h2 id="hid">我是标题</h2>
    </div>
    <div class="div2">
        我是div2
    </div>
</body>
</html>
页面效果:虽然div1相对于正常流中的位置发生了偏移,但是其原位置仍然存在,别的元素无法占据。


2)、absolute:绝对定位,相对于其父元素进行定位。若父元素位置移动,该元素会跟着一起移动。

  该定位会取消元素在正常流中所占的位置。例如:

<span style="white-space:pre">	</span>.div1{
            border:3px solid red;
            width:300px;
            height:200px;
            position:absolute;  /* 将 relative(相对定位) 改为 absolute(绝对定位) */
            top:60px;
            left:30px;
        }

        #pid{
            border:2px solid blue;
            width:40px;
            position:absolute;  /* 绝对定位,相对于父元素进行定位 */
            left:30px;
            top:20px;
        }

        #hid{
            border:2px solid #c83dd8;
            width:60px;
            position:absolute;  /* 绝对定位,相对于父元素进行定位 */
            left:100px;
            top:60px;
        }
页面效果:div1定位改成absolute之后,div2占据了div1原来的位置。


3)、fixed:绝对定位,相对于浏览器窗口进行定位,使元素固定在浏览器上,不会因为任何情况而发生位置移动。

    该定位也会使元素在正常流中的原位置取消。例如:

        .div1{
            border:3px solid red;
            width:300px;
            height:200px;
            position:fixed; /* 将定位 改为 fixed */
            top:60px;       /* 元素距离浏览器窗口的位置不会发生改变。 */
            left:30px;
        }
页面效果:不过其他元素如何改变,也不管浏览器窗口如何改变,div1在浏览器中的位置始终不变。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值