HTML与CSS:BFC、IFC理解及清除浮动、盒模型和选择器优先级
需积分: 9 145 浏览量
更新于2024-08-05
收藏 52KB MD 举报
"HTML & CSS 知识点概览"
在HTML和CSS的世界里,理解和掌握BFC(Block Formatting Context)和IFC(Inline Formatting Context)是构建页面布局的基础。BFC和IFC定义了元素如何在页面上排列和交互。
**BFC(块级格式化上下文)** 是一种布局概念,主要涉及以下规则:
1. BFC中的子元素沿垂直方向堆叠,间距由它们的margin决定。
2. 同一BFC内的相邻盒的margin会发生层叠。
3. 元素的左边与包含它的BFC的左边接触,即使有浮动元素也不会受影响。
4. BFC区域不会与浮动元素重叠。
5. BFC是一个独立的容器,其内部元素不会影响外部元素,反之亦然。
6. 计算BFC高度时,浮动元素也会被纳入考虑。
触发BFC的条件包括:
1. 根元素
2. 浮动元素(float属性不为none)
3. 绝对或固定定位元素(position属性为absolute或fixed)
4. 显示模式为inline-block、table-cell、table-caption或flex的元素
5. overflow属性不为visible
**IFC(行级格式化上下文)** 规定了元素在水平方向上的布局,主要包括:
1. 内部元素水平排列,当一行无法容纳时自动换行。
2. IFC的高度由其中最高的元素决定。
**CSS 清除浮动** 是解决“浮动元素导致的父元素高度塌陷”问题的关键。常见方法包括:
1. 父元素设定固定高度并手动扩展。
2. 在浮动元素后面添加空标签,并设置`clear:both`。
3. 父元素设置`overflow:hidden`。
4. 使用伪类`:before`和`:after`及`zoom:1`来创建新的BFC(双伪元素法)。
**盒模型** 描述了元素的尺寸计算,分为两种:
1. IE盒模型(怪异盒模型,border-box):盒子宽度包括content、padding和border。
2. W3C盒模型(标准盒模型,content-box):盒子宽度仅由content决定。
**CSS选择器优先级** 规定了不同类型的CSS选择器的权重:
1. `!important`声明 > 内联样式 > ID选择器 > 类/属性/伪类 > 元素/关系选择器。
**CSS三列布局** 通常可以实现各种布局效果,如左右两列固定宽度,中间列自适应。通过`float`、`display`属性等技术可以轻松实现这一布局。
例如,使用`float`实现这种布局,左侧和右侧的div分别设置`float:left`和`float:right`,中间的div默认占据剩余空间。如果需要更复杂的布局,还可以使用Flexbox或Grid布局。
2021-03-07 上传
2018-06-07 上传
2021-04-16 上传
2011-03-28 上传
2014-11-30 上传
2011-04-10 上传
2009-05-13 上传
2012-10-24 上传
2011-02-04 上传
罗依琳
- 粉丝: 0
- 资源: 1
最新资源
- STM32编程参考手册(中文)
- QT Windows OpenSource 版本的安装指南
- Tcl教程[Edit by roben_chen]
- 屏蔽ctrl+alt+del的参考
- 高质量C语言编程指南
- 计算机常见故障速查手册
- 用c++实现学生成绩管理系统
- 嵌入式下C编程(PDF)
- 嵌入式C精华宝典大全
- 函数参考手册(PDF版)
- Effective C++ 侯捷翻译的,c++经典书籍,pdf版的,不是图片的,可以复制,查找
- 网上购物系统论文 ASP+ACCESS
- Web_Service开发指南_2.3.1.pdf
- 国际电子商务的发展状况和我国的应对策略
- 编程之禅--绝对经典
- Eclipse中文教程