em 与 i
<em> 和 <i> 都可以使文本显示为斜体,但它们的语义不同。<em> 表示强调(emphasis),改变句子的含义或重点;<i> 表示文本在语气或情绪上与众不同,如术语、外文词汇、内心独白等。
前置知识
阅读本节前,建议先了解:strong 与 b
基础概念
<em>(emphasis)是语义强调标签,表示内容需要被强调。屏幕阅读器在遇到 <em> 时会改变朗读的语气(如加重语气、拉长音调)。而 <i>(italic)是视觉标签,表示文本在某些方面与众不同,如专业术语、外来词、内心想法等,但不表示强调。
核心区别:<em> 改变句意,<i> 只是语气或类别的不同。
语法
html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>em 与 i 示例</title>
</head>
<body>
<!-- em:语义强调 -->
<p>我们<em>需要</em>尽快完成这个项目。</p>
<!-- i:视觉斜体,表示术语或外文 -->
<p>这是一个 <i>de facto</i> 标准。</p>
<p>他在心里想:<i>今天一定要把这个问题解决。</i></p>
</body>
</html>详细说明
em 的语义与效果
<em> 改变句子的含义重心。放在不同的词上,句子传达的信息不同:
html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>em 改变句意示例</title>
</head>
<body>
<h1>em 改变句子含义</h1>
<!-- 强调"我":不是别人打扫 -->
<p><em>我</em>明天打扫房间。</p>
<!-- 强调"明天":不是今天也不是后天 -->
<p>我<em>明天</em>打扫房间。</p>
<!-- 强调"打扫":不是做别的 -->
<p>我明天<em>打扫房间</em>。</p>
</body>
</html>嵌套 em 的双重强调
<em> 可以嵌套使用,嵌套层级越高,强调程度越强。屏幕阅读器会以更强烈的语气朗读嵌套的 <em>:
html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>嵌套 em 示例</title>
</head>
<body>
<h1>嵌套强调</h1>
<!-- 单层强调 -->
<p>这条路<em>非常</em>危险。</p>
<!-- 双层强调:更强烈 -->
<p><em><em>绝对不要</em></em>触碰高压电线!</p>
<!-- 三层强调:极度强调(通常不建议) -->
<p>我<em><em><em>真的</em></em></em>很想见你。</p>
</body>
</html>i 的使用场景
<i> 的典型使用场景包括:
html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>i 标签使用场景</title>
</head>
<body>
<h1>i 标签的典型用法</h1>
<!-- 外文词汇 -->
<p>他是一位 <i>cul-de-sac</i> 的居民。</p>
<!-- 专业术语 -->
<p>在生物学中,光合作用分为 <i>光反应</i> 和 <i>暗反应</i> 两个阶段。</p>
<!-- 内心独白 -->
<p>看着窗外的雨,她想:<i>也许一切都会好起来的。</i></p>
<!-- 船名/作品名 -->
<p>他乘坐 <i>泰坦尼克号</i> 从利物浦出发。</p>
</body>
</html>em 与 i 的对比
| 特性 | <em> | <i> |
|---|---|---|
| 语义 | 强调内容,改变句意 | 文本与众不同,不改变句意 |
| 默认样式 | 斜体 | 斜体 |
| 可嵌套 | 可以(强调程度递增) | 可以但无嵌套语义 |
| 屏幕阅读器 | 改变朗读语气 | 按正常语气朗读 |
| 典型场景 | 关键词强调、警告 | 术语、外文、内心独白 |
实战示例
用户协议中的强调
html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>用户协议</title>
</head>
<body>
<h1>用户服务协议</h1>
<p>请您在使用本服务前,<em>仔细阅读并充分理解</em>本协议的所有条款。</p>
<p>您注册账号即表示您<em>同意</em>以下条款:</p>
<ul>
<li>您提供的个人信息必须<em>真实、准确、完整</em></li>
<li>您不得将账号<em>转让、出售</em>给他人</li>
<li>违反协议可能导致账号被<em>永久封禁</em></li>
</ul>
<p>术语定义:<i>服务</i>指本平台提供的所有在线功能和内容。</p>
</body>
</html>注意事项
em 和 strong 可以配合使用
html
<!-- strong 表示重要性,em 表示强调 -->
<p><strong><em>立即执行!</em></strong>这是最高优先级任务。</p>不要用 i 代替 em
html
<!-- 不推荐:需要强调但使用了 i -->
<p>这个 bug <i>必须</i>在今天修复。</p>
<!-- 正确:需要强调应使用 em -->
<p>这个 bug <em>必须</em>在今天修复。</p>最佳实践
- 需要强调用 em:当改变某个词的强调会改变句意时,使用
<em> - 语气不同用 i:当文本只是语气或类别不同时,使用
<i> - 避免过度嵌套:
<em>的嵌套一般不超过 2 层 - 通过 CSS 调整:如果不想使用斜体样式,可通过 CSS 修改
下一节
继续学习:mark 高亮