4

Validation errors验证HTML 5的错误

我得到一组疯狂的错误。我使用的是Bootstrap代码,并没有对其进行编辑。那为什么这会显示一个错误?

sizes属性的link元件必须具有rel属性包含值icon或值apple-touch-icon

...的元素nav的属性role

错误值banner

要看到同样的事情现场,去 https://validator.w3.org/nu并输入:www.iqtests4kids.com/

回答

3

貌似验证与快乐:

<link rel="apple-touch-icon"..... 

,而不是

<link rel="apple-touch-icon-precomposed"...... 

而对于其他错误,您可以通过更改冒犯者使验证者高兴荷兰国际集团role="banner"设置"role=navigation"

<nav id="main-menu" ..... role="navigation"> 

要么离开它,并用所得“警告”或完全省略值(最佳解决方案)的生活和验证会很高兴:)

+1

“W3C已明确建议” - 请阅读您所引用页面的顶部:**不一定代表共识,并且可能包含其他工作组参与者,WAI或W3C不支持的错误信息或信息** – Quentin

+0

“至于Bootstrap:我不熟悉这个应用程序” - 它不是应用程序。它是一个包含一些关联的CSS和JS的模板。 – Quentin

+0

“它自动或半自动地创建HTML和CSS。” - 它没有。 – Quentin

6

的维护者W3C HTML检查器(验证器)在这里。该rel=apple-touch-icon-precomposed错误是因为我最近更新了检查,以符合HTML spec requirements for sizes

sizes属性与icon链接类型使用。该属性不得在link元素中指定,该元素不具有指定icon关键字或apple-touch-icon关键字的rel属性。

关于nav的错误role=banner,那是因为检查符合在ARIA要求HTML规范是nav must not have any role other than navigation

但需要注意的是,在HTML规范also states the following requirement的ARIA:

Web开发人员不应该设置ARIA rolearia-*属性以匹配表中定义的隐式ARIA语义值。

并要求在“表”中引用状态为the implicit semantics of nav are navigation

因此,如果您使用role=navigationnav,检查器将发出警告。

所以底线是,根据HTML要求中的ARIA,nav绝对不应该有明确的role