CSS——position
position是指元素的定位方式,有:static、absolute、fixed、relative、inherit 5种。
static | 默认,布局排版方式按照HTML代码的顺序布局。 |
absolute | 绝对定位,相对与祖先div 中非static的元素定位。 |
fixed | 绝对定位,脱离HTML文档流,默认位置由后续元素占用,自身相对于浏览器窗口布局定位。由于与其他元素的位置冲突,应该注意定义 z-index 属性设置 |
relative | 相对定位,相对于自身在HTML文档中的位置进行定位 |
inherit | 和父级div的position相同 |
http://www.cnblogs.com/bokin/archive/2012/12/07/2807322.html
http://blog.csdn.net/tomatozq/article/details/7178144
http://blog.sina.com.cn/s/blog_4bcf4a5e010008o0.html
http://zh.learnlayout.com/inline-block.html
http://www.cnblogs.com/dolphinX/p/4071725.html
http://www.cnblogs.com/yexiaochai/p/4074624.html
http://www.cnblogs.com/polk6/archive/2013/07/26/3214847.html
http://www.chinaz.com/design/2010/1229/151993.shtml
http://www.cnblogs.com/oer2001/archive/2013/08/03/3235294.html
http://www.cnblogs.com/jenney-qiu/archive/2012/03/28/2421819.html
http://www.cnblogs.com/bokin/archive/2012/12/14/2816864.html
1、
为什么行内元素(例如<a>)设置float之后才能用width调整宽度?
因为只有块元素才会有物理属性,在css世界里边,有三种形态的东西,
1. 块元素。 特性:有物理属性,width,height写值起作用,而且要占据一行。
2. 内联元素。 特性:没有物理属性。但是margin,padding值有用。不占据一行,后边可以有兄弟元素。
3. 即是块又是内联,根据兄弟兄弟元素决定。
为什么是float之后才会有物理属性,这就是块与内联元素相互转化的问题。
块元素 -> 内联元素: display:inline;
内联元素 -> 块元素: display:block;
float就是隐性的把内联元素转化为块元素,这是对内部的特性就是有物理特性,但是他不占据一行。对外是内联元素的属性。他有个坏处就是会影响兄弟元素。相当于:display:inline-block;
那为什么不直接display:inline-block;因为这个玩艺在ie6下有几个px的bug。
CSS中margin-top/bottom(padding-top/bottom)百分比为何以最近的块级祖先元素的宽度而不是高度作计算?