当前位置: 首页 > 面试题库 >

块级元素与块格式化上下文

乌灿
2023-03-14
问题内容

作为块级元素的HTML元素和形成块格式上下文的HTML元素之间有什么区别?

HTML元素既可以是块级元素又可以形成块格式化上下文吗?

作为块级元素是否意味着它形成了一个块格式化上下文,或者相反,形成一个块格式化上下文就意味着它必须是一个块级元素吗?

同样,这如何转换为内联元素和形成内联格式上下文的元素?


问题答案:

请注意,此答案使用术语“盒子”代替“元素”,因为CSS区分了元素和盒子。出于此答案的目的,HTML元素由CSS布局中的单个框表示。实际上,一个元素可以生成任意数量的框(或者根本不生成框display: none),但这超出了此问题的范围。

HTML元素既可以是块级元素又可以形成块格式化上下文吗?

是。CSS2.1的第9.4.1节中陈述了块状盒子(即块级块状容器盒子)可以建立BFC 的标准,即:

  • 漂浮
  • 绝对定位的元素,以及
  • “阻止具有“可见”以外的“溢出”的盒子(除非该值已传播到视口)(直接从规范中引用)

作为块级元素是否意味着它形成了一个块格式化上下文,或者相反,形成一个块格式化上下文就意味着它必须是一个块级元素吗?

都不:

  1. 上面的答案暗示并非所有的块框都建立块格式化上下文。具有CSS属性display: block; overflow: visible; float: none; position: static(或position: relative)的阻止框不会建立BFC。
  2. 相反,内联块是建立BFC的框的示例,但它本身是内联级别的,而不是块级别的。

同样,这如何转换为内联元素和形成内联格式上下文的元素?

内联框是内联级别的框,其内容直接参与其父级的内联格式设置上下文中(请参见9.4.2节)。值得注意的是, 唯一 可以建立内联格式上下文的框是块容器框。

内联框和内联块之间的区别在于,内联块的内容参与它所建立的BFC,而不是父级IFC。相反,只有内联块本身会参与其父级的IFC。



 类似资料:
  • 块级框参与的格式化上下文,称作块格式化上下文(Block Formatting Contexts,简称BFC),它规定了内部的块级框如何排列。 块格式化上下文看似抽象,其实比较简单,它实际上就是页面上的一个块级元素,只是在布局上,该元素内部的元素和外部的元素相互独立,互不影响。 通俗的讲,就是在创建了块格式化上下文的元素中,其子元素都会按照块格式化上下文的规则排列自己。以下元素都会自动为其内容创建

  • 在盒模型中,一切皆为框,即页面上的每个元素会生成一个矩形框。默认情况下,一个元素的类型,决定了该元素生成框的类型。块级元素生成块级框,行内级元素生成行内级框,没有被任何元素所包含的文本生成匿名框。 也可以通过元素的 display 属性,来改变框的显示类型。可以把块级元素的 display 属性设置为 inline 或 inline-block,让它生成行内级框;也可以把行内块级元素的 displ

  • 本文向大家介绍块级元素不能包含其他块级元素有那些?相关面试题,主要包含被问及块级元素不能包含其他块级元素有那些?时的应答技巧和注意事项,需要的朋友参考一下 嵌套规则: 块级元素可以包含内联元素或某些块级元素,但内联元素不能包含块级元素,它只能包含其它内联元素。 块级元素不能放在p里面。 有几个特殊的块级元素只能包含内联元素,不能包含块级元素。如h1,h2,h3,h4,h5,h6,p,dt li内可

  • 块元素是和para同级的元素,它们比较复杂,后面会分别介绍 类别 元素 说明 列表 calloutlist   bibliolist 书目列表 glosslist 词汇列表 itemizedlist 无序列表 orderedlist 有序列表 segmentedlist 成分列表 simplelist 简单列表 variablelist 定义列表 告示 caution 小心 important 重

  • 本文向大家介绍BFC(块级格式化上下文,用于清楚浮动,防止margin重叠等)相关面试题,主要包含被问及BFC(块级格式化上下文,用于清楚浮动,防止margin重叠等)时的应答技巧和注意事项,需要的朋友参考一下 参考回答: 直译成:块级格式化上下文,是一个独立的渲染区域,并且有一定的布局规则。 BFC区域不会与float box重叠 BFC是页面上的一个独立容器,子元素不会影响到外面 计算BFC的

  • 问题内容: 举个例子 是在HTML5有效吗? 问题答案: 是的,您编写的内容在HTML5中有效,但并非所有内联元素,我认为这只是适用于.. 参考:HTML5中的“块级”链接 提示:如果使用此设置,则to 或可能会有意外的视觉样式结果 更新: 对于“默认样式可能会导致混淆”的其他“内联代码块”组合,则“不允许”使用-说明在这里 ### 默认样式可能导致混淆的情况 某些元素具有默认样式或行为,这些默认