首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

前端必知必会-BFC案例剖析

标准文档流中盒子其实就是格式化上下文,只不过它包括块级格式化上下文以及行级格式化上下文,不同格式化上下文渲染规则不同,它决定了它元素按照什么样规则来排列,以及和其他元素关系和相互作用。...) 行级格式化上下文 IFC只针对行级元素 【Grid formatting context】(GFC) 网格布局格式化上下文 我们可以在网格容器上定义网格行和网格列 【Flex formatting...内部 Box 会在垂直方向上一个接一个放置 块级格式化上下文中相邻盒子之间垂直边距折叠 每个元素左外边距与包含块左边界相接触(从左向右),即使浮动元素也是如此。...(这说明 BFC 中子元素不会超出他包含块,而position为 absolute 元素可以超出他包含块边界) BFC区域不会与 float 元素区域重叠 计算 BFC 高度时,浮动子元素也参与计算...我们这里给父元素添加一个 overflow:hidden 这时候父元素高度就会有了。 ? 其实还有其他一些由于 BFC 引发问题,由于时间原因,这里就不一一举例了。

78930

CSS中各种格式化上下文-FC(BFC、IFC、GFC、FFC)

FC是指页面中一篇渲染区域,渲染区域内使用格式化上下文渲染规则,决定了该区域以及其子元素如何定位。当然,使用同渲染规则,也会对其他元素起到相互关系作用。主要有哪些FC?...BFC什么是BFCBlock Formatting Context,块级格式化上下文,一个独立块级渲染区域,该区域拥有一套渲染规则来约束块级盒子布局,与区域外部无关。...每个元素左外边距与包含块左边界相接触(从左到右),即使浮动元素也是如此。...(这说明BFC中元素不会超出它包含块,而position为absolute元素可以超出它包含块边界);BFC区域不会与float元素区域重叠;计算BFC高度时,浮动子元素也参与计算;BFC...就是页面上一个隔离独立容器,容器里面的子元素不会影响到外面的元素,反之亦然;BFC应用防止margin发生重叠防止发生因浮动导致高度塌陷怎么生成BFCfloat值不为none;overflow

1.6K10
您找到你想要的搜索结果了吗?
是的
没有找到

一看到 KFC、IFC、GFC 和 FFC,大家可能会想到 BFC

简单来说,就是页面中一块渲染区域,并且有一套属于自己渲染规则,它决定了元素如何对齐内容进行布局,以及与其他元素关系和相互作用。...Box 垂直方向上距离由 margin 决定。属于同一个 BFC 两个相邻 Box  margin 会发生重叠。 每个盒子左外边框紧挨着包含块左边框,即使浮动元素也是如此。...BFC 区域不会与浮动 Box 重叠。 BFC 就是页面上一个隔离独立容器,容器里面的子元素不会影响到外面的元素,反之亦然。 计算 BFC 高度时,浮动子元素也参与计算。 诶??...这好像在我们 body 元素里面,盒子天然就是这样布局规则呀? 没错,实际上在一个标准流中 body 元素就是一个天然 BFC。 那么如果其他区域,想单独设置成一个 BFC,该怎么办呢?...):翻译成中文就是“网格布局格式化上下文”,将一块区域以 grid 网格形式来格式化 FFC(Flex formatting contexts):翻译成中文就是“弹性格式化上下文“,将一块区域以弹性盒形式来格式化

1K10

掌握CSS中z-index

就像页面上x轴和y轴决定一个元素在水平和垂直方向上位置一样,z-index控制它们在z轴上相互层叠方式。...片段,如果它们位置相互重叠的话,footer将会层叠在main内容区域之上,main将会层叠在header之上。...层叠上下文 虽然使用position: absolute可以创建相互重叠元素,但我们还没有创建所谓「层叠上下文」。...层叠上下文可以通过以下任意方式进行创建: 元素position属性值为absolute或者relative,z-index值不为auto。 flex容器元素z-index值不为auto。...表面上看起来很简单,更高z-index值有更高元素层叠顺序。因此z-index: 9999 总是位于z-index: 9上面。事实果真如此吗?不幸是,实际情况要更复杂一些。

