position的四个属性值: relative ,absolute ,fixed,static
来源:互联网 发布:手机音乐调速软件 编辑:程序博客网 时间:2024/05/19 06:51
position的四个属性值: relative ,absolute ,fixed,static
下面分别讲述这四个属性,以简单代码表示
<span style="font-size:18px;"><div id="parent"> <div id="sub1">sub1</id> <div id="sub2">sub2</id></div></span>
1. relative
relative属性是相对它本身来进行偏移的。
我们可以这样理解,如果不设置relative属性,sub1的位置按照正常的文档流,它应该处于某个位置。但当设置sub1为的position为relative后,将根据top,right,bottom,left的值按照它理应所在的位置进行偏移,relative的“相对的”意思也正体现于此。
随后的问题是,sub2的位置又在哪里呢?答案是它原来在哪里,现在就在哪里,它的位置不会因为sub1增加了position的属性而发生改变。
<style> #sub1,#sub2{ width: 200px; height: 200px; border: 1px solid black; margin: 20px; } #sub1{ position: relative; left: 50px; top: 50px; }</style>
如果此时把sub2的position也设置为relative,依然和sub1一样,按照它原来应有的位置进行偏移。
<style> #sub1,#sub2{ width: 200px; height: 200px; border: 1px solid black; margin: 20px; } #sub2{ position: relative; left: 50px; top: 50px; }</style>
注意relative的偏移是基于对象的margin的左上侧的。
2. absolute
当position属性设为absolute后,并不是按照浏览器窗口来进行定位的,因为这是fixed属性的特点。
当sub1的position设置为absolute后,其到底以谁为对象进行偏移呢?这里分为两种情况:
(1)当sub1的父对象parent也设置了position属性,且position的属性值为absolute或者relative时,也就是说,不是默认值的情况,此时sub1按照这个parent来进行定位。
注意absolute偏移以parent的padding的左上角开始进行定位,而不是以margin的左上端开始定位。
sub2的位置呢,由于当position设置为absolute后,会导致sub1溢出正常的文档流,就像它不属于parent一样,它漂浮了起来。此时sub2将获得sub1的位置,它的文档流不再基于sub1,而是直接parent开始。
<style> #sub1,#sub2{ width: 100px; height: 100px; border: 1px solid black; } #sub1{ position: absolute; left: 200px; top: 50px; } #parent{ position: absolute; margin: 50px; padding: 50px; width: 600px; height: 300px; border: 1px solid black; }</style>
(2)如果sub1不存在一个有着position属性的父对象,那么那就会以body为定位对象,按照浏览器的窗口进行定位,这个比较容易理解。
3. fixed
fixed是特殊的absolute,即fixed总是以body为定位对象的,按照浏览器的窗口进行定位,fix定位后上下滚动页面div是不会变的。
4. static
position的默认值,一般不设置position属性时,会按照正常的文档流进行排列。
- position的四个属性值: relative ,absolute ,fixed,static
- position的四个属性值: relative ,absolute ,fixed,static
- CSS position属性的四个值:static,absolute,fixed,relative
- position的四个属性值: relative ,absolute ,fixed,static
- position的四个属性值: relative ,absolute ,fixed,static
- position的四个属性值: relative ,absolute ,fixed,static
- position的四个属性值: relative ,absolute ,fixed,static
- Position属性四个值:static、fixed、absolute和relative的区别和用法
- Position属性四个值:static、fixed、absolute和relative的区别和用法
- Position属性四个值:static、fixed、absolute和relative的区别和用法
- Position属性四个值:static、fixed、absolute和relative的区别和用法
- Position属性四个值:static、fixed、absolute和relative的区别和用法
- Position属性四个值:static、fixed、absolute和relative的区别和用法
- Position属性四个值:static、fixed、absolute和relative的区别和用法
- position属性:static absolute relative fixed
- position属性值static、relative、absolute、fixed作用
- CSS中的position属性值:static,relative,absolute,fixed详解
- HTML&CSS——Position属性四个值:fixed、absolute和relative的区别和用法
- android studio 传感器之获取系统传感器信息
- Lucene 近实时索引
- PhpExcel中文帮助手册|PhpExcel使用方法
- 探究startActivityForResult在singleTop和singleTask启动模式讨论
- python爬虫(5)——Mongo聚合函数
- position的四个属性值: relative ,absolute ,fixed,static
- socket编程实例TCP
- java中String、StringBuffer、StringBuilder的区别
- 2016年全新的Codeigniter教程发布啦
- MFC控件实例之颜色对话框(VS2010版本)
- Memcached安装
- shell中用bc进行浮点运算
- 图片圆角的做法
- 测试程序运行时间