目录 字体相关调整 背景相关调整 控制背景平铺 调整背景图像的大小 边框属性 圆与圆角 盒模型 块级盒子(Block box) 和 内联盒子(Inline box) display属性 盒子模型 盒模型的各个部分...在这种情况下,如果图像的长宽比与盒子的长宽比不同,则可能在图像的任何一边或顶部和底部出现间隙。 在下面的例子中,我使用了上面例子中的大图,并使用长度单位来调整方框内的大小。你可以看到这扭曲了图像。... ---- 圆与圆角 通过使用border-radius属性和与方框的每个角相关的长边来实现方框的圆角。...可以使用两个长度或百分比作为值,第一个值定义水平半径,第二个值定义垂直半径。...我们通过对盒子display 属性的设置,比如 inline 或者 block ,来控制盒子的外部显示类型; display属性 将行内和块级标签强行改变 div { display
运行的文本将在两个生成的形状之间流动: main::before { content: ""; display: block; float: left; width: 50%; height:...为了创建形状,我再次使用 shape-outside 属性,这次使用的值与可见图像的 URL 相同: [src*="curve"] { float: right; width: 400px; height...使用视口宽度单位,我为标题,图像和运行文本提供不同的左边距,每个边距与视口的宽度成比例。...不设置明确的结构,能让视野在组合物周围自由漫游。这种操作也能产生一种有活力的布局。 我每天看到都是绕水平轴和垂直轴设置的设计,基于对角线的很稀少。...我再次使用 shape-outside 属性,其 URL 与可见图像相同,并在我的形状和围绕它的内容之间使用 shape-margin 设置距离: [src*="shape"] { float: left
说明:这里所说的"偏门"只是相对于本人而言,记录在此,加深印象。也希望有需要的朋友能获得些许收获! 1.空元素(void):没有内容的元素。...块元素:display: block; 常见有:div ul ol li dl dt dd h1~h6 p 行内元素(内联元素):display:inline; 常见有:a b...span img input select strong(加重语气) 3.XHTML:XML格式编写的html xhtml:可扩展的超文本标记语言 xhtml:与html 4.0.1 几乎是相同的 xhtml...(个人不建议使用) 5.img 始终添加alt属性: ps:当图片加载失败时,alt属性可以告诉用户相关信息;同时有利于纯文本浏览用户(这个应该比较少吧...:各顶点坐标;如果第一对坐标与最后一对坐标不一致,浏览器会添加一对坐标进行闭合图形 6.如何在页面上实现一个圆形的点击区域: map+area或者svg border-radius 纯js实现:首先判断一个点在不在圆上面
❞ 当使用Web字体时,浏览器在下载字体文件时,会显示一段时间的空白文本,直到字体文件完全加载完成。这段时间内,用户可能会看到页面上出现了空白文本,然后突然闪现出字体样式。这种体验被称为FOIT。...为了解决FOIT和FOUT问题,可以使用CSS属性,如font-display,来控制字体加载和显示的方式,以平滑地呈现文本内容,提高用户体验。...---- 使用font:display值和link rel=preload 如果我们的网站使用外部托管的字体,它们可能是FOIT(闪烁的不可见文本)和FOUT(闪烁的未样式化文本)的主要原因。...为了避免这种情况,我们可以使用font-display值,例如auto、swap、block、fallback和optional。...调整图像大小的更好方法是使用宽高比(aspect ratio)。它是宽度与高度的比例(例如16:9)。 使用宽高比可以让浏览器计算显示图像所需的空间 - 从而减少布局偏移的风险。
属性 display 属性,元素的显示方式,规定元素应该生成的框的类型,这个属性用于定义建立布局时元素生成的显示框类型 值 描述 none 让元素隐藏、消失,不占据空间位置 block 让元素呈现块属性特点...在 IE7 开始支持,在 IE6 下设置 _display:inline; 也可以实现相同效果,下划线 _ 是只针对 IE6 所设置的 CSS 样式,例:_width:100px; 给行元素和块元素设置内外边距.../ padding 不生效,水平生效 块元素在竖直方向上设置的 margin 会重叠,大的那个值生效 行元素在水平方向上设置的 margin / padding 不会重叠,水平相加 设置了 inline-block...属性之后,行元素就具有块元素的特点【可以设置宽高;竖直方向上的 padding/margin 生效】,块元素就可以水平排列 display 属性和 visibility 属性的区别 display:none...; 和 visibility:hidden; 都能把网页上某个元素隐藏起来,但两者是有区别的: display:none; 不为被隐藏的对象保留其物理空间,即该对象在页面上彻底消失,不占据空间位置,完全消失
它允许我们构建各种布局,包括侧边栏,多列页面,网格和杂志样式的文章,文本在图像周围流动等。...多个浮动元素的情况 如果都是左浮动,则按照在文档流中的先后顺序,从左向右水平排列。如果都是右浮动,则按照在文档流中的先后顺序,从右向左水平排列。...使用::after 在所有浮动元素之后添加一个空的元素 content: “”;,并设置 clear: both; 和 display: block; 常规做法是添加一个名为 clearfix 类,使得需要让父容器仍然容纳浮动元素时...BFC Block level 让我们看看有哪些盒子: block-level box: display 属性为 block, list-item, table 的元素,会生成 block-level...它是一个独立的渲染区域,只有 Block-level box 参与, 它规定了内部的 Block-level Box 如何布局,并且与这个区域外部毫不相干。
---- img标签 src:标识图像的位置; alt:指定图像的描述性文本,当图像不可见时(下载不成功时),可看到该属性指定的文本; title:提供在图像可见时对图像的描述(鼠标滑过图片时显示的文本...设置display:block就是将元素显示为块级元素。如下代码就是将内联元素a转换为块状元素,从而使a元素具有块状元素特点。...a{display:block;} 块级元素特点: 每个块级元素都从新的一行开始,并且其后的元素也另起一行。(真霸道,一个块级元素独占一行) 元素的高度、宽度、行高以及顶和底边距都可设置。...---- 元素分类–内联块状元素 内联块状元素(inline-block)就是同时具备内联元素、块状元素的特点,代码display:inline-block就是将元素设置为内联块状元素。...语法: 注意:标签的 for 属性中的值应当与相关控件的 id 属性值一定要相同。
display: block;display: inline;display: inline-block;display: flex;display: inline-flex;display: grid...;display: inline-grid;display: flow-root;布局模式使用场景擅长解决的布局问题不擅长解决的布局问题优势劣势block段落、容器、导航栏垂直布局、容器尺寸控制水平布局复杂性...、内联元素布局易于理解和使用、强大的宽高控制布局较为僵硬、不适合复杂布局inline文本、图像水平布局、内联元素间的排列垂直边距不生效、大小控制与文本流自然融合无法设置宽高、边距和填充有限制inline-block...inline-flex小型的、内联的复杂布局内联元素的复杂布局大型的二维布局flex的优点,但适用于内联环境与flex相同,不适合大型的二维布局grid复杂的页面布局、表格布局二维布局、对齐、模板区域旧浏览器不兼容强大的二维布局能力...、精确布局控制学习曲线高、兼容性问题inline-grid内联的复杂布局内联元素的二维布局与grid相同grid的优点,但适用于内联环境与grid相同,不适合大型的二维布局flow-root清除浮动、局部
如何清除图片下方出现几像素的空白间隙 方法1 img { display: block; } 方法2 img { vertical-align:...display: block; zoom: 1; overflow: hidden; } // #test为浮动元素的父元素。...如何让未知尺寸的图片在已知宽高的容器内水平垂直居中 #test { display: table-cell; /* vertical-align只支持内联(inline)元素或表格单元格...如何设置span的宽度和高度(即如何设置内联元素的宽高) span { display: block; width: 200px; height...能正确禁用中文输入法,Firefox虽然支持但不能禁用 23.
:内联盒子 内在盒子:块级容器盒子 inline 外在盒子:内联盒子 内在盒子:内联盒子 可以粗略的认为: display:block ≈ display:block-block display:inline...---- 盒模型 一个盒子由四个部分组成:content、padding、border、margin content,即实际内容,显示文本和图像 content 属性大都是用在::before/::after...Inline还是block也就是说替换元素的宽度却不受display水平影响 而/就是替换元素,修改的display为block是无法让尺寸100%...「每个元素的左外边距与包含块的左边界相接触」(页面布局方向从左到右),即使浮动元素也是如此 BFC的区域不会与float的元素区域重叠 「计算BFC的高度时,浮动子元素也参与计算」 BFC就是页面上的一个...通过设置元素属性display: none,将其从页面上去掉,然后再进行后续操作,这些后续操作也不会触发回流与重绘,这个过程称为离线操作 ---- 硬件加速 浏览器中的层分为两种:「渲染层」和「合成层」
目录: 一、父元素高度固定时,单行文本 | 图片的垂直居中 1. line-height行高简单粗暴实现法:line-height:Npx(N = 与元素高度相同的值) 2. vertical-middle...:Npx(N = 与元素高度相同的值) 正如N的值那样,这种解决方法就是要盒模型是有高度设置的。...图片默认是文本基线对其的。文本垂直居中,就到垂直正中间那里。但是图片底部为了与文字底部对其,所以留给顶部的空间就不多了。...多行文本水平垂直居中的原理跟上一页图片的实现是一样的,区别在于要把多行文本所在的容器的display水平转换成和图片一样的,也就是inline-block,以及重置外部继承的text-align和line-height...水平化,就不能使用vertical-align对齐了。
.c-nav a { display: block; padding: 16px 8px; } 对于每个项目之间的间距,你可以使用边距或将 的显示更改为 inline-block。...(对不起,如果你饿了) 你能想到这张卡的间距会在哪里使用吗? 见下图。...CSS writing-mode 根据 Mozilla 开发者网络 (MDN): CSS writing-mode属性设置文本行是水平还是垂直布局,以及块前进的方向。...让我们假设一个部分需要从左边算起 24px 的边距,考虑到这些限制: Margin 不能直接用于组件,因为它是一个已经构建的设计系统。 它应该是灵活的,间距可能在 X 页面上,但不在 Y 页面上。...以下是我想到的一些问题: 间隔组件如何在父组件中获取其宽度或高度?它将如何在水平和垂直布局中工作?例如:堆栈内的间隔符与添加左侧空间的间隔符。
在质量相同的情况下,WebP格式图像的体积要比JPEG格式图像小40% 12. 知道什么是微格式吗?谈谈理解。在前端构建中应该考虑微格式吗?...那么问题来了,浏览器还有默认的天生inline-block元素(拥有内在尺寸,可设置高宽,但不会自动换行),有哪些?...对WEB标准以及W3C的理解与认识 答:标签闭合、标签小写、不乱嵌套、提高搜索机器人搜索几率、使用外联 css和js脚本、结构行为表现的分离、文件下载与页面速度更快、内容能被更多的用户所访问、内容能被更广泛的设备所访问...根元素所在的 containing block 被称为 initial containing block,在我们常用的浏览器环境下,指的是原点与 canvas 重合,大小和 viewport 相同的矩形...对WEB标准以及W3C的理解与认识 标签闭合、标签小写、不乱嵌套、提高搜索机器人搜索几率、使用外 链css和js脚本、结构行为表现的分离、文件下载与页面速度更快、内容能被更多的用户所访问、内容能被更广泛的设备所访问
strong, em, ins, del, code 应该准确使用语义样式标签, 但不能滥用, 如果不能确定时首选使用自然样式标签 行内元素有哪些?...对象存储空间-表,对象-表中的记录,使用keyPath指定键,使用add(),put()向对象存储空间中存储对象,当存储的对象相同时add报错。... 标签定义图形,比如图表和其他图像。 标签只是图形容器,您必须使用脚本来绘制图形。 标签定义外部的内容。...; } 只需设置父节点属性,无需设置子元素 flex有兼容性问题 垂直居中 垂直居中:vertical-align:middle; 父元素高度不确定的文本,图片,块级元素的竖直居中:给父元素设置相同的上下边距实现...父元素高度确定的单行文本垂直居中:line-height值与父元素的高度值相同 1)、table-cell + vertical-align .parent { display: table-cell
流动将页面上的每个元素都视为属于文本文档。 块级元素以垂直方式在页面上重叠显示。它们会尽量占用尽可能多的水平空间,同时尽量减少垂直空间的占用。 内联元素在水平方向上像段落中的文本一样显示在一起。...如果想了解更多的Flex的细节,可以参考w3c_flexbox[3]。 网格布局 网格与弹性盒类似,只要在元素上使用了 display: grid,就会开始使用网格布局算法。...默认布局模式是流式布局,但我们可以通过更改父容器上的display属性来选择使用Flexbox: display:block display:flex 当我们将 display 设置为 flex 时,我们创建了一个...我们使用align-items属性: >> 在align-items中,有一些与justify-content相同的选项,但并「没有完全的重叠」。...flex-basis ❝在 Flex行中,flex-basis的作用与width相同。在 Flex 列中,flex-basis的作用与height相同。
反例,文本可读性差: body {background-image:url('bgdesert.jpg');} 背景图像-水平或垂直平铺 默认情况下 background-image 属性会在页面的水平或者垂直方向平铺...一些图像如果在水平方向与垂直方向平铺,这样看起来很不协调,如下所示: body { background-image:url('gradient2.png'); } 只在水平方向平铺 (repeat-x...让背景图像不影响文本的排版,不想让图像平铺,可以使用background-repeat属性。...重叠的元素 元素的定位与文档流无关,所以它们可以覆盖页面上的其它元素 z-index属性指定了一个元素的堆叠顺序(哪个元素应该放在前面,或后面) 一个元素可以有正数或负数的堆叠顺序: img {...使用 clear 属性往文本中添加图片廊: .text_line { clear:both; } CSS 布局 - 水平 & 垂直对齐 元素居中对齐 要水平居中对齐一个元素(如 div), 可以使用
CSS的可视化格式模型 CSS中规定每一个元素都有自己的盒子模型(相当一规定了这个元素如何显示); 然后可视化格式模型则是把这些盒子模型按照规则摆放到页面上,也就是如何布局; 换句话说,盒子模型规定了怎么在页面上摆放盒子...行内框 一个行内元素生成一个行内框; 行内元素能排在一行,允许左右有其他元素。.../div> div元素生成一个块框,其中有几个行内框(如em)以及文本some和text,此时会专门为这些文本生成匿名行内框; display属性的影响 display的几个属性也可以影响不同框的生成...overflow:hidden清除浮动就是这个原理); 如何触发BFC 根元素; float属性不为none; position为absolute或fixed; display为inline-block...另外,inline-block,会在元素外层产生IFC(所以这个元素可以通过text-align水平居中),当然,它的内部则按照BFC规则渲染
显示 在CSS中,display属性决定了元素在页面中的显示方式。 display: none; 隐藏元素,使其在页面中不可见且不占据空间不影响布局。 元素不会显示在页面上。...示例: .example{ display: none; } 测试文本ABC123 效果: display: block; 将元素显示为块级元素...; 设置元素是不可见的,但隐藏的元素仍需占用与未隐藏之前一样的空间。...透明 在 CSS 中,透明度是指元素后面的背景被覆盖的程度。透明度可以使用 opacity 属性来设置。...平移(Translate):移动元素在平面上的位置。 缩放(Scale):改变元素的大小。 旋转(Rotate):围绕元素中心点旋转。 倾斜(Skew):沿着水平或垂直轴倾斜元素。
这是营销网站的常见布局,例如,可能有一行 3 个项目,通常带有图像、标题,然后是一些描述产品某些功能的文本。在移动设备上,我们希望它们能够很好地堆叠,并随着我们增加屏幕尺寸而扩展。...向组件添加 display: grid 将为您提供一个单列网格,但是主区域的高度将仅与页脚下方的内容一样高。...使用 auto-fit ,当它们的水平尺寸超过 150px 时,框将拉伸以填充整个剩余空间。...然后,应用 justify-content: space-between 将第一个(标题)和最后一个(图像块)元素锚定到 flexbox 的边缘,并且它们之间的描述性文本以相等的间距放置到每个端点。...我们很快就会有一个属性来避免黑客攻击和计算百分比的需要。可以使用 1 / 1 的比例制作正方形,使用 2 / 1 制作 2:1 比例。可以设置任何图像缩放比例。
其他 display 值 还有很多的更有意思的 display 值,几乎所有HTML元素的display属性值要么为block,要么为inline。...布局的宽度 与高度不同,我们需要更精细地控制布局宽度,以便随着浏览器窗口宽度的合理变化,布局能够作出适当的调整,确保文本行不会过长或过短。...如图所示,通过给外包装设定宽度值,并将其水平外边距设定为 auto,这个单栏布局在页面上居中了。随着向里添加内容,这一栏的高度会相应增加。...inline-block 布局 上面的例子我们实现多栏并列的方式是使用float,不过我们也可以使用inline-block。下边是我们把 float 替换为inline-block 的例子。...总结 这篇文章我们介绍了用浮动的有宽度的元素来创建多栏布局、如何让固定布局在页面上居中以及让它们在一定范围内可以伸缩。同时也了解了如何使用内部div在浮动元素中生成间距,而又不会改变布局的总宽度。
领取专属 10元无门槛券
手把手带您无忧上云