← HTML5 已废弃与新增元素表 HTML5 核心特性 →

HTML5 已废弃与新增属性表

原创 2025-09-14 HTML5 已有人查阅

HHML5 摒弃了许多主要用于控制表现的属性,推荐使用 CSS 来实现样式效果,以实现结构与表现的分离。本节课程代码号列了下面这个表格汇总了这些被废弃的属性、它们原先的应用元素以及推荐的替代方案。

HTML5 已废弃属性及替代方案

 废弃属性 原应用元素 废弃原因 HTML5 替代方案 核心概念/专业名词
align captiondivh1-h6ptableimgtrtdthtbodytheadtfootcolcolgroupinputlegendobjectiframehr  表现与结构混合 CSS text-alignvertical-alignfloat 等 语义化 (Semantics)
bgcolor bodytabletrtdth  表现与结构混合 CSS background-color 内容与表现分离 (Separation of Content and Presentation)
border tableimgobject  表现与结构混合 CSS border CSS 盒模型 (Box Model)
cellpadding table  表现与结构混合 CSS padding (作用于 tdth) CSS 选择器 (Selectors)
cellspacing table  表现与结构混合 CSS border-spacing  
charcharoff colcolgrouptbodytdtfootththeadtr  用途有限,难以维护 CSS (难以直接对应,通常用其他布局方式替代) 渐进增强 (Progressive Enhancement)
clear br  表现与结构混合 CSS clear  
compact dlmenuolul  表现与结构混合 CSS marginpaddingline-height  
frame table  表现与结构混合 CSS border-style  
frameborder iframe  表现与结构混合 CSS border  
height (用于布局) iframetdth  表现与结构混合 CSS height 响应式设计 (Responsive Design)
hspacevspace imgobject  表现与结构混合 CSS margin  
linktextalinkvlink body  表现与结构混合 CSS color 和 :link:visited:active 伪类 CSS 伪类 (Pseudo-classes)
noshade hr  表现与结构混合 CSS borderbackground-colorheight  
nowrap tdth  表现与结构混合 CSS white-space  
rules table  表现与结构混合 CSS border 相关属性  
scrolling iframe  表现与结构混合 CSS overflow  
size hrinput  表现与结构混合 (hr); 有新的替代 (input) CSS height (hr); 使用新的 input types  
type liolul  表现与结构混合 CSS list-style-type  
valign colcolgrouptbodytdtfootththeadtr  表现与结构混合 CSS vertical-align  
width (用于布局) hrtabletdthcolcolgroupiframepre  表现与结构混合 CSS width 响应式设计 (Responsive Design)
background body  表现与结构混合 CSS background-image  
profile head  未被广泛使用,能不明确 通常不再需要 元数据 (Metadata)
version html  冗余,由 <!DOCTYPE html> 声明 不再需要 文档类型声明 (DOCTYPE)
name (部分元素) mapimgobjectformiframea  标准化,使用 id 标识片段 使用 id 属性 DOM 遍历
scheme meta  未被广泛支持和使用 依赖其他的元数据方案  
archiveclassidcodebasecodetypedeclarestandby object  用于加载插件,技术过时(如 Java applet) 使用 data 和 type 属性;现代 Web 技术替代插件 可访问性 (Accessibility)
valuetypetype param  随 object 插件相关属性废弃 使用 name 与 value 属性  
charset linka  可通过 HTTP 响应头提供 在被链接的资源中使用 HTTP Content-Type 头 HTTP 头 (HTTP Headers)
rev linka  语义不明确,使用 rel 即可 使用 rel 属性 超链接关系 (Link Relations)
shapecoords a  使链接变得复杂,可访问性差 使用 area 元素配合 map 替代 a 元素 图像映射 (Image Maps)
longdesc imgiframe  可访问性差,可用其他方式实现 使用 a 元素链接到详细描述页或使用 ARIA WAI-ARIA (Web Accessibility Initiative - Accessible Rich Internet Applications)
target link  在 link 元素中无意义 无需替代  
nohref area  冗余 无需替代  
axisabbr tdth  为可访问性设计,但未被很好支持 使用以明确简洁的文字开头,后跟详述文字;或使用 title 属性 可访问性 (Accessibility)
scope td  不正确的使用(本用于 th 正确地在 th 元素中使用 scope 属性 表格可访问性
headers tdth  为可访问性设计,但复杂且少用 简化表格结构或使用 ARIA  
summary table  为可访问性设计,但可用其他方式 使用 <caption> 元素或 ARIA  
accesskey aareabuttoninputlabellegendtextarea  可访问性实现方式不一致且易冲突  慎使用,或使用 JavaScript 增强 键盘可访问性 (Keyboard Accessibility)

HTML5 新增属性详解

新增全局属性

属性 描述 应用元素 专业名词/概念
contenteditable 使元素内容可编辑 所有元素 富文本编辑(Rich Text Editing)
contextmenu 指定元素的上下文菜单 所有元素 自定义上下文菜单(Custom Context Menu)
data-* 存储自定义数据 所有元素 数据属性(Data Attributes), DOM数据集(DOM Dataset)
draggable 定义元素是否可拖动 所有元素 HTML5拖放API(HTML5 Drag and Drop API)
dropzone 定义拖动数据在元素上放置时的处理方式 所有元素 拖放目标(Drop Target)
hidden 隐藏元素 所有元素 可见性控制(Visibility Control)
spellcheck 启用或禁用拼写检查 可编辑元素 输入验证(Input Validation)
translate 定义元素内容是否应被翻译 所有元素 国际化(i18n), 本地化(Localization)

表单相关新增属性

属性 描述 应用元素 专业名词/概念
autocomplete 启用或禁用自动完成功能 forminput 表单自动填充(Form Autofill)
autofocus 页面加载时自动获得焦点 buttoninputselecttextarea 用户体验(UX), 可访问性(Accessibility)
form 关联元素与表单 buttonfieldsetinputlabelmeterobjectoutputprogressselecttextarea 表单关联(Form Association)
formaction 覆盖表单的action属性 buttoninput 表单提交处理(Form Submission Handling)
formenctype 覆盖表单的enctype属性 buttoninput 编码类型(Encoding Type)
formmethod 覆盖表单的method属性 buttoninput HTTP方法(HTTP Methods)
formnovalidate 覆盖表单的novalidate属性 buttoninput 表单验证绕过(Form Validation Bypass)
formtarget 覆盖表单的target属性 buttoninput 目标窗口(Target Window)
list 引用datalist元素 input 数据列表(Data List), 自动建议(Auto-suggest)
maxlength 定义较大字符数 inputtextarea 输入限制(Input Constraints)
minmax 定义数值范围 inputmeter 范围约束(Range Constraints)
multiple 允许多个值 inputselect 多值输入(Multiple Values Input)
novalidate 提交时不验证表单 form 表单验证控制(Form Validation Control)
pattern 定义输入模式 input 正则表达式验证(Regex Validation)
placeholder 提供输入提示 inputtextarea 占位符文本(Placeholder Text)
required 定义必填字段 inputselecttextarea 表单验证(Form Validation)
step 定义数值间隔 input 数值步进(Numeric Stepping)

媒体元素新增属性

属性 描述 应用元素 专业名词/概念
autoplay 自动播放媒体 audiovideo 媒体自动播放(Media Autoplay)
controls 显示控制界面 audiovideo 媒体控制器(Media Controls)
crossorigin 配置CORS请求 audioimglinkscriptvideo 跨域资源共享(CORS)
loop 循环播放媒体 audiovideo 媒体循环播放(Media Looping)
mediagroup 将多个媒体元素分组 audiovideo 媒体同步(Media Synchronization)
muted 静音播放 audiovideo 音频控制(Audio Control)
preload 预加载媒体 audiovideo 资源预加载(Resource Preloading)
src 媒体资源地址 audiovideotrack 资源引用(Resource Reference)

链接和脚本相关属性

属性 描述 应用元素 专业名词/概念
async 异步执行脚本 script 异步加载(Asynchronous Loading)
defer 延迟执行脚本 script 延迟执行(Deferred Execution)
sizes 指定图标大小 link 响应式图标(Responsive Icons)
srcdoc 嵌入HTML文档 iframe 文档嵌入(Document Embedding)
sandbox 对iframe内容施加限制 iframe 安全沙箱(Security Sandbox)
seamless 使iframe看起来像父文档的一部分 iframe 无缝集成(Seamless Integration)

图像和嵌入内容属性

属性 描述 应用元素 专业名词/概念
heightwidth 定义尺寸 canvasembediframeimginputobjectvideo 尺寸控制(Dimension Control)
poster 视频加载时显示的图像 video 视频海报(Video Poster)

元信息属性

属性 描述 应用元素 专业名词/概念
charset 定义字符编码 meta 字符编码(Character Encoding)
manifest 指定应用缓存清单 html 离线Web应用(Offline Web Applications)
scoped 限制样式作用范围 style 作用域样式(Scoped Styles)

本节课程知识要点

  1. 结构与表现分离:HTML5 废弃大量表现属性是为了推动 Web 开发中内容(HTML)与表现(CSS)的分离。这使代码更清晰、更易维护,并方便了响应式设计的实现。

  2. 语义化与可访问性:HTML5 推崇使用语义化标签(如 <header><nav><article><section><footer> 等)和适当的属性来明确表达内容的结构和含义。这不仅有助于搜索引擎优化(SEO),更能显著提升网站对辅助技术用户的可访问性 (Accessibility)

  3. 现代 Web 标准:摒弃如 object 的相关属性,反映了 Flash、Java Applets 等旧插件的淘汰。现代 Web 应用依赖于 HTML5、CSS3、JavaScript 及各种 API(如 Canvas, Geolocation, Web Storage)。

  4. 渐进增强:虽然这些属性已废弃,但大多数浏览器仍支持它们以确保旧页面可用。开发新项目时应遵循新标准。

 如何移除 HTML 属性

若需动态移除 HTML 元素属性,JavaScript 提供了 removeAttribute() 方法:

javascript
// 示例:移除元素的某个属性
document.getElementById("myElement").removeAttribute("align");

对于布尔属性(如 disabledreadonlyrequired 等),在 HTML5 中通常只需写上属性名即可表示真值,设为空字符串或属性名即可;若要禁用该特性,移除整个属性而非设置其为 false

理解 HTML5 为何废弃这些属性,能帮助你编写出更符合现代 Web 标准、更语义化、更具可访问性且更易于维护的代码。关键是掌握如何使用 CSS 来处理样式,以及如何利用 HTML5 语义化标签和当前推荐的属性来构建内容结构。

希望这份详细的表格和说明能帮助你更好地掌握 HTML5 的属性变化!

← HTML5 已废弃与新增元素表 HTML5 核心特性 →
分享笔记 (共有 篇笔记)
验证码:
微信公众号