【发布时间】:2011-06-19 09:13:06
【问题描述】:
我喜欢 YSlow。并在遵守规则时尝试使用常识。但是为了好玩,我试图让我的 ASP.NET MVC 站点获得 100 分。而且我快到了(目前为 99 分,甚至将我的站点镜像到不同的服务器并更改 about:config 以模拟 CDN )。
经过测试,我发现要在规则 8 上获得满分(2 个内联脚本会被扣一分),您必须违反 HTML5 语法规则(根据the w3c validator)。我认为这也适用于 HTML4 语法规则。
例如不扣分(违反 HTML5 语法规则):
<script type="text/javascript" src="/ui/scripts/lib/core.js" />
对于有效的 HTML5,但会扣除 YSlow 分数:
<script type="text/javascript" src="/ui/scripts/lib/core.js"></script>
我的假设是,在某种意义上这是正确的,因为网络浏览器将扫描第二个示例中的任何脚本,而不是第一个示例中的任何脚本(因为第二个是打开和关闭标记)。
有没有人知道另一种解决方法?一个完美的 100 分能否仍然具有有效的 HTML5?
【问题讨论】: