一,定位
定位:将制定元素放到页面任意位置
position
:static(默认值),没有定位,
1)元素出现在正常文档流中(忽略top,left,right,bottom,z-index声明)
2)当position非static时可以通过top ,left,right,bottom 四个属性来设置元素的偏移量,
:relative(相对定位),
1)当只设置元素的相对定位而不设置偏移量时,元素不会发生任何变化
2)相对定位是相对于元素在文档流中原来的位置定位
3)相对定位不会脱离文档流,它原来的位置还在
4)相对定位会使元提升一个层级(会盖住其它元素)
5)相对定位不会改变元素性质(内联元素依旧是内联,其宽高依旧不可设置,块元素还是块元素)
:absolute(绝对定位)
1)绝对定位会使元素脱离文档流
2)绝对定位后不设置偏移量,则元素位置不会发生变化
3)绝对定位是相对浏览器窗口进行定位的(浏览器窗口默认有8px,而绝对定位的原点是去掉这8px的)
如果所有的祖先元素都没有开启定位,则会相对于浏览器窗口进行定位(一般开启子元素绝对定位,都会给父元素相对定位)
4)绝对定位会使父元素提升层级
5)绝对定位会改变元素的性质,内联元素进行绝对定位后宽高可设(块)
:fixed(固定定位)
固定定位也是一种绝对定位,固定定位是相对浏览器窗口定位,会固定在浏览器窗口某个位置,不会随滚动条滚动,IE6不支持固定定位
二,层级
1)如果定位元素的层级是一样的,则后解析的会盖住前面的
2)z-index:设置元素层级,层级越高越优先显示,没有开启定位的元素不能使用z-index
3)父元素的层级再高也会盖住子元素
透明背景:
opacity:0-1,0完全透明。//IE8及以下不支持opacity
//兼容IE8
filter:alpha(opacity=50)