76130

Material布局原则

原则 Material Design 指南通过源自印刷领域设计元素 – 例如排版、网格、空白、缩放、颜色,和图像 – 来建立层次结构和传达所要表达含义,并专注于带给用户沉浸式体验。...Material Design 采用来自印刷设计领域工具,如基准网格和结构模版,通过重复视觉元素,结构网格以及跨平台和屏幕尺寸间距,促进不同环境下设计一致性。...应用背景类似于一张平坦、不透明质地纸片,应用行为也模仿纸片,可以改变大小、拖动及把多个纸片粘合在一起。 在本规范中,构成应用表面被成为材料或材料片。...应用之外元素,例如系统状态栏,和应用内容是分开,不会被视为材料。 更多关于材料细节,详见材料属性。 接缝 两片材料公共边缘被成为接缝。当通过接缝连接时,它们会一起移动。...两片材料接缝 阶层 两个 Z 轴位置不同材料片重叠时,会形成阶层。这两个材料会相互独立移动。 两片重叠材料构成阶层 浮动操作按钮 浮动操作按钮 浮动操作按钮是和工具栏分离圆形纸片。

1K40

CSS 基础系列:从清除浮动和margin塌陷问题谈BFC

那么为什么除了 clear:both 之外,其他方法也能清除浮动呢?因为那些方法大都触发了 BFC,而 BFC 是可以清除浮动,这个后面再介绍。...重叠元素非块状格式化上下文元素元素没有border-top设置 父元素没有padding-top值 父元素和第一个子元素之间没有inline元素分隔 b.margin-bottom 重叠元素非块状格式化上下文设置...计算规则: 子元素和父元素上边界重叠,并且以子元素 margin-top 作为父元素 margin-top 整体移动。...简单来说,它是一种属性,这种属性影响着元素定位以及与其兄弟元素之间相互作用。因为是属性,所以我们通常说“元素具有 BFC”、“元素触发了 BFC”,而不说“元素是 BFC”。...这是 W3C CSS2.1 规范中一个概念。它是页面中一块渲染区域,并且有一套渲染规则,它决定了其子元素将如何定位,以及和其他元素关系、相互作用。

2.3K10

使用了 Service Mesh 后还需要 API 网关吗?

在本文中,不可否认是站在 Istio 角度来讨论“服务网格,但如果指的是更普遍服务网格概念时,我会特别指出。 为什么会有另一个关于此话题博客? 有大量关于当前主题文章。...另一方面,有些人更接近思考方式。 然而,市场中仍存在明显困惑。 也希望看到人们如何看待不同方法之间权衡严肃讨论。例如,服务网格和 API 网关之间职责/主张存在重叠。...认为产生混淆原因如下: 技术使用上存在重叠(代理) 功能上存在重叠(流量控制,路由,指标收集,安全/策略增强等) “服务网格”可替代 API 管理理念 服务网格能力误解 一些服务网格有自己网关...如果服务网格仅仅是针对东西流量(边界内),那么为什么有一些服务网格,如 Istio 所说,有一个 Ingress 网关针对南北流量(并且是网格一部分)?...错误/速率定制响应 转换来自上游服务请求是 API 网关一项重要功能,定制来自网关本身响应也是如此

1.1K10

揭示不为人知CSS

正因为如此想试着揭示CSS这些隐藏黑科技部分,只介绍涉及你需要知道部分,并希望以逻辑顺序解释该过程,以便你更好理解CSS真正工作原理。...为什么这常常是困惑来源呢?好吧,你可能遇到过一些情况,事情似乎有些不同表现… 填充区域 当你给一个元素设置背景时候,填充不仅仅是内容区域,而且还包括内部padding区域和边框区域。 ?...从概念上来说,我们认为HTML元素是单一东西。因此很容易认为元素视觉边界等于其宽度,但情况并非如此。...很多人喜欢这个属性,如果你正在建立一个网格系统,或任何其他需要水平对齐类型布局项目,这可以是更直观工作方式。 边距重叠 当边距意外重叠当时候,真的令人很困惑,因为你不知道发生了什么。...格式化上下文 格式化上下文是关于布局。 它们是管理容器内元素布局规则,以及它们如何相互交互。

