Правило YSlow 8 (Сделать JavaScript и CSS внешним) против действительного HTML5 - PullRequest
4 голосов
/ 01 февраля 2011

Мне нравится YSlow.И старайтесь руководствоваться здравым смыслом, следуя его правилам.Но ради интереса я пытаюсь, чтобы мой сайт ASP.NET MVC набрал 100 баллов. И я почти на месте (на данный момент на 99 даже зеркально отразил мой сайт на другом сервере и изменил about: config для имитации CDN).).

И после тестирования я обнаружил, что для получения идеального результата по правилу 8 (где я получаю одно очко за 2 встроенных скрипта) необходимо нарушить правила синтаксиса HTML5 (согласно * 1003).* валидатор 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>

Моя гипотеза состоит в том, что в некотором смысле это правильно, поскольку веб-браузер будет сканировать любой сценарий во втором примере, а не в первом (поскольку второй является тегом открытия и закрытия).

Кто-нибудь знает другой способ обойти это?Может ли один сокр получить идеальную сотню и при этом иметь действительный HTML5?

1 Ответ

4 голосов
/ 01 февраля 2011

В обоих случаях вы можете избавиться от type="text/javascript" из тега script. Но да, вам нужен закрывающий скрипт-тег.

YSlow здесь неверно.

...