4

我喜欢 YSlow。并在遵守规则时尝试使用常识。但为了好玩,我试图让我的 ASP.NET MVC 站点获得 100 分。而且我快到了(目前为 99 分,甚至将我的站点镜像到不同的服务器并更改 about:config 以模拟 CDN )。

经过测试,我发现要在规则 8 上获得满分(我会因为 2 个内联脚本而被扣一分),你必须违反 HTML5 语法规则(根据w3c 验证器)。我认为这也适用于 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>

我的假设是,在某种意义上这是正确的,因为网络浏览器将扫描第二个示例中的任何脚本,而不是第一个示例(因为第二个是打开和关闭标签)。

有谁知道解决这个问题的另一种方法?一个 socre 一个完美的 100 并且仍然有有效的 HTML5 吗?

4

1 回答 1

4

在这两种情况下,您都可以摆脱type="text/javascript"来自 script 标签。但是,是的,您需要一个结束脚本标记。

YSlow 在这里不正确。

于 2011-02-01T20:10:11.400 回答