内容简介:FC(Formatting Context)格式化上下文,其实指的是一个渲染区域,拥有一套渲染规则,它决定了其子元素如何定位,以及与其他元素之间的关系和相互作用。Formatting context是W3C CSS2.1规范中的一个概念。它是页面中的一块渲染区域,并且有一套渲染规则,它决定了其子元素将如何定位,以及和其他元素的关系、相互作用。 格式化上下文指的是初始化元素定义的环境。包含两个要点,元素定义的环境和初始化。 在 CSS 中,元素定义的环境有两种,一种是块格式化上下文( Block format
FC(Formatting Context)格式化上下文,其实指的是一个渲染区域,拥有一套渲染规则,它决定了其子元素如何定位,以及与其他元素之间的关系和相互作用。
- 块级格式化上下文( Block formatting contexts )( BFC )
- 行内格式化上下文( Inline formatting contexts ) ( IFC )
- 自适应格式化上下文( Flex Formatting Contexts )( FFC )(CSS3新增)
- 网格布局格式化上下文( GridLayout Formatting Contexts )( GFC )(CSS3新增)
Formatting context是W3C CSS2.1规范中的一个概念。它是页面中的一块渲染区域,并且有一套渲染规则,它决定了其子元素将如何定位,以及和其他元素的关系、相互作用。 格式化上下文指的是初始化元素定义的环境。包含两个要点,元素定义的环境和初始化。 在 CSS 中,元素定义的环境有两种,一种是块格式化上下文( Block formatting context ),另一种是行内格式化上下文( Inline formatting context )。 这两种上下文定义了在 CSS 中元素所处的环境,格式化则表明了在这个环境中,元素处于此环境中应当被初始化,即元素在此环境中应当如何布局等。
最常用的布局:
- 弹性盒子布局
- 普通文档流布局
移动端开发可以优先考虑flex布局
BOX:CSS布局的基本单位
Box 是 CSS 布局的对象和基本单位, 直观点来说,就是一个页面是由很多个 Box 组成的。元素的类型和 display 属性,决定了这个 Box 的类型。 不同类型的 Box, 会参与不同的 Formatting Context(一个决定如何渲染文档的容器),因此Box内的元素会以不同的方式渲染。让我们看看有哪些盒子: a:block-level box:display 属性为 block, list-item, table 的元素,会生成 block-level box。并且参与 block fomatting context; c:inline-level box:display 属性为 inline, inline-block, inline-table 的元素,会生成 inline-level box。并且参与 inline formatting context;
1.2 弹性盒子布局
弹性盒子(Flex Box) 弹性布局
Flex是Flexible Box的缩写,意为”弹性布局”,用来为盒状模型提供最大的灵活性。
flex布局示例
<div style="display: flex"> <div style="flex: 3"></div> <div style="flex: 1"></div> </div> 复制代码
以下为外层容器6大属性:
- flex-direction
- flex-wrap
- flex-flow
- justify-content
- align-items
- align-content
概念: 主轴 交叉轴
1.3 普通文档流布局规则
- 浮动的元素是不会被父级计算高度
- 非浮动元素会覆盖浮动元素的位置
- margin会传递给父级
- 两个相邻元素上下margin会重叠
盒模型
盒模型的组成大家肯定都懂,由里向外content,padding,border,margin。 盒模型是有两种标准的,一个是标准模型,一个是IE模型。
/* 标准模型 */ box-sizing:content-box; /*IE模型*/ box-sizing:border-box; 复制代码
盒模型的问题,BFC来处理。
1.4 块格式化上下文 BFC
具备BFC特性的元素, 就像被一个容器所包裹, 容器内的元素在布局上不会影响外面的元素。
解决了什么问题:
- 可以解决元素塌陷、折叠等问题
- 自适应两栏布局
- 主要是父子、兄弟之间的布局关系
触发BFC的方式:
- overflow: hidden; 可以清除子元素浮动,Ps“你乱动我就消灭你”
- 其他的包括:float不为none时,position的值不为static或releative
常用布局实例
移动端:
- 粘连布局(footer 底部固定布局)
- 单列块容器边距差异布局
- 双飞翼布局
pc端:
- 多列自适应布局
- 圣杯布局
- 等高布局
2.图文排版
1. 文字和图片同一中间水平线
<img id='close' style='vertical-align:middle;' src='/images/declear.gif' /> 复制代码
3. sass 和 less区别是什么?
- Sass变量必须是$开始,而Less变量必须使用@符号开始 。
- Sass是基于 Ruby 的语言,功能更加强大
问答
什么是响应式布局? 三种基本的布局类型,分别是固定布局、流式布局和弹性布局
垂直水平居中
- 使用Flex
只需要在父盒子设置:display: flex; justify-content: center;align-items: center;
- 使用 CSS3 transform
父盒子设置:display:relative Div 设置: transform: translate(-50%,-50%);position: absolute;top: 50%;left: 50%;
- 使用 display:table-cell 方法
父盒子设置:display:table-cell; text-align:center;vertical-align:middle; Div 设置: display:inline-block;vertical-align:middle;
- 3.1 浮动(float)
- 3.2 层叠(z-index)
- 3.3 溢出(overflow)
- 3.4 resize(notIE)(CSS3)
- 3.5 分栏(column)(IE10+ notOperaMini)(CSS3)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- Flexbox 布局完全指南(图解 Flexbox 布局详细教程)
- Grid 布局完全指南
- css经典布局系列三——三列布局(圣杯布局、双飞翼布局)
- 四种方法实现──三栏布局(圣杯布局、双飞翼布局)
- 浅谈CSS三栏布局(包括双飞翼布局和圣杯布局)
- css经典布局——圣杯布局
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
计数组合学(第一卷)
斯坦利 / 付梅、侯庆虎、辛国策 / 高等教育 / 2009-6 / 42.00元
《计数组合学(第1卷)》是两卷本计数组合学基础导论中的第一卷,适用于研究生和数学研究人员。《计数组合学(第1卷)》主要介绍生成函数的理论及其应用,生成函数是计数组合学中的基本工具。《计数组合学(第1卷)》共分为四章,分别介绍了计数(适合高年级的本科生),筛法(包括容斥原理),偏序集以及有理生成函数。《计数组合学(第1卷)》提供了大量的习题,并几乎都给出了解答,它们不仅是对《计数组合学(第1卷)》正......一起来看看 《计数组合学(第一卷)》 这本书的介绍吧!