视觉格式化模型

css入门之视觉格式化模型 文档:Visual formatting model - CSS: Cascading Style Sheets | MDN 1.简介 Visual Formatting Model描述了用户代理如何获取文档树,并显示它。 文档树中的每个元素根据盒子模型生成零个或多个盒子。 这些框的布局受以下约束: 盒子尺寸和类型。 定位方案(正常流动、浮动和绝对定位)。 文档树中元素之间的关系。 外部信息(视口大小、图像的内在尺寸等)。 2.视口 视口是浏览器窗口的查看区域。 当视口大 阅读详情

视觉格式化模型

规定页面中多个盒子的排列规则,盒子该怎么摆放、渲染成什么样子,盒模型也包含在这个规则里面。

盒模型:规定单个盒子的规则(盒子有哪些部分组成?行盒是怎么样的,快盒是怎么样的),视觉格式化模型会根据CSS盒子模型将文档中的元素转换为一个个盒子。

该模型会根据盒子的包含块(containing block)的边界来渲染盒子。通常,盒子会创建一个包含其后代元素的包含块,但是盒子并不由包含块所限制,当盒子的布局跑到的外面称为溢出(overflow)。

视觉格式化模型,大体将页面中盒子的排列分为三种方式:
常规流、浮动、定位。

包含块

表示元素尺寸计算和位置的参照物(它的位置是相对于谁摆放的,它的尺寸大小相当于谁计算的,谁就是包含块),

元素的尺寸及位置的计算:常常会受到它的包含块所影响。对于一些属性,例如:width、height、padding、margin、绝对定位元素的偏移值(position设置为absolute或fixed等),当我们赋予百分比值时,这些值的计算值,就是通过元素的包含块计算得来的。

确定包含块:
确定一个元素的包含块过程完全依赖于这个元素的position属性:
1.如果position属性为static、relative或sticky,包含块可能由它最近的祖先块元素(比如inline-block,block或list-item元素,table,td单元格)的内容区的边缘组成,也可能会建立格式化上下文(比如说 a table container, flex container, grid container, 或者是 the block container 自身)。
2.如果postion属性为absolute,包含块就是由它最近的position的值不是static(也就是值为fixed、absolute、realative或sticky的祖先元素的内容区的边缘组成)。
3.如果position为fixed,在连续媒体的情况下包含块是viewport,在分页媒体下包含块是分页区域(page area)。
4.如果 position 属性是 absolute 或 fixed,包含块也可能是由满足以下条件的最近父级元素的内边距区的边缘组成的:

  1. transform 或 perspective 的值不是 none(也就是position值不是static并且transform 或 perspective 的值不是 none)
  2. will-change 的值是 transform 或 perspective
  3. filter 的值不是 none 或 will-change 的值是 filter(只在 Firefox 下生效).
  4. contain 的值是 paint (例如: contain: paint;)

例子:
em的包含块是div

        em{
            border: 2px solid blanchedalmond;
            margin-left: 50%;
        }
        div{
            width:50%;
            height: 50px;
            background: red;
        }

        span{
            border:2px solid greenyellow;
        }
		
	    <div>
	        <span>
	            <em>2</em>
	        </span>
	    </div>

为什么em的包含块是div不是span,个人认为行内元素在不定位的情况下不能作为包含块,因为span的width和height不能设定,所以em的margin的百分数值是相对于div元素计算的不是相当于span元素计算的。
在这里插入图片描述

看em的margin-left:50%;是相对于div.width的50%。

案例2:
table同是td的包含块。

	<div>
		<table>
			<tr><td>hi</td><tr>
		</table>
	</div>

至于为什么我也不知道,规范并没有将tr设置为包含块。

参考mdn:
https://developer.mozilla.org/zhCN/docs/Web/CSS/Visual_formatting_model
https://developer.mozilla.org/zh-CN/docs/Web/CSS/Containing_block#%E6%A0%B9%E6%8D%AE%E5%8C%85%E5%90%AB%E5%9D%97%E8%AE%A1%E7%AE%97%E7%99%BE%E5%88%86%E5%80%BC

https://baike.baidu.com/item/%E6%96%87%E6%A1%A3%E6%B5%81/1226695?fr=aladdin

Maya ACES工作流程配置(Arnold 及 RedShift 贴图配置规范-还原出SP-Aces流程下贴图正确的效果) PS还原Aces流程下渲染的图 *如果使用SP,项目工程如果新建的时候设置的就是Aces的流程的话,按规范正常导出即可,贴图会带上相对应的后缀,然后贴图导入材质球的时候会根据后缀自动设置相对应的色彩空间;**万一不是,就自己手动设置一下对应的色彩空间即可;然后点击选择当前的或者选择全部导入的贴图,点击右下角后,开始转换;我复制了一下,一个默认没有LUT的效果,然后另外一个是加载2个LUT后的还原效果,和渲染的效果应该是没有区别的,至少我没有看出明显的区别;把需要转换的贴图拖拽到左侧,然后右面选择需要转换到的相对应的色彩空间;... 阅读详情

