03文本与链接

网页的身体是文字,血脉是链接。这一章拿下标题、段落、格式化、链接、图片、实体 六类内容标签——它们撑起了页面上 80% 的可见内容。

约 18 分钟 5 个动手实验 内容之王

一、标题:h1 ~ h6

标题不是「调大字号的工具」,而是文档的目录层级: h1 是书名,h2 是章,h3 是节……数字越大级别越低、字号越小。 浏览器、搜索引擎、读屏软件都靠这套层级理解你的页面。

六级标题的实际大小:在模板里把某个标题的等级改一改,看字号跟着变
标题层级:谁是主、谁是次、怎么用
标签角色使用建议
h1页面主标题全页仅一个(SEO 权重最高)
h2大板块标题每个板块一个,可反复使用
h3小节标题h2 内部再细分
h4 ~ h6更细的层级少用;层级太深说明结构该拆了
口诀:标题管结构,字号归 CSS;一个页面一个 h1,层级递进不跳级。 想让文字变大就上标题,等于给目录塞私货。

二、段落与换行:p、br、hr、pre

<p>(paragraph)装「自然段」,段与段自动留白; <br> 是「硬回车」,在段内强制换行;<hr>(horizontal rule) 画一条水平分割线;<pre>(preformatted)则是个耿直 boy—— 空格、缩进、换行全部原样保留

段落四兄弟速查:谁换行、谁画线、谁原样
标签全称作用空格换行
pparagraph自然段,段与段自动留白折叠
brbreak段内硬换行(诗歌、地址)
hrhorizontal rule水平分割线
prepreformatted预格式化,原样保留保留
段落留白 / br 换行 / hr 分割线 / pre 原样:把 <br> 删掉看两行并一行
HTML 有条铁律:连续空格和换行会被折叠成一个空格。 你敲十个空格、回车三次,渲染出来都只是一个空格。想要真换行用 br,想要保留一切格式用 pre。
别用连续 <br><br><br> 撑出空隙——那是 CSS 的 margin 干的活。 br 只该出现在「诗歌、地址」这种确实需要硬换行的地方。

三、文本格式化标签

同样是加粗,<b> 只改外观,<strong> 还告诉浏览器 「这段很重要」。先看全家福,再动手试:

格式化标签全家福:谁是化妆,谁是呐喊
标签语义默认样式
b无特殊语义,纯吸引注意(关键词、产品名)加粗
strong重要内容(读屏会加重语气)加粗
i无特殊语义(术语、外来语、图标字)斜体
em语气上的强调斜体
mark引用中需要突出的文字黄底高亮
small旁注、版权声明等「小字」缩小一号
del已删除的内容(改价前的旧价)删除线
ins新插入的内容(改价后的新价)下划线
sub下标(化学式、脚注编号)H2O
sup上标(幂、引用标记)210
code行内代码片段等宽字体
格式化标签混合排版:把 <del> 包住的旧价从 ¥99 改成 ¥49,看删除线同步变化
记忆法:b/i 是「化妆」,strong/em 是「呐喊」。 只想好看用 b/i;想让浏览器和读屏知道「这很重要」,用 strong/em。

四、链接:a 标签

HTML 叫「超文本标记语言」,超的就是链接。<a>(anchor,锚)的 href 指向哪里,点一下就飞到哪里——可以飞到别的网站、站内其它页面、 页面某个位置,甚至唤起邮件客户端和拨号盘。