1.6K30

【面试题解】CSS布局,定位布局,浮动布局,BFC,IFC,FFC,GFC

格式上下文 Formatting context 是 W3C CSS2.1 规范中一个概念。它是页面中一块渲染区域,有一套渲染规则决定了其子元素将如何定位,以及和其他元素关系和相互作用。...BFC 布局规则例如以下: 内部盒子会在垂直方向,一个个地放置; 盒子垂直方向距离由 margin 决定,属于同一个 BFC 两个相邻 Box 上下 margin 会发生重叠; 每一个元素左边...,与包含块左边相接触(对于从右往左布局,则相反),即使存在浮动也是如此; BFC 区域不会与 float 重叠; BFC 就是页面上一个隔离独立容器,容器里面的子元素不会影响到外面的元素。...反之也如此; 计算 BFC 高度时,浮动元素也參与计算。...网格布局格式化上下文 GFC( GridLayout Formatting Contexts ),当一个元素设置为 display:grid 时候,此元素将获得一个独立渲染区域,可以在网格容器上定义网格行和列

1.5K30

给萌新Flexbox简易入门教程

虽然它们所能做事情有一些重叠,但其各自在CSS布局中有着非常特别的目的。...一般来说,flexbox在一维场景(比如,一串类似的元素)下有最佳应用,而网格是二维场景下理想布局方案(例如整个页面的元素)。...即便如此,flexbox仍可以用于整个页面的布局,这样它能为那些还不支持网格布局浏览器提供合适兼容处理。...如此设置会让它元素变成“弹性项目(flex item)”。这些弹性项目拥有一些易于使用默认属性。比如,它们被紧挨着放置,那些没有特别指明宽度元素自动占满了剩余空间。...在上面的例子中,同样把中文字水平和垂直对齐了,分别是把justify-content(水平居中)和align-items(垂直居中)都设置为center。

3.2K20

201910个最佳WordPress画廊插件

当今市场上有成千上万WordPress画廊插件,因此有时选择一个适合您插件可能会令人困惑,耗时令人沮丧。 在这篇文章中,整理了一些流行杰出插件列表,以使您决定更加容易。...正如我在简介中所述,当今市场上有成千上万WordPress画廊插件,选择适合您插件有时会造成混乱,耗时令人沮丧。 在本文其余部分,将介绍CodeCanyon上可用一些最佳画廊插件。...它甚至可以将您图像组织成一个完美平衡水平照片网格 ,从左到右吸引您眼球,就像您阅读叙述一样。 您摄影故事自然流淌,并且图像作为一个完整整体元素一起工作。...已经使用了很多年,因为它是如此坚固。 喜欢选项中频繁更新和无尽选择。 7....结论 我们已经看到,在视觉文化时代,带有图片网站获得了更多观看次数。 一个好图片库插件是一项巨大资产。 它具有旨在帮助在您网站上显示图像并增加内容吸引力功能。 回报是巨大

4.6K51

CSS中重要BFC概念

MDN上解释:BFC是Web页面 CSS 视觉渲染一部分,用于决定块盒子布局及浮动相互影响范围一个区域。...生成BFC元素元素中,每一个子元素左外边距与包含块左边界相接触(对于从右到左格式化,右外边距接触右边界),即使浮动元素也是如此(尽管子元素内容区域会由于浮动而压缩),除非这个子元素也创建了一个新...(完整说法是:属于同一个BFC两个相邻Boxmargin会发生折叠,不同BFC不会发生折叠。) 每个元素左外边距与包含块左边界相接触(从左向右),即使浮动元素也是如此。...、inline-grid、table-captain为什么可以呢?...如果有人知道为什么,请告知~ 网上帖子大多深浅不一,甚至有些前后矛盾,在下文章都是学习过程中总结,如果发现错误,欢迎留言指出~ 参考: 1. 对BFC理解 2.

1.4K11

项目优化之DrawCall优化(Unity3D)