相关推荐

手把手教你获取全国街道级GeoJSON数据:前端地图开发必备技巧

本文详细介绍了获取全国街道级GeoJSON数据的多种方法,从前端地图开发的实际需求出发,涵盖了免费获取省市县级数据的工具如阿里云DataV.GeoAtlas和HashTang,以及进阶的街道级数据获取方案,包括使用Bigemap GIS Office和专业数据采购。文章还提供了数据处理与优化技巧,帮助开发者高效使用GeoJSON数据进行地图可视化。

weixin_29053383的博客 289

Css视觉格式化模型

css基础:盒模型、文档流、浮动、定位

qq_47218954的博客 594

快速配置ORCAD导出智能PDF原理图

在OrCAD 中导出类似Altium Designer的智能PDF(即交互式PDF);

QingNing3028的博客 3951

css 视觉格式化模型 (visual formatting model )

为什么需要了解视觉格式化模型? 解释一些css效果,下面的两个问题? 下面child1:一般为了水平居中会在水平方向上设置auto,这里在垂直方向上设置auto,会导致垂直居中的效果呢? 下面两种方式一种是基于position,一种基于margin。可以观察chorme浏览器检查元素的不同 水平垂直居中 <html lang="en"> <head> <meta charset="UTF-8"> <title>Docu..

小蚂蚁的世界 1117

XGBoost特征重要性为0的问题:深度解析与应对策略

在机器学习领域,XGBoost(Extreme Gradient Boosting)作为一款高效且强大的集成学习算法,已经被广泛应用于各类预测任务中。然而,在实际应用过程中,许多数据科学家和工程师们遇到了一个令人困惑的现象——某些特征的重要性值为0。这不仅影响了模型的解释性,还可能导致特征选择过程中的误判。本文将深入探讨这一问题,分析其背后的原因,并提供相应的解决方案。在深入探讨特征重要性为0的问题之前,我们首先需要了解XGBoost是如何计算特征重要性的。XGBoost提供了三种常见的特征重要性计算方法:

cda2024的博客 1706

Sentinel2 哨兵2数据下载方法(USGS)-史上最全讲解

本文讲述了从USGS官网下载Sentinel2的方法。主要包括USGS官网的注册和下载流程,以及选定研究区中所出现的问题、解决办法。

xiatiandexia123的博客 6万+

CSS 视觉格式化模型

理解视觉格式化模型是掌握 CSS 布局的核心,现代布局方案(Flexbox/Grid)虽简化了开发,但底层仍遵循此模型规则。

liangshanbo1215的博客 1156

VsCode安装和配置c/c++环境(超完整,小白专用)

