使用过时的或尚未实现的HTML标记有什么不对?不使用它们会改善旧版浏览器的可移植性吗?例如,今天在验证一些HTML文档时,我收到了这两条消息:
警告:script元素的language属性已过时。您 可以安全地省略它。
警告:浏览器尚不支持bdi元素。
我用
<script language="javascript" type="text/javascript">
因为如果用户使用的是非常过时的浏览器(例如IE 5),它不解释属性类型,它仍然可以解释“过时”属性语言
和
<bdi>
如果用户使用足够更新的浏览器来解释它。
据我所知,如果一个浏览器没有“知道”一个属性/元素,它就会省略它,所以可以这样做或者我错过了什么吗?
答案 0 :(得分:2)
好吧,只要页面不需要工作,使用过时的标签就没问题。我会避免使用像<marquee>
这样的东西,但我认为没有理由说你的脚本元素是错误的。但是,如果可能,我会避免使用你的bdi标签,因为并非所有浏览器都可以使用它。
答案 1 :(得分:1)
根据HTML5的W3C(草案)规范,只要它遵循一些规则就可以在标签上使用语言属性。该规范称之为“过时但符合要求的警告”。所以我不会太担心那个。
http://dev.w3.org/html5/spec/Overview.html#warnings-for-obsolete-but-conforming-features
对于其他过时的属性,我创建了一个小书签,可以从页面中删除过时的(在HTML5中)属性,这样您就可以直观地看到如果浏览器最终完全不支持该属性会发生什么样的效果。在这里查看 - &gt; attrebuke