html – 是否允许多行元内容值?

前端之家收集整理的这篇文章主要介绍了html – 是否允许多行元内容值?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我使用Meta http-equiv =“Content-Security-Policy”标记将域列入白名单.这个列表变得非常大,所以我想知道在内容值中使用新行是否可以?

<Meta http-equiv="Content-Security-Policy" content="
   default-src 'self' http://example.com;
   style-src 'self' 'unsafe-inline' http://example.com;
   script-src 'self' 'unsafe-inline' http://example.com;
">

编辑:刚发现validator.w3.org显示多行内容值的错误,所以我想这是不允许的.

最佳答案
这里有W3C HTML Checker(也就是验证者)的维护者. HTML检查器不报告多行内容值的错误.它为上面的示例报告的错误是:

Bad value Content-Security-Policy for attribute http-equiv on element Meta

也就是说,错误是针对http-equiv属性,而不是针对content属性.

但是请尝试将您的来源更改为:

<Meta name="Content-Security-Policy" content="
   default-src 'self' http://example.com;
   style-src 'self' 'unsafe-inline' http://example.com;
   script-src 'self' 'unsafe-inline' http://example.com;
">

……你会发现它没有报告错误.

所以,你看到的错误是因为:如果Meta元素有一个http-equiv属性,那么according to the HTML spec the value of the http-equiv must be one of the following

>内容类型
>默认样式
>刷新
> X-UA兼容

所以HTML规范(尚未)允许http-equiv =“Content-Security-Policy”.

总而言之,这是W3C HTML检查器中的一个错误,因为检查器应该支持http-equiv =“Content-Security-Policy,遵循details provided about http-equiv="Content-Security-Policy in the Content Security Policy spec.

刚才我raised a checker bug for it.

这基本上也是HTML规范中的一个错误,因为此时HTML规范本身也应该说允许使用http-equiv =“Content-Security-Policy”.所以I’ve raised a bug against the HTML spec for this将http-equiv =“Content-Security-Policy”添加到我上面引用的HTML规范的Pragma directives部分,并且这个补丁可能会在本周晚些时候合并到规范中.

猜你在找的HTML相关文章