首页 / HTML5 入门教程 / 全局属性概览

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拼写检查
tabindexTab 键导航顺序
title悬停提示
classCSS 类名
id唯一标识
style内联样式
lang语言
dir文字方向
accesskey快捷键
data-*自定义数据
Note

classidstyle 你最熟悉了。本节重点讲你不一定全见过的那些。

contenteditable:让页面变可编辑

加了这个属性,用户可以直接在页面上改内容:

<div contenteditable="true">
  点击这里就能编辑
</div>

常见用途:

  • 富文本编辑器原型
  • 在线文档编辑
  • 需要用户自定义内容的区域
// 监听编辑内容变化
document.querySelector("[contenteditable]").addEventListener("input", function () {
  console.log("当前内容:", this.innerHTML);
});

draggable:开启拖拽

前面拖放过详细讲过。简单说就是:

<div draggable="true">能拖动</div>

值可以是 truefalseauto(浏览器决定)。图片和链接默认 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: blockhidden 不生效
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 等更多全局属性。