HTML5
🚀 HTML5 核心新标签精华录
1. 语义化布局(SEO与结构的灵魂)
- 这些标签的作用是让机器(搜索引擎、读屏器)看懂网页的"骨架"
2. 交互与功能(告别 JS 时代)
-
<details>&<summary>:原生折叠面板很多以前需要写几十行代码的功能,现在可以一个标签搞定!
-
<dialog>:原生模态框直接调用
dialog.showModal()即可弹出,自带居中效果和背景压暗(::backdrop)
注意
-
别给
dialog>标签手动加tabindex="0"之类的属性。浏览器会自动处理对话框的焦点顺序,你手动加了反而会干扰读屏软件,让残障人士的操作变得混乱。 -
推荐使用元素本身的
.show()或.showModal(),而不是使用open属性。如果你写了open属性,它只是一个普通的层,背景不会变暗,Esc键也没法关掉它。必须用JS调用.showModal(),浏览器才会把它当成一个正式的"模态弹窗",给你自动处理背景遮罩和键盘交互。 -
焦点(Focus):弹出跳出来的时候,光标应该在哪?如果是表单,你应该给第一个输入框加
autofocus,让用户直接能打字。如果没有输入框,焦点默认会停在弹窗里。你要确保用户按Tab键时,焦点只在弹窗内部循环,不要跳到弹窗后面的背景页面里去(showModal已经帮你做好了这一点)。 -
给用户留条"活路":别做一个关不掉的流氓弹窗。一定要写一个
关闭或取消按钮。如果你是用showModal()打开的,按键盘左上角的Esc键默认能关掉,别把这个原生功能给禁用了。 -
::backdrop:弹窗出来时,后面的页面变黑、变模糊,就是靠这个CSS伪元素实现的。它只在showModal()模式下生效!
3. 其他HTML5标签
3.1 <noscript>标签
虽然现在的网页几乎离不开 JavaScript,但万一用户在浏览器禁用了脚本,或者脚本加载失败,这个标签里的内容就会显示出来。
它是提升网页健壮性的重要手段。

