◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
在学习如何使用font-optical-sizing属性之前,我们首先要看一下CSS中的font属性以及为什么需要将font-optical-sizing作为一个单独的属性。
网页上文本的样式由CSS中的font属性控制,它是许多其他属性的简写形式。它可以用于将系统字体应用于元素,或为其他CSS属性设置不同的值。
此属性适用于所有元素,并且本质上是可继承的,这意味着子元素的字体将与父元素的字体相同,除非另有指定。
构成字体速记属性的属性如下 -
立即学习“前端免费学习笔记(深入)”;
Font-family - 它指定将应用于文本的字体系列,您可以选择提供具有优先级的系列列表从左到右。
字体大小 − 用于控制字体或文本的大小。
字体拉伸 − 您可以使用此属性来设置字符面,这些字符面可以比正常字符更窄或更宽。
字体样式 − 此属性指定字体是否应以粗体、斜体、下划线或删除线文本显示
Font-variant - 控制字体变体并为连字设置不同的值。
Font-weight - 此属性设置文本显示的粗体程度。
行高- 用于设置文本行之间的距离。
所有这些属性,无论是作为字体速记属性的一部分还是单独使用,都有一个初始值。对于大多数来说,初始值是“正常”,字体大小的默认值是“中”,字体系列的默认值取决于用户的系统。
下面给出一个使用font属性来样式化文本的示例。
<!DOCTYPE html> <html lang="en"> <head> <title>Various font styles</title> </head> <body> <p style="font:caption">This text will be displayed as a caption.</p> <p style="font:icon">This text will be displayed as an icon.</p> <p style="font:menu">This text will be displayed as a menu.</p> <p style="font:message-box">This text will be displayed as message-box</p> <p style="font:small-caption">This text will be displayed as a smaller form of caption.</p> <p style="font:status-bar">This text will be displayed as status bar.</p> <p style="font: bold;">This will be bold</p> <p style="font-size: large;">This will have larger font size.</p> </body> </html>
CSS 有一个 font-optical-sizing 属性,用于确定生成的文本是否针对各种屏幕尺寸进行优化。浏览器可以更改字体字形的轮廓,使其在各种尺寸下都更清晰。
如果字体支持字体光学调整大小,对我们来说非常有优势。这样我们可以确保文字始终适应用户使用的屏幕。大多数可变字体系列都支持此属性。当字体拥有光学大小变化轴时,光学调整大小会自动启用。我们使用字体变体设置中的opsz值来表示光学大小变化轴。
使用光学缩放时,较小的字体尺寸通常会显示为较粗的笔划和较大的衬线,而较大的文本通常会显示得更精致,较粗和较细的笔划之间的对比度更大。
在指定此属性时,可以使用以下值 -
None − 当我们不需要光学修改的文本时,我们使用此值。
自动 - 当我们必须根据屏幕尺寸调整字形形状时,浏览器将使用此值。
除此之外,我们还可以将全局值(inherit、initial和unset)作为此属性的值使用。
默认情况下,此属性的初始值为 auto。它适用于所有元素,还包括 ::first-letter 和 ::first-line 属性。它是一个可继承的值,浏览器指定的值用作其计算值。它具有离散动画类型。
使用值auto作为此属性的值的示例如下所示。
<!DOCTYPE html> <html> <head> <style type="text/css"> p { padding: 3%; font-weight: 700; font-optical-sizing: auto; } </style> </head> <body> <p>This text will be optically modified for all screen sizes.</p> </body> </html>
此示例使用继承作为属性的值,该属性是我们可以在 CSS 中使用的三个全局属性之一。
<!DOCTYPE html> <html> <head> <style type="text/css"> p { padding: 3%; font-weight: 700; font-optical-sizing: inherit; } </style> </head> <body> <p>This text will be optically modified for all screen sizes using inherit as its value.</p> </body> </html>
总而言之,CSS 中的 font-optical-sizing 属性是让文本在不同设备和分辨率上看起来更好的好方法。它允许您根据预期用途调整字体的大小,这有助于提高可读性并在不同屏幕上创建更一致的设计。通过利用此功能,设计人员能够确保他们的版式无论在什么设备上查看都看起来很棒,而无需手动调整每个屏幕尺寸的设置。
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。