css定位

2016-10-25  本文已影响0人  黄露hl

将窗体自上而下分成一行行, 并在每行中按从左至右的顺序排放元素,即为文档流。脱离文档流的方式有浮动和定位。
css中定位用position属性。

描述
absolute 生成绝对定位的元素,相对于 static定位以外的第一个父元素进行定位。元素的位置通过 "left","top","right"以及"bottom"属性进行规定。已脱离文档流,其它盒子会无视这个元素。
relative 生成相对定位的元素,相对于其正常位置进行定位。相对于自己原来的位置偏移,一般用于微调,对后面的元素不造成位置影响。
fixed 生成绝对定位的元素,相对于浏览器窗口进行定位。比如一些网站打开后的广告条一直处在网页右侧中部就是用fixed来定位的。
static 默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。
inherit 规定应该从父元素继承 position 属性的值。
demo图片demo图片
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
    <title>定位</title>
    <style type="text/css">
        .div{
            position: relative;
            border:10px solid #ccc;
            width: 500px;
            height: 1000px;
        }

        .div1{
            position: absolute;
            left: 20px;
            border:10px solid red;
            width: 50px;
            height: 50px;
        }
        .div2{
            position: relative;
            top: 10px;
            border:10px solid green;
            width: 50px;
            height: 50px;
        }
        .div3{
            position: fixed;
            bottom: 50px;
            right: 50%;
            border:10px solid black;
            width: 50px;
            height: 50px;
        }
        .div4{
            position: static;
            border:10px solid blue;
            width: 50px;
            height: 50px;
        }
    </style>
</head>
<body>
<div class="div">
<div class="div1">111</div> <!--相对于其父元素向左偏移了20px-->
<div class="div2">222</div> <!--相对于自己原本的位置向下偏移了10px-->
<div class="div3">333</div>  <!--一直处于浏览器窗口的某一位置,自底部向上50px,离右侧50%的距离-->
<div class="div4">444</div> <!--位置无偏移,由于div2向下偏移了10px,所以div4的上边框被覆盖,这说明div4的层级比div2低,想要让div4将2覆盖,则可以通过z-index设置-->
</div>
</body>
</html>
上一篇下一篇

猜你喜欢

热点阅读