共计 1741 个字符,预计需要花费 5 分钟才能阅读完成。
随着互联网的发展,许多新技术替代旧技术层出不穷,为什么不赞成使用某些 HTML 元素或者说为什么弃用某些 HTML 元素?
随着互联网的发展,许多新技术替代旧技术层出不尽,我们也司空见惯;在互联网技术中,常常会看见“淘汰、弃用、不赞成使用、建议”等等关键词字眼。往往我们也是只管使用,很少关注其为何被弃用。
HTML 那些被废弃的元素
当然 HTML 作为最基础的文本标记语言也是如此,也会随发展变化而变化。对于 web 前端开发工作人员来说,应该多多少少可以感触到。即便是我们现在所用的 Web 前端一些流行的框架也是如此。
从技术角度而言,不建议使用旧技术,通常情况下,出于其兼容性考虑,部分功能目前依然可正常运作。也就是说,技术上仍然可使用旧的方式处理,也可正常工作,但不建议这样继续下去,尽量迎合新技术与其同步发展。
随着发展变化,正如我们目前所谓的前后端分离,模板程序分离,程序内部模块分离等等都是一个道理,目的各行其事,各个模块专攻自己的任务,不论在问题点上、执行效率或管理上都有一个明确的执行模式。
那么,HTML 也是一样,它属于一种文本标记语言,它该执行的任务就是在人和机器阅读时能够给出最优展示结果,而样式渲染则由 CSS 负责。
为什么不使用部分 HTML 元素或属性,其原因无外乎以下几点。
1、避免重复性定义。
2、可读性与其可管理性。
3、人员精准分配。
4、响应速度与设备的可适应性。
曾经我们常见的 HTML 内容,如:
<center><font face="verdana" color="#2400D3">This is some text!</font></center>
我们可以看出两个元素 center
与font
及其 font
属性 face
与color
,字面上我们可以看出对其所包括的文本进行水平居中且定义其字体与颜色。
这里它却起到了一个样式渲染的工作,看似挺方便,如上所言,实则不妥 …
于是,HTML5 不支持 <center>
标签。建议使用 CSS 将其代替。
不被推荐使用的 HTML 元素,还有哪些?
- <acronym>(<abbr> 改为使用)
- <applet>(使用 <object>)
- <basefont>(使用 CSS 字体属性,如 font-size,font-family 等)
- <big>(使用 CSS font-size)
- <center>(使用 CSS text-align)
- <dir>(使用 <ul>)
- <font>(使用 CSS 字体属性)
- <frame>(使用 <iframe>)
- <frameset>(不再需要)
- <isindex>(不再需要)
- <noframes>(不再需要)
- <s>(text-decoration: line-through 在 CSS 中使用)
- <strike>(text-decoration: line-through 在 CSS 中使用)
- <tt>(使用
)
- <marquee> 曾经用它来插入一段滚动的文字(已过时)
更多信息大家可以参阅这里
为什么不建议使用表格进行布局?
记得上学时我们接触 Web 网页设计与制作看到的就是表格 <table>
布局,也是常用的布局方式,基础布局的确方便,但灵活性非常糟糕;现在更多运用在数据展示上,很少使用其布局页面。所以界面布局,特别是前台界面,尽量避免使用。如同:
<table border="1">
<tr>
<th>Month</th>
<th>Savings</th>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
</table>
看起来也挺方便明了,我们可以定义“页眉 / 页脚 / 标题”等等。
实则:
灵活性太差,渲染速度太慢,不适合移动端布局以及搜索引擎对内容的抓取。
当然,并非它一无是处,我们在后台数据信息展示、统计或没必要机器抓取的数据可以充分利用。
为什么部分元素依然保留?
综上而言,有些人可能会想到其他元素
如:<b>
、<i>
<b>
标签我们实际应用中知道其有加粗效果,用户体验上是为了引起用户的注意,无语义。与之相似的元素就是<strong>
,它具有强调的意义,同时可对搜索引擎增加权重。
<i>
标签页是无语义,斜体显示文本。与之相似的是<em>
,作用同上。
因此呢,对于我们 Web 端开发人员而言,个人建议还是要“与时俱进”,遵循“当前建议”,便于以后更好地迎合新的网络环境!