🧱 第 1–2 课 · HTML 入门

第一、二课:从代码模板到基础标签

这是前端课的第 1–2 课作业。那时候我刚知道「网页其实就是一个纯文本文件」, 于是把课上讲的每一个标签都手敲了一遍:代码模板的每个部分负责什么、块级标签和行内标签到底差在哪、 图片和链接该怎么放。当时只会平铺直叙地往下写,连一行 CSS 都没有——现在给它补上外壳和说明, 顺便把写错的地方订正掉。

这份练习包含以下内容

  1. 代码模板
  2. 块标签(块级元素)
  3. 行内标签(行内元素)
  4. 其他标签

一、代码模板

模板规定了内容范围、网页设置、浏览器渲染方式、移动端视图处理规范,以及网页标题。 每一个 <html> 文件都从这一套固定的骨架开始,少一行都可能在某个浏览器上出问题。

二、块级标签

块级元素独占一行,可以设置宽高,默认从上往下依次排列。

👇 下面两个盒子的差别,就是「无默认样式」和「自带段落间距」:

这是一个 <div>:贴着上下边界,没有任何自带间距。

这是一个 <p>:上下自带外边距,所以它会和别的段落自然拉开距离。

三、行内标签

行内元素不独占一行,宽度由内容撑开,默认不能设置宽高, 所以它们可以并排挤在同一行里。

概念订正:<b> / <i> 是「看起来粗 / 看起来斜」, 而 <strong> / <em> 才是「语义上要强调 / 要重读」。 前者只影响外观,后者还会被屏幕阅读器用加重语气读出来。要表达重要性应该用 <strong>,只是想加粗就用 CSS 的 font-weight, <b> 属于「没有更合适标签时的兜底」。

四、其他标签

链接:<a>

比如放一个欺诈型链接: 点我 v 你 50。 target="_blank" 让它在新标签页打开;rel="noopener noreferrer" 是必须补上的—— 新页面能通过 window.opener 操作原页面,加上它就能挡掉这个安全漏洞。

图片:<img>

再比如放一张可爱的图。图片用相对路径引用,页面搬到哪儿图就跟到哪儿:

《为美好的世界献上祝福!》的惠惠竖起大拇指,旁边写着「ぐっじょぶです(干得漂亮)」
作业里随手放的插图(本地素材 common/huihui.webp)。 当时 alt 是空的,等于对屏幕阅读器和搜索引擎说「这里什么都没有」, 现在补上了对画面的文字描述——alt 不是可选项,它是图片的「文字替身」。

小结

到这里,结束啦。看着很简单很少的样子,实际上……确实也不多 😄。 但这一课立住了后面所有内容的地基:块级负责布局的骨架,行内负责文字里的细节, 后面学的 flex、grid 都是在块级之上做文章。