7.基本视觉格式化

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

正常流:大多数元素都在正常流中,浮动或定位元素就不在正常流中了。

完整盒模型图,见P179 记住height width是不包含padding更别说说border了 

水平格式化

水平格式化:width影响的是内容区的宽度,而不是整个可见的元素框。

<p style="width:200px;padding:10px;margin:20px;">可见元素框的宽度是220px,整个元素框的宽度为260px</p>

水平属性

margin-left、border-left、padding-left、width、padding-right、border-rigth、margin-right

元素框和其父元素的width相同

只有margin-left 、width 、margin-right这个可以设置为auto

width固定margin-left margin-right为auto就会水平居中, 或者是两个外边距一样大,width为auto 内容居中(如果文本不够长,看不出居中)

不同于text-align(text-align只应用于块级元素的内联内容,所以将元素的text-align设置为center并不能将这个元素居中。)

负外边距

垂直格式化

height定义的是内容区的高度,而不是可视区高度
正常流中的一个块元素的margin-top或margin-bottom设置为auto,会自动计算为0。margin-top margin-botto都为auto就都为0,没有外边距了。

合并垂直外边距(重点呀)

垂直格式化的另一个重要方面是垂直相邻外边距的合并。这种合并行为只应用于外边距。如果元素有内边距和边框,它们绝不会合并。

栗子:

li{margin-top:10px;margin-bottom: 15px;}
<ul>
    <li>1111111111111</li>
    <li>2222222222222222</li>
    <li>3333333333333333333333</li>
    <li>44444444444444444444444</li>
    <li>555555555555555555555</li>
    <li>66666666666</li>
</ul>
每个列表项有10像素上边距和15像素下边距。显示的时候,是15px边距。相邻外边距会沿着数轴合并(较大的值合并)。

负外边距

如果垂直外边距都为负值,浏览器会取外边距绝对值最大值。如果一个正外边距和一个负外边距合并,会从正外边距减去这个负外边距的绝对值。

li{margin-bottom:20px;background: pink;}
ul{margin-bottom: -15px;}
h1{margin-top: -18px;}
<ul>
    <li>1111111111111</li>
    <li>2222222222222222</li>
    <li>3333333333333333333333</li>
</ul>

<h style="margin-top: -18px;background: #CCC;">哈哈 </h>
两个负外边距中较大的一个(-18px)增加到最大的正外边距上(20px),这就得到了20px-18px=2px。所以,列表项内容底端和h1内容顶端之间的距离为2px。


行内元素

em a非替换元素 图像:替换元素。非替换元素和替换元素在内联内容方面的处理稍有不同。

1.非替换元素的内边距、边框和外边距不影响行内框的高度

2.替换元素的外边距和边框会影响行内框的高度。

行内格式化

line-height:影响行内元素如何显示。

字放左上角 右上角 左下角右下角可以用 vertical-align:top | bottom

....

改变元素显示

display:none|block|inline|line-block|...


行内块元素:和块元素 行内替换元素一样,也有宽高属性。

非替换行内元素没有width和text-align

lnline-block 行内块元素的应用:

如果有5个超链接,希望它们在一个工具条中宽度相等。为了让它们分别占用父元素宽度的20%,但是仍保持行内元素,可以这样:

a{display: inline-block;width: 20%;background-color: #88dd11;}
<div style="width:400px;background-color: #099;">
    <a>tab1</a><a>tab2</a><a>tab3</a><a>tab4</a><a>tab5</a>
</div>

只能将<a>标签之间的空格去除,不然中间有间隙的,因为有空格呀----悲伤的故事

简单的方法去除间隙,就是标签之中不能有空格。。



Maya绑定:人物绑定详细案例(创建骨骼、镜像骨骼、IK创建、IK打组、IK控制器、FK控制器、烘焙动画、导出) 阅读详情

相关推荐

Windows下CMake的下载与安装详解

目录一、CMake介绍二、CMake的下载与安装 一、CMake介绍 CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。它能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。 二、CMake的下载与安装 CMake下载链接:https://cmake.org/download/。 下载最新稳定版即可(Latest Release): 下载完成后,单击“Next”按钮,在下图中勾选“I acce

Wendy的博客 8万+

【CSS 面经】display: block、display: inline 和 display: inline-block 的区别

的元素会占据页面中从左到右的整行,通常会从新的一行开始显示。这类元素会导致页面的布局结构发生变化,因为它们会自动填满父元素的宽度,并且可以设置宽度、高度、外边距和内边距等属性。与block元素不同,的元素不会从新的一行开始显示,而是依照其内容的大小水平排列。inline元素只占据它实际内容所需的宽度,并且不支持设置宽度和高度属性。是inline和block两者的结合体。元素会像inline元素一样排列在同一行内,但又可以像block元素一样设置宽度和高度。

lph159的博客 3975

多机器人编队人工势场法协同避障算法原理及实现

ROS及SLAM进阶教程(十一)多机器人编队人工势场法协同避障算法原理及实现避障算法原理避障算法仿真 多机器人协同编队需要将理论和实践紧密地结合起来,其应用包括编队队形生成、保持、变换和路径规划与避障等等都是基于图论的理论基础完成的。 详细请参考ROS及SLAM进阶教程(八)多机器人协同编队算法原理及实现 自主避障功能是机器人编队在各种环境中保持自身安全的重要功能,在编队的基础上加入避障的功能,机器人可扫描到一定范围内的障碍物(包括其他机器人),在即将与之发生冲突时提前规避冲突,以保证自身的安全性,同时

Redglass的博客 1万+

CSS权威指南第四弹:基本视觉格式化

1.基本框 假设每个元素都会生成一个或多个矩形框,成为元素框 各元素中心有个内容区,内容区周围有内边距边框和外边距 包含块: 每个元素都相对于其包含块摆放,包含块是一个元素的“布局上下文”由最近的块级祖先框 2.块级元素 水平格式化 关键在于width影响的是内容区的宽度,而不是整个可见的元素框。 如p{width:200px;padding:10px;margin:20px;} 可见元素框的宽度...

weixin_43187545的博客 321

保姆级教程:在STM32CubeIDE上快速部署micro_ros到STM32F407(附常见问题解决)

本文提供了一份详细的保姆级教程,指导开发者如何在STM32CubeIDE上快速部署micro_ros到STM32F407微控制器。内容涵盖从Windows与Ubuntu双环境搭建、micro-ROS静态库编译、STM32CubeIDE工程深度集成,到串口通信联调与常见问题解决的完整流程,旨在帮助读者构建稳定可靠的ROS2与嵌入式设备通信系统。

o4p5q6r7s的博客 324

CloudCompare里那个CSF地面滤波插件,到底怎么用?手把手教你分离点云里的地面

本文详细介绍了如何在CloudCompare中使用CSF地面滤波插件分离点云中的地面数据。通过解析布料模拟滤波算法的核心参数,如布料刚度和网格分辨率,并提供不同地形(城市、丘陵、山地)的适配策略,帮助用户高效处理复杂点云数据。文章还包含实战案例和优化技巧,确保滤波结果的精度和可靠性。

weixin_42548708的博客 221

第七章 基本视觉格式化

第七章 基本视觉格式化 1.基本框 CSS规定:无论是块级元素,还是行内元素,每个元素都可设置一个矩形框。 这个框可设置border padding margin 属性。 关于border:如何未设置颜色,其颜色和content颜色相同。如果border有间隙(如dotted), 则间隙颜色和content背景色相同。 关于padding:padding颜色也和content背景色

claudio的博客 460

行人检测模型在海思平台上的部署:从 PyTorch 到 NNIE 深度优化与实践

摘要 本文详细介绍行人检测模型从PyTorch到海思NNIE平台的部署流程。首先分析了行人检测面临的挑战(尺度变化、遮挡、姿态多样性等)及边缘部署的优势(实时性、隐私保护等)。重点阐述了模型转换过程:PyTorch→ONNX→Caffe→NNIE-WK,其中PyTorch转ONNX需注意评估模式设置、虚拟输入匹配、操作集版本选择等关键点。文章旨在帮助开发者在海思3516D芯片上实现高效的行人检测,克服部署过程中的常见问题,最终实现边缘设备的实时目标检测能力。

FJN110的博客 218

CSS 基本视觉格式化

基本框 元素由内容区,内边距(padding),边框(border),外边距(margin)组成,这也就是元素的基本框。 边框的颜色默认取内容的前景色。 水平格式化 元素的width定义为内容区的宽度。所以元素的实际宽度是:width+(padding+border+margin)*2 元素存在水平属性设置为auto时,其实际宽度是父元素的width值。 元素的水平属性:margin-...

DanielChen的博客 295

Lammps实现Ar的沸腾过程(包含in文件)

Lammps实现简单的沸腾过程

Rockyoung 3503

环保 HJ212协议解析

由于是做环保相关的,有时需要对212协议进行拆包和解包。HJ212协议是一种字符串协议,数据传输通讯包主要由包头、数据段长度、数据段、CRC校验、包尾组成,其中“数据段”内容包括请求编码、系统编码、命令编码、密码、设备唯一标识、总包数、包号、指令参数。请求编码为请求的时间戳,系统编码ST统一规定为22,命令编码CN为该数据包的时间类型,访问密码、设备唯一标识在对接时由平台提供,指令参数为数据内容。通讯协议的数据结构如图4所示。 图4 通讯协议的数据结构 6.1.1通讯包结构组成 名称 类型 长度

ccf19881030的专栏 2万+

基本视觉格式化——块级元素

块级元素——水平格式化(非替换元素) 不设置margin和width,则width为父元素的内容宽度(总宽度),margin为0 若设置了margin,没有设置width,则width为总宽度减去margin 过分受限时(margin和width都有指定),各浏览器的处理不同,firefox保持原设置,chrome将margin-right设为auto处理 只设置width,margin都为a...

zhghxy94的博客 298

ABAP Secure Storage 在事务码 SM59 中的应用

系统管理人员在进行维护时,应关注相关日志信息,及时发现可能出现的安全异常,并针对不同安全等级的操作制定相应的备份与恢复策略,以降低潜在风险。该区域在设计上具备高度隔离性,仅允许经过授权的组件访问。保存后,系统会将密码存储在 Secure Storage 中,这种处理方式充分体现了 SAP 标准程序在安全设计上的考量。对于系统管理员而言,这种机制在日常维护与审计中提供了有力的支持,可以通过比对存储数据的哈希值或其他完整性校验手段,及时发现异常变动,保障系统长期稳定运行。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 675

7基本视觉格式化

CSS假定每个元素都会生成一个或多个矩形框,这称为元素框。各元素框中心有一个内容区(content area),这个内容区周围有可选的内边距、边框和外边距。内容的背景(例如某种颜色或平铺图像)也会应用到内边距。外边距通常是透明的,从中可以看到父元素的背景。边框的颜色默认为元素内容的前景色。 包含块是一个元素的“布局上下文”。包含块由最近的块级祖先框、表单元格或行内块祖先框的内容边界(conten...

weixin_30915275的博客 123

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

css权威指南(7):基本视觉格式化

块级元素 水平格式化 1.水平格式化的7大属性:margin-left,border-left,padding-left,width,margin-right,border-right,padding-right.这些属性与块级框的水平布局有关.这7个属性的值加在一起必须是元素包含块的宽度.这往往是块元素的父元素的width值. 2.这7个属性中,只有3个属性可以设置为auto:width,

juzipchy的博客 362

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

iOS Auto Layout Demystify

Book Descripter Auto Layout transforms the way you create iOS user interfaces. As flexible as it is powerful, Auto Layout gives you unprecedented control over your iOS user interfaces. But Auto...

weixin_30538029的博客 102

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

基本视觉格式化

基本视觉格式化基本框内容区,内边距,边框,外边距。 边框的颜色如果没有设置,将取元素内容的前景色,同时边框与内容和内边距具有相同的背景。包含块每个元素都相对于其包含块摆放,可以这么说,包含块就是一个元素的“布局上下文”。块级元素水平格式化正常流中块级元素框的水平部分总和就等于父元素的width(width是指内容区的宽度)。水平属性水平格式化的“7大属性”是: margin-left marg

WilsonLiu's Blog 654

理解CSS视觉格式化

CSS视觉格式化这个词可能比较陌生,但说起盒模型可能就恍然大悟了。实际上,盒模型只是CSS视觉格式化的一部分。视觉格式化分为块级和行内两种处理方式。理解视觉格式化,可以确定得到的效果是应该显示的正确效果,还是浏览器兼容性的bug。下面将详细介绍CSS视觉格式化。

2403_88477236的博客 1121

CSS 视觉格式化模型

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

liangshanbo1215的博客 1156

视觉格式化模型

视觉格式化模型 规定页面中多个盒子的排列规则,盒子该怎么摆放、渲染成什么样子。 盒模型也包含在这个规则里面。 盒模型:规定单个盒子的规则(盒子有哪些部分组成?行盒是怎么样的,快盒是怎么样的)。 视觉格式化模型会根据CSS盒子模型将文档中的元素转换为一个个盒子,每个盒子的布局由以下因素决定: 盒子的尺寸:精确指定、由约束条件指定或没有指定 盒子的类型:行内盒子(inline)、行内级盒子(inline-level)、原子行内级盒子(atomic inline-level)、块盒子(block) 定位方案(p

androidioskl的博客 332

WEB基础之:CSS基本视觉格式化

基本视觉格式化1. 基本框Basic Boxes2. 元素显示选择Altering Element Display2.1 将行内样式显示为块级样式2.2 将列表元素显示为行内样式3. 块级元素3.1 水平格式化3.1.1 水平属性Horizontal Properties3.1.2 Using auto3.1.3 负外边距Negative Margins3.1.4 百分数percentage3.1.5 替换元素Replaced Elements3.2 垂直格式化Vertical Formatting3.2

f_carey的博客 708

CSS视觉格式化模型

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

yangyang的专栏 511

[学习记录][css]基本视觉格式化

基本框 元素框 外边距 边框 内边距 内容区 包含框 最近的块级祖先框、表单元格和行内块祖先框的内容边界构成 块级元素 width:做内边界到右内边界 height:上内边界到小内边界 水平格式化 元素框宽度:可见元素框(width+padding)+外边距(margin) 水平属性 margin-left(auto) border-left padd

jhqdlove的专栏 773

CSS基本视觉格式化

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34308389的博客 93

7个PySimpleGUI表格条件格式化技巧:数据高亮与视觉提示终极指南

PySimpleGUI是一款面向人类的Python GUI库,能够将tkinter、Qt、WxPython和Remi等复杂框架转换为简单直观的开发体验。本文将分享7个实用的PySimpleGUI表格条件格式化技巧,帮助你快速实现数据高亮与视觉提示,让数据展示更加清晰易懂。 ## 1. 交替行颜色设置:提升表格可读性 交替行颜色是提升表格可读性的基础技巧,通过为奇数行和偶数行设置不同背景色,让用

gitblog_00295的博客 1112
上一篇: 6.文本属性
下一篇: 8.内边距、边框和外边距
大大大v
博客等级 码龄12年 10粉丝 136原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值