其实前面的标准流和浮动流都很理解,就是定位不太好理解,特别是相对定位和绝对定位,很多刚开始学的同学不好区分。因此这里,小强老师和大家一起分享css定位的学习。
通过我们前面的学习,我们网页布局方法:
1. 标准流 (最稳定)
2. 浮动流 (float 其次)
3. 定位流 ( 稳定性最后)
定位是完全脱离标准流的一种布局方式。
其实前面的标准流和浮动流都很理解,就是定位不太好理解,特别是相对定位和绝对定位,很多刚开始学的同学不好区分。因此这里,小强老师和大家一起分享CSS定位的学习。
我们知道,定位都是和方位名词一起使用的,调整位置,大部分使用top,left,bottom,right配合使用的。
首先我们看看定位的分类:
1.绝对定位 absolute
position:absolute;
绝对定位和相对定位用的相对来说,是比较多的地方。绝对定位到底有什么特点,在这里小强老师,给大家总结一下。
1.如果定位没有父盒子
那么这个盒子,加上绝对定位后,都是以浏览器的左上角为原点,所有的移动,也是以该原点来移动的。
案例如图:
预览后
2.如果有父盒子,但是父盒子,没有定位,那么,结果不会变,这个盒子还是会以浏览器的左上角为原点。
预览后
3.如果有父盒子,并且父盒子有定位,那么此时,绝对定位会以父盒子的左上角为原点,对齐。
如图:
生成效果:
4. 绝对定位有个很重要的特点,就不占位置,完全脱离标准流,所以它会升起来,它的后侧会有标准流占据。
2.相对定位 (relative)
position:relative
相对定位简单,不管有没有父盒子,它都是以自身的左上角为原点。
还有,它是占位置的,就是还有其他盒子,会排在的下方。
3. 固定定位
position:fixed
固定定位也是相对于浏览器来说的,他是固定再浏览器的某个位置。 (ie6不支持固定定位,只能另外解决)
固定定位,也不占位置,完全脱离标准流。
4. 静态定位
position:static
他几乎和标准流一样,没有特殊定位,并且是占位置的。
5.叠放次序:
z-index: 数值;
数值越大 盒子越靠上 需要注意:数值后面一定不能加单位.
.one{z-index:10;}
总结:
定位来说,占位置的有 static 静态定位和relative相对定位,不占位置的有 absolute绝对定位和fixed固定定位。这个很重要,对我们布局标准流,有很大的影响。
我们一定要记住的口诀就是,子级绝对,父级相对。 这样对我们布局来说,是最合适的布局理念。