zoukankan      html  css  js  c++  java
  • CSS中的绝对定位与相对定位

    CSS中的绝对定位与相对定位

    一个绝对定位的元素的起点位置是相对于它的第一个 position 值不为 static 的父元素而言的。如果在它的父元素链上没有满足条件的父元素,那么绝对定位元素则会相对于文档窗口来进行定位。 
     

    层级关系为:

    <div ——————————— position:relative; 不是最近的祖先定位元素,不是参照物

    <div—————————-没有设置为定位元素,不是参照物

    <div———————- position:relative 参照物

    <div box1

    <div box2 ——–position:absolute; top:50px; left:120px;

    <div box3 效果图:

    为改变参照物(橘色框)后的效果 层级关系为:

    <div ——————————— position:relative;最近的祖先定位元素,参照物

    <div—————————-没有设置为定位元素,不是参照物

    <div———————-没有设置为定位元素,不是参照物

    <div box1

    <div box2 ——–position:absolute; top:50px; left:120px;

    <div box3 效果图:

    参照物为最顶级的元素情况

    层级关系为:

    <div ———————————没有设置为定位元素,不是参照物

    <div—————————-没有设置为定位元素,不是参照物

    <div———————-没有设置为定位元素,不是参照物

    <div box1

    <div box2 ——–position:absolute; top:50px; left:120px;

    <div box3 效果图:

    仅使用margin属性布局绝对定位元素的情况

    此情况,margin-bottom 和margin-right的值不再对文档流中的元素产生影响,因为该元素已经脱离了文档流。另外,不管它的祖先元素有没有定位,都是以文档流中原来所在的位置上偏移参照物。 图9中,使用margin属性布局相对定位元素。

    层级关系为:

    <div ——————————— position:relative; 不是参照物

    <div—————————-没有设置为定位元素,不是参照物

    <div———————-没有设置为定位元素,不是参照物

    <div box1

    <div box2 ——–position:absolute; margin-top:50px; margin-left:120px;

    <div box3 效果图:

    IE6的情况下,box2前面没有兄弟节点,则margin-left的值会出现双倍边距,见图10。

    层级关系为:

    <div ——————————— position:relative; 不是参照物

    <div—————————-没有设置为定位元素,不是参照物

    <div———————-没有设置为定位元素,不是参照物

    <div box1

    <div box2 ——–position:absolute; margin-top:50px; margin-left:60px;

    <div box3 效果图:

  • 相关阅读:
    三、ADO.Net基础【04】简单查询
    Canvas 图片绕边旋转的小动画
    Canvas 剪切图片
    Canvas 图片平铺设置
    Canvas 给图形绘制阴影
    Canvas 图形组合方式
    [转]JS获取URL传参方法
    HTML5 FileReader接口学习笔记
    css3实现圆角边框渐变
    HTML5新增属性学习笔记
  • 原文地址:https://www.cnblogs.com/itjeff/p/3528018.html
Copyright © 2011-2022 走看看