HTML5 `<link rel=“shortcut icon” />`

2019-01-16 18:04发布

问题:

The WHATWG document for HTML5 says that the rel attribute must contain values that are space-separated, and then it gives a table of allowed values.

The attribue's value must be a set of space-separated tokens. The allowed keywords and their meanings...

The list of allowed keywords for the link element does not include shortcut, but it does include icon. So I'm looking at the all-too-well-known tag

<link rel="shortcut icon" href="/favicon.ico" />

and wondering if it is HTML5-compliant. Should I remove the keyword shortcut from this tag throughout my Website?

回答1:

From the same WHATWG document:

For historical reasons, the icon keyword may be preceded by the keyword "shortcut". If the "shortcut" keyword is present, it must be come immediately before the icon keyword and the two keywords must be separated by only a single U+0020 SPACE character.



回答2:

Update: According to this page https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types

The shortcut link type is often seen before icon, but this link type is non-conforming, ignored and web authors must not use it anymore.

Also, I don't see any references of shortcut in the W3C documentation, so I think it's better to leave it out. https://www.w3schools.com/tags/att_link_rel.asp



回答3:

Although it is still in its experimental stage (because HTML5 dev is ongoing), the w3.org HTML5 Markup Validator is a good online tool you can check out. I used it extensively about 6 months ago and it always gave back accurate HTML5 syntax reports.