1. vsCode配置C/C++环境 1. vsCode下载和安装 1. 下载Microsoft vsCode [vsCode在这里插入图片描述官网下载: https://code.visualstudio.com/ 2. 安装vsCode 3. 下载中文插件 我这边已经下载过,刚卸载但是没有重启编译器,所以界面显示了中文 2. MinGW编译器下载和配置 1. 下载MinGW 在线安装——下载MinGW-W64-install.exe(速度慢) 下载压缩包——×86_64-posix-

黄化的多多 60万+

视觉格式化模型(一,常规流)

常规流是视觉格式化模型三种方式之一,它也叫做常规流,文档流等。所有元素默认情况下都属于常规流布局。 总体规则:块盒独占一行,行盒水平依次排列 包含块(container block):每个盒子都有它的包含块,;块决定了盒子的排列区域:一般盒子的包含块为其父元素的内容盒。 块盒 1,每个块盒的总长度,必须等于包含块的宽度width的默认值为auto(将剩余空间吸收掉),margin的取值也可以是auto,默认值为0。但是两个都为auto是,width吸收能力强于margin。 如果width,mar

m0_64890812的博客 189

C-08-实战:搭建一个AI客服机器人(接入微信企微)

客服是一人公司最大的时间杀手。本文教你搭建一个AI客服机器人,能自动回答80%的常见问题,只把复杂问题转给人工。含微信公众号和企业微信接入完整代码。

Johnny2004的专栏 88

CKS-CN考试之路----04

根据上面信息我们知道,这个pod运行在default命名空间下,pod名字为cpu-77cd5ddcbf-bvb8w。可以从/etc/falco/falco_rules.yaml中获得相关内容,大概在文件的460行左右.编辑/etc/falco/falco_rules.local.yaml。7c688a8bfd69即是我们想要获得的docker id。将行为不当 Pod 的 Deployment 缩放为零副本。根据我们刚才定义的rule生成报告。访问/dev/mem 的 Pod。那么如果考试记不住怎么办?

Q先生 603

视觉格式化模型(Visual formatting model)

在可视化格式模型(Visual formatting model)当中,文档树中的每个元素根据其盒模型生成0个或多个盒.这些盒的布局由(以下因素)控制: 盒尺寸与类型 定位模式(常规流,浮动与绝对定位) 文档树中元素间的关系 外部信息(例如,视口大小,内含图片的固定尺寸等等) 包含块(containing blocks) 在 CSS2...

weixin_33711641的博客 270

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

揭开 CSS 视觉格式化模型的奥秘

了解一下 CSS 视觉格式化模型,其决定元素布局、显示顺序及响应性等,影响网页性能与用户体验。

weixin_52648900的博客 1554

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

CSS视觉格式化模型

CSS 视觉格式化模型 CSS 视觉格式化模型是用来处理在视觉媒体上显示文档时使用的计算规则。 视觉格式化模型会根据CSS盒子模型将文档中的元素转换为一个个盒子,每个盒子的布局由以下因素决定: 1.盒子的尺寸:精确指定、由约束条件指定或没有指定 2.盒子的类型:行内盒子(inline)、行内级盒子(inline-level)、原子行内级盒子(atomic inline-level)、块盒子(blo...

yangyang的专栏 511

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

css视觉格式化模型

css视觉格式化模型

m0_61672533的博客 807

CSS-视觉格式化模型

MDN:视觉格式化模型链接地址

xiongxiaolin123的博客 235

视觉格式化模型中的各种框

首先,感谢博主doyeo(CSS探索之旅)!转载自doyeo(CSS探索之旅)的视觉格式化模型中的各种框,具体戳这里-&gt;视觉格式化模型中的各种框在聊这个话题之前,我们可能得先简单说说 视觉格式化模型 这个概念。视觉格式化模型 的全称是 Visual formatting model,它被用来描述用户代理(比如浏览器)在图形媒体下如何处理文档树。在 视觉格式化模型 中,每个文档树的元素会根据框...

Syleapn的博客 1120

CSS—BFC&视觉格式化模型

目录 一、BFC 二、视觉格式化模型 一、BFC BFC全称Block Formatting Context,翻译为块格式化上下文,是由CSS2.1规范定义的一个关于CSS渲染定位的概念。BFC是页面上一个隔离的独立容器,容器里面的子元素不会影响到外面元素,反之亦然。 如下所示为,触发一个盒子的bfc,将其转化为bfc元素的方法。 方法一: position:absolute/fix...

雷雨天的雷胖子 386

CSS核心:框模型与视觉格式化模型[总览]

视觉类型的媒体 根据CSS的视觉格式化模型(Visual formatting model)的规则来处理文档树中的元素,从而将(X)HTML转化成制作者设计的样子。我曾在《别具光芒:CSS属性、浏览器兼容与网页布局》一书中,讲解过这些概念,但是很多读者反映内容比较晦涩难懂,所以,我再次重新尝试,把这部分内容重新来编排一下,看看是否能把这些重要的内容讲得更易懂一些。

猫沙盆 4087

CSS中的视觉格式化模型

视觉格式化模型 1. 简介 在视觉格式化模型中,文档树中的每个元素都将会根据盒模型产生零到多个盒子。这些盒子的布局由如下因素决定: 盒子的尺寸和类型 定位策略(正常文档流,浮动或者绝对定位) 和文档树中其他元素的关系 额外的信息(比如视口的大小,图片的原始尺寸等) 1.1 视口(viewport) 连续媒体(continuous media)的UA(user a

meimeizhuzhuhua的博客 373

深入理解 CSS 视觉格式化模型:网页布局的核心机制

CSS视觉格式化模型是浏览器将DOM元素转换为可视化呈现的核心规则系统。它定义了盒子生成、定位方案和格式化上下文等关键概念,包括块级/行内盒子、常规流/浮动/绝对定位等布局方式,以及BFC、IFC等独立渲染区域特性。模型还涉及层叠上下文决定元素Z轴顺序。现代CSS引入Flex和Grid布局扩展了传统模型,通过创建FFC和GFC提供更强大的布局能力。理解这些原理有助于解决外边距合并、浮动清除等常见布局问题,是掌握网页布局的基础。

Yue 769

CSS(六)——视觉格式化模型(常规流)

本篇笔记在记录过程中可能比较杂乱,因为在这部分知识点本身较为复杂。 严格来说,CSS作为给页面元素添加样式的语言,严格来说只有三个方面是一定要吃透的: 属性值的计算过程(其中包括层叠、继承); 盒模型(行盒、块盒以及行块盒); 视觉格式化模型(布局规则)。

老程的小白博客空间 389
上一篇: 权重的计算
下一篇: 块级格式化上下文规则(常规流BFC IFC)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值