css3布局机制的作用: 实现元素的排列效果
默认文档流: 元素/标签默认特性,在默认文档流中进行排布
先进性行级布局,再进行列级布局
布局一:
1.display:改变元素的默认特性
inline:将块级元素转换为行内元素 div->span
block:将行内元素转换为块级元素 span->block
::before{
content:url()
}//行内元素
::after{}
::first-letter{}
inline-block:将当前元素修改为兼具行内元素和块级元素的特性
既能设置宽高属性又能和其他元素共占一行
布局二:
2.浮动布局
float:left/right/none
文字包裹图片
脱离默认文档流
浮动元素不会遮挡文字(文字从图片的左上角开始)
块级元素:
float:left
宽度和高度均有内容撑起,可以与其他元素共占一行
行内元素
float:left
可以设置宽高属性

设置浮动属性之前的效果图:

设置浮动属性之后的效果图:

浮动何时停止:
1.当遇到父级元素边框时停止浮动
2.当遇到其他浮动元素时停止浮动
清除浮动:
1.在浮动元素和非浮动元素之间添加一个块级元素,eg:h1
clear:left/right/both
2.伪元素
在浮动元素的父级元素添加::after{
display:block;
content:'';
clear:left;
}
注意布局问题
3.给浮动元素的父级元素添加:overflow:hidden;
布局三:
定位布局
position:
static:静态定位(默认文档流)
absolute:绝对定位
1.默认根据body左上角进行定位(body有8px的margin)
2.脱离默认文档流
3.不保留定位前空间
4.如果父元素有定位属性时,子元素根据父元素的左上角进行定位
relative:相对定位
1.默认根据元素本身的位置进行定位
2.不脱离默认文档流
3.保留定位前空间
fixed:固定定位
和绝对定位相似
使用了固定定位的元素,不会根据浏览器的滚动条的滚动而滚动
sticky:粘滞定位(例如左右两侧导航栏经常用到)
relative+fixed
配合属性:
left
right
top
bottom
布局四:
伸缩盒布局
display:flex;
flex-direction:
row(默认列布局)
column
column-reverse
column-reverse
flex-wrap:是否换行
wrap
none
justify-content:(x轴对齐方式)
flex-start
flex-end
center
space-around
space-between
align-items:
flex-start
flex-end
center
子元素
flex:份数
浮动属性自动失效
布局五:
栅格布局(第三方布局机制,利用浮动布局或者定位布局封装的企业级布局机制)
bootstrap
本文深入探讨CSS3的布局机制,包括默认文档流、浮动布局、定位布局、伸缩盒布局及栅格布局等核心概念。讲解了display属性如何改变元素特性,浮动布局的原理与清除方法,以及定位布局的各种类型。同时,介绍了flex布局的灵活性和栅格布局在企业级应用中的优势。

959

被折叠的 条评论
为什么被折叠?



