zoukankan      html  css  js  c++  java
  • css定位position

    position属性

             position是css的一个定位属性,通过指定元素的定位方式,来设置元素的位置


    position属性值

    static position属性默认值,不为元素设置定位方式,元素会按照文档流中位置正常显示。也可用来取消之前设置的定位。
    absolute 绝对定位,完全脱离文档流,以包含块为参照物进行定位(设置top,bottom,left,right属性确定元素位置)
    relative 相对定位,不脱离文档流,以自身原位置为参照物进行定位(设置top,bottom,left,right属性确定元素位置)
    fixed 固定定位,完全脱离文档流,以浏览器窗口为参照物进行固定定位(设置top,bottom,left,right属性确定元素位置)
    stycky 粘性定位,元素随着窗口的滚动 到达指定位置的时候 ,会表现为固定定位的模式。

    position各属性值用法

    • static

    默认值,不为元素设置定位。很少使用,如果想要取消一个元素之前的定位设置,可以为该元素设置position属性设置为static    

    • relative(相对定位)

    以自身位置为参照物进行定位,元素不脱离文档流,不影响其他元素的布局位置

    <div class="box">
        <h3>相对定位</p>
        <p>我有一只小猪猪!我有一只小猪猪!我有一只小猪猪</p>
    </div>
    *{margin: 0;padding: 0;}
    .box{margin: 50px;width: 500px;height: 300px;border: 2px solid red;font-size: 30px;}
    h3{
        width: 200px;
        height: 50px;
        background: yellow;
    }
    p{
        width: 200px;
        height: 200px;
        background: green;
    }

    一个div内含一个h3和p标签

    (1)为h3设置position:relative;

    h3{
        width: 200px;
        height: 50px;
        background: yellow;
        position: relative;
    }

    (2)再为h3添加 top:100px;  left:100px;

    h3{
        width: 200px;height: 50px;background: yellow;
        position: relative;
        top: 100px;
        left: 100px;
    }

    • absolute(绝对定位)

    以设置position:absolute/relative/fixed的父级元素为参照物,若父级元素都未定位,则会以body为参照物进行定位(设置top,bottom,left,right属性确定元素位置)

    绝对定位的元素会完全脱离文档流,元素在普通流中不再占据位置

    (1)为h3设置position:absolute;

    p标签上浮且被设置了position:absolute;的h3 遮盖,说明 h3已经脱离了普通文档流

    (2)给h3添加 top:10px;  left:10px;

    设置top,bottom,left,right属性后的h3  并不是相对于box定位的  而是相对于body进行定位

    这里涉及一个定位的使用小技巧:position:relative;position:absolute;联合使用。为想要进行绝对定位的元素的父级元素设置position:relative;既不会影响改变父级元素的位置,又可以使其变成该元素的参照物。

    .box{
        margin: 50px;width: 500px;height: 300px;border: 2px solid red;font-size: 30px;
        position: relative;
    }
    h3{
        width: 200px;height: 50px;background: yellow;
        position: absolute;
        top: 10px;
        left: 10px; 
    }

    • fixed(固定定位)

    完全脱离文档流,以浏览器窗口为参照物进行固定定位(设置top,bottom,left,right属性确定元素位置)

    例如在浏览网页时的那些小广告,无论你怎么滚动页面它都会保持在网页窗口的固定位置不变。

    • sticky (粘性定位)

    元素随着窗口的滚动 到达指定位置的时候 ,会表现为固定定位的模式。可以理解为元素在到达指定位置前position属性值为position:relative滚动到指定位置后会变为 position:fixed,回到原位置后又会变回position:relative

    注意:1、sticky 效果的实现依赖于用户的滚动

                      2、必须要设置top,bottom,left,right其中之一才能实现粘性定位效果,否则元素位置不会变化


    z-index:

    设置定位元素的层叠顺序

    z-index:number; 

    number :数值不同,比大小(数越大,层级越高,越优先显示)

                     数值相同,比位置(书写位置靠后的,显示在上层)

  • 相关阅读:
    appfabric cache配置,实验记录
    appfabric cache存储ef 查询结果的bug
    CruiseControl.NET svn获取 自动编译 ftp上传
    @Ajax.RenderAction 把局部页改为ajax加载
    分布式架构下的mvc 异步controller ajax comet 长连接
    win7重装iis,搞死
    验证码识别的基本思路及方法
    C# 获取程序当前文件夹
    在c#中 限制文本框只能输入数字
    string字符串 获取指定位置范围的子字符串
  • 原文地址:https://www.cnblogs.com/rookieKong/p/12812291.html
Copyright © 2011-2022 走看看