<!DOCTYPE html>
...
<link rel='stylesheet' id='basecss-css' href='http://www.someurl.com/modules/14ce1e21/peadig-eucookie.css' type='text/css' media='all' />
为什么验证器(http://validator.w3.org/)拒绝这样做?我不知道的“必需”属性是什么?
错误:
错误行408,列142:元素链接缺少必需的属性属性。…/modules/14ce1e21/peadig-eucookie.css‘type='text/css’/> =‘all’元素的媒体属性链接:全局属性href交叉注册rel媒体hreflang类型大小此外,title属性在此元素上具有特殊语义。
发布于 2013-09-01 03:48:00
来自@stevelove的建议显然是实用的解决方案,但这里有一个“为什么”问题的理论答案:
尽管在旧的超文本标记语言规范中,link
元素在body
中是无条件无效的,但HTML5有更宽松的规则。根据HTML5.1Nightly(或多或少也是验证器试图跟踪的内容),只要link
element具有itemprop
属性,文档主体中也允许使用它(只要允许使用短语内容)。这似乎使错误消息更加令人费解。部分原因是验证器实际上是针对HTML5 + RDFa进行验证的,而RDFa定义了property
属性。问题仍然是验证器正在检查哪个特定的RDFa定义,因为该定义也需要重新定义HTML的规则。
无论如何,错误消息中的信息都是过时的。错误消息的更新速度显然不如验证器的基本功能快。
发布于 2014-12-17 02:46:28
添加
property='stylesheet'
如果您不想将链接移动到文档的<head>
。
<link rel='stylesheet' property='stylesheet' id='basecss-css' href='http://www.someurl.com/modules/14ce1e21/peadig-eucookie.css' type='text/css' media='all' />
发布于 2013-08-31 23:51:30
你的<link>
在<body>
里面吗?如果是这样,请尝试将其放入文档顶部的<head>
中。
https://stackoverflow.com/questions/18549726
复制相似问题