CSS中的绝对定位与相对定位
2016-08-04 00:00
369 查看
层级关系为:
<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
效果图:
<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
效果图:
相关文章推荐
- CSS基础学习之绝对定位和相对定位
- CSS中的绝对定位与相对定位 【转载】
- 详解学习DIV+CSS之绝对定位和相对定位
- CSS基础学习之绝对定位和相对定位
- css布局模型之绝对定位与相对定位
- CSS中的绝对定位与相对定位
- 实例演示div+css的绝对定位和相对定位布局
- 详解div+css相对定位和绝对定位用法
- 详解div+css相对定位和绝对定位用法
- CSS中的相对定位和绝对定位
- CSS中的绝对定位与相对定位
- 详解学习DIV+CSS之绝对定位和相对定位
- css关于position属性的用法详解(绝对定位和相对定位的混淆)
- CSS的定位(绝对定位 相对定位 固定定位
- css中的相对定位和绝对定位
- 辛星和你彻底搞清CSS中的相对定位和绝对定位
- div+css相对定位和绝对定位
- div+css相对定位和绝对定位用法实例详解
- 讨论CSS的绝对定位与相对定位
- css 相对定位和绝对定位的进一步了解