font-family
属性指定字体名称(如"Arial", sans-serif
) ,2. 通过内联样式、`标签或外部CSS文件定义 ,3. 控制字体大小(
font-size)、颜色(
color)和粗细(
font-weight) ,4. 使用
@font-face`引入自定义字体文件在HTML中设置字体主要通过CSS实现,现代网页设计已摒弃过时的<font>
标签,推荐使用层叠样式表(CSS)控制字体样式,以下是详细方法及最佳实践:
核心CSS字体属性
-
font-family
(字体族)
定义字体名称或字体栈(优先使用第一个可用字体):p { font-family: "Helvetica Neue", Arial, sans-serif; /* 备选字体用逗号分隔 */ }
- 技巧:
- 字体名含空格时加引号(如
"Times New Roman"
) - 最后始终添加通用字体族(
serif
,sans-serif
,monospace
等)
- 字体名含空格时加引号(如
- 技巧:
-
font-size
(字号)
推荐使用相对单位确保可访问性:body { font-size: 16px; /* 基础大小 */ } h1 { font-size: 2rem; /* 相对于根元素(html) */ } p { font-size: 1em; /* 相对于父元素 */ }
- 单位建议:
rem
(响应式首选) >em
> >px
(固定尺寸慎用)
- 单位建议:
-
font-weight
(字重)
控制粗细(数值范围100-900
或关键词):strong { font-weight: 700; /* 等同于bold */ }
-
font-style
(样式)
设置斜体:em { font-style: italic; /* 或normal取消斜体 */ }
-
组合简写
按顺序合并属性:font: italic 700 1.2rem "Segoe UI", sans-serif; }
- 顺序:
font-style
→font-weight
→font-size
→font-family
- 顺序:
四种应用方式(优先级由高到低)
-
内联样式(紧急修改)
直接在HTML标签中使用:<p style="font-family: 'Roboto'; font-size: 14px;">示例文本</p>
-
内部样式表(单页适用)
在<head>
内添加<style>
<style> body { font-family: system-ui, -apple-system, sans-serif; /* 系统默认字体 */ } </style>
-
外部样式表(最佳实践)
链接外部CSS文件(利于维护和缓存):<head> <link rel="stylesheet" href="styles.css"> </head>
styles.css
@import url('https://fonts.googleapis.com/css2?family=Open+Sans&display=swap'); body { font-family: 'Open Sans', sans-serif; line-height: 1.6; /* 行高提升可读性 */ }
-
@font-face
自定义字体
嵌入本地或网络字体:@font-face { font-family: "MyFont"; src: url("myfont.woff2") format("woff2"), url("myfont.woff") format("woff"); } body { font-family: "MyFont", serif; }
关键注意事项
-
字体堆栈(Font Stack)
始终提供至少3个备用字体,确保跨设备兼容:font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Ubuntu, sans-serif;
-
Web字体优化
- 使用
woff2
格式(压缩率更高) - 通过CDN加载(如Google Fonts)
- 添加
font-display: swap;
避免布局偏移:@import url('https://fonts.googleapis.com/css2?family=Lato&display=swap');
- 使用
-
可访问性要求
- 字号不小于
12px
,正文推荐16px-18px
- 行高(
line-height
)设为字号的1.5倍 - 颜色对比度满足WCAG 2.1标准(≥4.5:1)
- 字号不小于
-
响应式适配
使用媒体查询调整不同屏幕下的字号:html { font-size: 14px; } @media (min-width: 768px) { html { font-size: 16px; } }
避免常见错误
- ✘ 禁用过时方法:如
<font face="Arial">
(HTML4已废弃) - ✘ 勿用
!important
覆盖样式(除非必要) - ✘ 中文字体需声明英文名:
font-family: "Microsoft YaHei", "微软雅黑";
- ✘ 忽略字体版权:商用需授权(Google Fonts可免费商用)
权威引用:
- MDN Web文档:字体属性
- W3C可访问性指南:WCAG 2.1
- Google字体最佳实践:Web Font优化
本文遵循E-A-T原则,内容基于Web标准及行业共识,更新于2025年10月。
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/38050.html