使用一致行为但已弃用的HTML标记的缺点?

时间:2014-05-04 07:12:43

标签: html css deprecated

当用户访问我的网站时,他们并不关心完美标准页面的编码方式。他们只关心它是否有效。

有些标签已被弃用但在所有主要,次要和非常小的浏览器中都具有一致的行为。他们现在正在工作will work in the future。 (我不是在谈论可选标签,例如<marquee><blink>,它们将来可能会被删除,因为它们的不存在不会破坏页面。)标签我所说的是例如:

  • <center>google.com主页使用,是的,是2014年5月)

  • <body bgcolor=alink=vlink=link=(全部由google.com使用)

  • <font size=(也由google.com使用)

如果我的HTML生成器生成<body bgcolor=black>之类的标签,则保证可以为接近100%的用户使用。

如果它改为生成类似background:black;的CSS,那么与<body bgcolor=black>相比,较少用户会支持它。 (从https://superuser.com/q/732669/78897https://superuser.com/q/447269/78897开始,但我确定它们是not the only ones in the whole world。)

请耐心等待,这是一个基于真实问题的真实问题。 将这些标记作为输出的真正的缺点究竟是什么?

6 个答案:

答案 0 :(得分:3)

潜在的缺点包括:

1)您的客户可能真正关心代码的标准。也许不是现在,但将来。也许是出于可疑的原因,但仍然如此。

2)过时的构造并不总是一致的。例如,根据浏览器模式,align=center上设置的table属性可能会产生不同的效果。然而,这是一个相对较弱的论点,因为浏览器实践在HTML5 CR中已经得到了很好的描述,您可以管理潜在的问题。 (此外,即使CSS设置也可能不一致。)

3)无法保证所有未来浏览器都支持已弃用的功能。另一方面,这同样适用于标准特征。实际上,HTML规范中定义的很少的功能实际上已从浏览器中删除。 (关于标签,我认为basefont是唯一的情况。)所有提到的例子,以及marquee,已在HTML5 CR中描述为“过时”但仍然定义明确,并且根据HTML5 CR,浏览器是预期的,部分是必需的,以支持它们。

4)您的同事(设计人员/开发人员/ ...)可能会将您的代码(和您)视为老式,非语义等等。

5)代码维护和开发可能更困难。如果您有1,000页<body bgcolor=black>并且客户说他们想要稍微不同的背景颜色,则需要编辑每个页面。然而,这个论点比看起来要弱。首先,这些事情经常发生的频率如何?其次,如果页面实际上是使用合适的工具生成的,那么您可能只需要更改一个参数的值并重新生成它们(或者只是让服务器执行此操作,如果页面是动态生成的)。第三,如果所有页面上都有link元素,请参阅页面的基本样式表,正常情况下,您只需要在该样式表中添加一个规则。使用CSS轻松覆盖表示HTML属性。

总而言之,反对你的方法的实际论据相当薄弱。最重要的论点与编码风格和原则有关。

答案 1 :(得分:2)

我添加了一些更多的缺点:

  1. 使用这些标签的另一个缺点是网站带宽。每当浏览器需要加载整个内容时,即使每个页面上的标签都相同,或者即使用户多次访问此站点,您也会放入html中心,bgcolor和类似标签。但是当您将设计放在css文件中时,浏览器可能会缓存这些文件(特别是当您正确设置标头时),因此它们只加载html和图像(如果没有设置缓存)。

  2. 另一件事是,如果您决定重新设计网站/样式新元素,那么仅将更改放在CSS文件中要容易得多。未来您可能无法在自己或其他公司进行这些更改/自由职业者将会这样做,并且他们将更容易在网站上进行更改。因此,维护网站的成本会更低。

  3. 此外,如果html / php代码较差(或网站非常复杂)和许多&#34;视觉条件&#34;出现在许多文件中(例如,在一个页面上,您决定使用一种颜色,然后将其放在HTML中,另一种颜色放在另一种颜色上)出现问题会更容易找到问题,因为您可能会简单地剪切一些css和检查问题所在。

答案 2 :(得分:1)

缺点是当其中一个主要浏览器选择在将来的版本中删除已弃用的标记时。

答案 3 :(得分:1)

使用CSS而非标签的优点是,您可以通过简单的移动来更改整个网站的外观。

考虑需要更大字体大小的人。色盲也可以最大限度地利用屏幕阅读器。

答案 4 :(得分:0)

甚至可以从浏览器中删除这些一致的行为标签。如果您想创建HTML5网站怎么办?然后,您需要从头开始学习所有内容,并为您的网站更改所有内容以使其正常工作,因为您永远不知道将来是否支持HTML 5中的这些标记,还是只支持旧的HTML文档

答案 5 :(得分:0)

CSS为一个人提供了更轻松的维护;客户决定他们想要一些元素左对齐而不是中心?改变你的css规则和噗,你已经完成了。但是,如果你正在使用旧式的valign等等?准备好更改文件中每个实例。