a 标签属性逐项分析:href 是灵魂
属性取值说明
hrefURL / #锚点 / mailto: / tel: / data:目标地址,a 的灵魂;没有 href 就只是普通文字
target_blank / _self / _parent / _top打开位置;_blank 新标签页,_self 当前页(默认)
relnoopener / nofollow与目标页的关系;新标签页打开建议配 noopener 更安全
title任意文字鼠标悬停时的提示气泡
download文件名(可省略)不跳转、直接下载;配合 data: / blob: 地址可离线下载
id唯一标识自己当锚点,给别人跳
五种链接写法:悬停看 title;把第一个 href 改成站内路径看它变成「关于我们」
地址口诀:跨网站写全(https://…),站内跳转写相对(./xxx.html), 页内跳转写井号(#id)。路径写错是新手页面「点不动」的头号原因。

五、页内锚点:id + href="#id"

长页面的「目录」「回到顶部」都靠它:给目标元素一个 id, 链接的 href 写成 #id,点击即滚过去。 href="#" 则永远回到页面最顶端。

在下面的小窗口里滚到底,点「回到顶部」真的会跳:

顶部:这个 p 带着 id="eg-top"。往下滚 →

占位内容 1
占位内容 2
占位内容 3
回到顶部 ↑

点一下按钮:href="#eg-top" 让滚动条乖乖回去

id 是「身份证」:一个页面里不能重复; 锚点跳转、CSS 定位、JS 取元素全靠它。习惯写成小写字母加连字符,如 id="user-avatar"

六、图片:img 标签

<img> 是空元素(没有结束标签),两个属性必须形成肌肉记忆: src 告诉浏览器图在哪,alt 告诉所有人(以及搜索引擎、读屏软件)图是什么。

img 属性逐项分析:src / alt / 尺寸 / 懒加载
属性取值说明
srcURL(必填)图片地址,绝对/相对/data: 皆可
alt文字(必写)替代文字:加载失败时显示、读屏朗读、SEO 抓取
width / height数字(像素,不带单位)建议同时写:浏览器提前占位,页面不「跳一下」
loadinglazy / eager / autolazy=滚到快看见才加载,长页面省流量
橙黄天空里悬着一轮红日的扁平插画

↑ 宽高各设一半,图片等比缩小;loading="lazy" 让它懒加载

海边日落照片(此图不存在,正在显示 alt 文字)

↑ 图片加载失败时,alt 文字顶上(把 alt 改成别的字试试)

专业习惯:每张图都写 alt。装饰性图片(纯背景、分隔符)可以写 alt=""(空 alt 表示「跳过我」),但绝不能不写。

七、字符实体:打出打不出的字符

想显示 <p> 这串字?直接写会被当成标签吃掉; 想敲出连续空格?会被折叠。HTML 的解法是字符实体: 以 & 开头、; 结尾的「暗号」。

字符实体速查:以 & 开头、以 ; 结尾的暗号
实体显示为用途
&nbsp;不折叠空格普通空格会折叠,它不会
&lt;<小于号,避免被当成标签开头
&gt;>大于号
&amp;&& 本身(写其它实体前先写它)
&quot;"双引号,属性值里常用
&copy;©版权符号 ©
&#169;©数字写法:© 的码点,效果同上
空格折叠 vs &nbsp;:把普通那句里的 4 个空格换成 &nbsp;,看它不再被压扁
背不动全部?先记三件套:&lt;(<)、&gt;(>)、&amp;(&), 其它的用时再查。注意:显示「实体本身」要套两层,如 &amp;nbsp; 显示出 &nbsp;

八、本章小结

  • 标题 h1~h6 是目录层级:一个页面一个 h1,不为字号用标题。
  • 段落 p 自动留白;br 硬换行、hr 分割线、pre 原样保留空格换行。
  • 格式化分两派:b/i 只管化妆,strong/em/mark/del/ins 自带语义。
  • 链接 a 靠 href 走天下:绝对、相对、#锚点、mailto:、tel:、download。
  • 页内跳转 = 目标加 id + 链接写 #id
  • img 必写 src 与 alt;width/height 提前占位;loading="lazy" 懒加载。
  • 连续空格和换行会折叠,特殊字符用实体(&nbsp; &lt; &gt; &amp; &copy;)。
动手练习:做一个「自我介绍名片页」——h1 写名字,两段 p 做简介, 用 strong/em/mark 各强调一处,放一张带 alt 的图片(src 可用 data: 地址), 最后加一个「发邮件给我」的 mailto 链接和一个「回到顶部」锚点按钮。