定位
作用:实现网页布局(移动盒子)
分类:1 静态定位(static)
2 绝对定位(absolute)
3 相对定位(relative)
4 固定定位(fixed)
静态定位(static)
用法:position:static;
left/right/top/bottom: length....
特点: 1 静态定位不能移动盒子。
2 静态定位的盒子就是标准流下的盒子
绝对定位(absolute)(看脸型)
语法:position:absolute;
left| right| top| bottom: length...
特点:1 如果给一个元素设置绝对定位,如果该元素的父元素没有设置定位或者设置了静态定位,那么该绝对定位的元素以body标签为参照进行移动。
2 如果设置了绝对定位的元素,如果该元素的父元素设置了除静态定位以为的其他定位,那么该绝对定位的子元素是以父元素为参照进行移动。
3 绝对定位的元素脱标(不占位置)
4 绝定位可以实现模式转换
使用场景:在页面中,有盒子压盒子的布局时候,使用绝对定位。
相对定位(自恋性)
语法:position:relative;
left| right| top| bottom: length...
特点:1 相对定位的元素,只会以元素原来的位置为参照设置定位进行移动。
2 相对定位的元素没有脱标(占位置)
3 子绝父相(子元素设置绝对定位,父元素设置相对定位)
固定定位(死心眼子)
语法:position:fixed;
left| right| top| bottom: length...
特点:
1 固定定位的元素只以body标签为参照设置定位。
2 固定定位的元素不占位置(脱标
3 固定定位可以实现元素的模式转化
z-index
注意:
1 只有定位的元素才有层级关系
2 设置z-index值的时候,该元素必须是一个定位的元素。
特点:
1 通过设置z-index值可以改变元素的层级关系
2 z-index值的默认值为auto (0)
3 z-index值越大,元素越靠上显示。
4 如果z-index值相同,后面的盒子会压着前面的盒子
5 如果元素的父元素设置了z-index值,父元素z-index值越大,元素越靠上显示。
绝对定位居中
1 margin: 0 auto; 只能让标准流的盒子居中显示
2 如何让绝对定位的盒子居中显示?
1) 通过设置left:50% ; 父元素宽度的一半
2) 设置margin-left:-元素自己宽度一半;
例: .nav{
width:300px;
height:500px;
background-color:red;
position:ansolute;
margin: 0 auto;
left:50%;
margin-left:-150px;
}
标签包含规范
1 段落标签不能包含段落或者标题
2 段落标签不能包含div
3 不推荐使用行内元素包含块级元素,行内元素可以包含行内元素
网页布局规避脱标流
1 网页布局中优先考虑标准流
2 然后浮动
3 最后使用定位
4 元素要进行模式转换的时候,就是使用display属性。
vertical-align属性
作用:设置元素的垂直方向上的对齐方式。
ertical-align属性:
行内宽元素中设置垂直方向的对齐方式。
1 baseline 默认基线位置对齐
2 top 顶部对齐
3 bottom 地步对齐
4 middle 中间对齐