HTML5 入门教程
全局属性概览
本教程共 110 篇 · 第 100 篇 · 更新于 2026-07-28 · 约 4 分钟阅读
HTML5HTML5 入门教程全局属性contenteditabledraggablehiddentabindex
100. 全局属性概览
本节目标:理解什么是全局属性,掌握最常用的几个:contenteditable、draggable、hidden、spellcheck、tabindex。
什么是全局属性
HTML 标签有很多属性,比如 href 是 <a> 专属、src 是 <img> 专属。但有一类属性,任何 HTML 元素都能用,它们叫”全局属性”。
| 全局属性 | 作用 |
|---|---|
contenteditable | 让元素可编辑 |
draggable | 允许拖拽 |
hidden | 隐藏元素 |
spellcheck | 拼写检查 |
tabindex | Tab 键导航顺序 |
title | 悬停提示 |
class | CSS 类名 |
id | 唯一标识 |
style | 内联样式 |
lang | 语言 |
dir | 文字方向 |
accesskey | 快捷键 |
data-* | 自定义数据 |
Note
class、id、style你最熟悉了。本节重点讲你不一定全见过的那些。
contenteditable:让页面变可编辑
加了这个属性,用户可以直接在页面上改内容:
<div contenteditable="true">
点击这里就能编辑
</div>
常见用途:
- 富文本编辑器原型
- 在线文档编辑
- 需要用户自定义内容的区域
// 监听编辑内容变化
document.querySelector("[contenteditable]").addEventListener("input", function () {
console.log("当前内容:", this.innerHTML);
});
draggable:开启拖拽
前面拖放过详细讲过。简单说就是:
<div draggable="true">能拖动</div>
值可以是 true、false、auto(浏览器决定)。图片和链接默认 auto。
hidden:简单隐藏
hidden 是 HTML5 新增的布尔属性,相当于 display: none:
<p hidden>这行看不见</p>
<p hidden="hidden">效果一样</p>
通过 JS 控制显隐:
element.hidden = true; // 隐藏
element.hidden = false; // 显示
和 CSS 的 display: none 有什么区别?
hidden是语义化表示”当前不相关”- CSS 隐藏是视觉层面的
hidden优先级低于 CSS,如果 CSS 设了display: block,hidden不生效
Tip更推荐用
hidden而不是style="display:none"。语义更清晰,JS 操作也简单。
spellcheck:拼写检查
浏览器默认对 <textarea> 和可编辑区域开启拼写检查(红色波浪线):
<textarea spellcheck="true">拼错了会有红线</textarea>
<input type="text" spellcheck="false"> <!-- 关闭拼写检查 -->
合理设置能提升体验:
- 输入自然语言 →
true - 输入代码/邮箱/用户名 →
false
tabindex:键盘导航顺序
按 Tab 键时,焦点在各个可聚焦元素间切换。tabindex 控制这个顺序:
<input tabindex="2">
<input tabindex="1"> <!-- 这个会先被聚焦 -->
<button tabindex="3">按钮</button>
| 值 | 效果 |
|---|---|
tabindex="0" | 参与 Tab 导航,按 DOM 顺序 |
tabindex="-1" | 不参与 Tab 导航,但 JS 可以 focus() |
tabindex="正数" | 参与 Tab 导航,值越小越优先 |
Warning别用正数
tabindex。99% 的场景不需要。它会让可维护性变差。需要时才用0或-1。
title:悬停提示
鼠标悬停时显示一个小气泡提示:
<p title="这是一段悬停提示">鼠标放上来试试</p>
<abbr title="HyperText Markup Language">HTML</abbr>
用途:
- 给缩写加说明
- 按钮没有文字时的替代说明
- 图标按钮的功能提示
Note
title提示对触屏设备不友好(悬停不会触发),而且无障碍体验一般。重要信息别只靠title传递。
总结
| 属性 | 一句话记住 |
|---|---|
contenteditable | 让元素能编辑 |
draggable | 让元素能拖拽 |
hidden | 隐藏元素(语义化) |
spellcheck | 开关拼写检查 |
tabindex | 控制 Tab 顺序 |
title | 悬停小提示 |
下一节继续讲 accesskey、dir、lang、translate、popover 等更多全局属性。