目标 学习怎么减少Draw Call,让你游戏运行更加流畅 尽管我图形界面如此简单,为什么游戏还是那么延迟呢? 为什么游戏加载那么长时间? 为什么界面间切换如此慢?...为什么游戏FPS如此低? 已经把所有的(Texture)纹理和(Sprite)精灵都压缩了!为什么还是那么延迟? 为什么游戏仍然崩溃? 为什么在玩游戏时,电池消耗如此快?...这条命令只指定一个网格(Mesh)是否被渲染/绘不绘制任何材质(Material)信息(伙计,再忍受一段时间,往下阅读将会变得更简单,保证)。...在获得命令之后,GUP获得了渲染状态值(材质(Material)、纹理(Texture)、着色器(Shader)等等),在你屏幕中所有的顶点数据通过一些代码逻辑转换成漂亮像素(当然希望它是漂亮...这便优化了2倍性能!!也减少了GPU负担!! 想象一下现实世界中,由500降到200(下降两倍意思)这将会是一个很大提升。特别是对于手机来说。 这便给予渲染有了巨大提升。

1.3K50

JavaScript 编程精解 中文第三版 十六、项目:平台游戏

并不希望任何人把编写游戏作为自己事业。就像音乐产业中,那些希望加入这个行业热忱年轻人与实际的人才需求之间存在巨大鸿沟,也因此产生了一个极不健康就业环境。...该游戏包含一个固定背景,使用网格方式进行布局,可可移动元素则覆盖在背景之上。网格元素可能是空气、固体或岩浆。可可移动元素是玩家、硬币或者某一块岩浆。...因为一切最开始都可以在网格,所以我们可以使用大型字符串,其中每个字符代表一个元素,要么是背景网格一部分,要么是可移动元素。...这非常符合关卡中grid属性结构。网格每一行对应表格中一行(元素)。网格每个字符串对应表格单元格()元素类型名。...比较困难一部分是处理元素之间相互作用。当玩家撞到墙壁或者地板时,不可能简单地直接穿越过去。游戏必须注意特定动作会导致两个对象产生碰撞,并需要采取相应措施。

1.7K10

CSS 面试要点:盒模型

dom.getBoundClientRect().width/height 取得最终渲染后宽高,还可以取得相对于视窗上下左右距离 # 边距重叠 两个垂直外边距相遇时,会发生折叠,合并后外边距高度等于两折叠外边距中最高那个...# 使用 BFC 解决边距重叠问题 块格式化上下文(Block Formatting Context,BFC) (opens new window) 是 Web 页面的可视 CSS 渲染一部分,是块级盒子布局过程发生区域...BFC 决定了元素如何对其内容进行定位,以及与其他元素关系和相互作用。当设计到可视化布局时候,BFC 提供了一个环境,HTML 元素在这个环境中按照一定规则进行布局。...# BFC 渲染规则 BFC 元素垂直方向边距会发生重叠,属于不同 BFC 外边距不会发生重叠 BFC 区域不会与浮动元素布局重叠 BFC元素是一个独立容器,外面的元素不会影响里面的元素,里面的元素也不会影响外面的元素...值为 flex 或 inline-flex 元素直接子元素),如果它们本身既不是 flex、grid 也不是 table 容器 网格元素(display 值为 grid 或 inline-grid

54460

关于计算流体力学,你知道多少?

这些方法针对不同角度进行研究,相互补充。...与试验相比,计算流体力学具有对于参数没有什么限制,费用少,流场无干扰特点。出于计算流体力学如此优点,我们选择它来进行模拟计算。...然而,这些网格块可能是对接,连续,非连续或者重叠网格必须满足最低网格质量要求,如正交性(尤其是在边界上),相对网格间距(最大值不能超过15%到20%),网格扭曲率等等。...实施过程是把所计算区域划分成许多许多互不重叠子区域,确定每个子区域节点位置和该节点所代表控制体积。 节点是指需要求解未知物理量几何位置、控制体积、应用控制方程或守恒定律最小几何单位。...缺点是内存和计算量巨大,并行不如有限差分法和有限体积法直观。 有限体积法:适用于流体计算,可以应用于不规则网格,适用于并行。但是精度基本上只能是二阶。

92220
领券