HTML 已经发展了多年,废弃现在 W3C 已经发布了 HTML 5.1 的废弃提案推荐标准,一些陈旧废弃的废弃标签已经在后继的标准中逐渐消失。这里为大家列出那些已经被废弃 HTML 标签,废弃看看你是废弃不是还在使用它们。 <acronym> 首字母缩写,废弃例如 WWW 类似的废弃有<abbr>标签,表示单词缩写,废弃例如 <abbr>inc.</abbr>。废弃语法如下: 推荐用<abbr>,废弃不要用<acronym>(忽略上面提到的废弃语义上的差异)。 <applet> Java 小应用程序,废弃主要提供绘图功能(在页面上通过代码绘制一些东西),废弃例如: 目前几乎没什么用了,废弃因为运行需要 JRE,废弃而目前主流浏览器并不默认安装 JRE。 推荐使用<canvas>绘图,或者用<object>+<embed>嵌入 flash代替<applet>。 注意:使用<object>+<embed>是为了更好的兼容性,如果场景允许,推荐使用<object>。 <basefont> <basefont>标签定义基准字体。该标签可以为文档中的所有文本定义默认字体颜色、云服务器提供商字体大小和字体系列,例如: <basefont>标签只有 IE 支持。 推荐直接给<body>元素定义默认字体,所有子元素都会继承这些属性值。 <bgsound> 用来添加背景音乐,例如: 推荐使用<audio>或者<object>+<embed>来代替,例如: <big> 用来放大字体,放大一号(嵌套多层可以放大更多),不支持的浏览器显示粗体,例如: 至于“号”是怎么定义的就别管了,不推荐使用,建议根据语义采用<em>、<strong>或者自定义样式类代替。 <blink> 可以实现闪烁效果,例如: 支持性很差,不推荐使用,同样不推荐使用(各大浏览器支持<blink>,但没有任何效果): 建议采用<animation>代替 <center> 使内容居中,例如: 效果类似于如下 CSS: 不建议使用,确实没有任何理由去用。 <dir> 目录列表,例如: 效果和<ul>基本相同,浏览器默认样式下列表项的左边距有细微差异。 不推荐使用,建议根据语义采用<ul>、<ol>或者<dl>。 <font> 用来定义字体、字号和颜色,例如: 属性值和<basefont>一样。站群服务器 不推荐使用,建议用 CSS 代替,没理由用这个标签。 <frame> 配合<frameset>分栏,例如: 注意:用<frameset>替换掉<body>。 复杂的后台页面会用到<frameset>+<frame>布局,当然也可以采用 float/flex+Ajax 实现,根据具体场景来定。 <frameset> 见<frame>。 <hgroup> 给一系列标题分组,例如: 虽然提供了一点语义,但因为已经过时,所以不推荐使用。 建议采用<header>代替,例如: <isindex> 单行文本控件,初始显示prompt属性值,例如: 目前支持性很差,不推荐使用,建议用<input>元素代替。 W3C 建议千万不要用: No, really, don’t use it. This element is deprecated. It is not implemented anymore. 具体用法可以参考 http://reference.sitepoint.com/html/isindex。 <listing> 不用管它是什么,微软都不建议使用了: This element is obsolete and should no longer be used. Use HTMLPreElement, code or CSS instead. Renders text in a fixed-width font. <marquee> 滚动字幕,效果很强大,例如: 多用来实现公告,虽然已经过时了,但效果确实很强大,服务器托管而且支持性良好。 <multicol> 用来实现多列布局,不建议使用,任何主流浏览器都不曾支持过。 MDN 称其从未被任何主流浏览器支持过: The HTML element was an experimental element designed to allow multi-column layouts. It never got any significant traction and is not implemented in any major browsers. <nextid> 作用未知,支持性未知,不建议使用。 <nobr> 禁止换行,例如: 不推荐使用,建议用 CSS 代替: <noembed> 在浏览器不支持<embed>时,显示内容,类似于<noscript>,例如: 不推荐使用,如果需要考虑兼容性的话,建议采用<object>+<embed>+<noembed>(embed / noembed 作为 object 的回退)。 <noframes> 在浏览器不支持<frameset>+<frame>时,显示内容,类似于<noscript>,例如: <noframe>标签中可以包含任何能够出现在<body>中的标签。 如果需要考虑兼容性的话,可以作为<frame>的回退,建议采用 float/flex + Ajax 实现,根据具体场景来定。 <plaintext> 忽略内容中的html标签,作用类似于<pre>,例如: 不推荐使用,建议根据语义用<pre>或者<code>代替。 <spacer> 插入空白(white spaces),例如: 主流浏览器都不支持,不推荐使用。 <strike> 删除线,效果类似于<del>和<s>,例如: 不推荐使用,建议用<del>代替。 <tt> 键盘输入(teletype),例如: 不推荐使用,建议根据语义用<kbd>(键盘按键)、<var>(变量)、<code>(代码)、<samp>(样例输出)或者CSS代替。 <xmp> 80 列的样例输出,样式效果类似于<pre>,语义类似于<samp>,例如: 目前浏览器支持该标签,但不限制 80 列。 不推荐使用,建议采用<samp>代替。