Определяют ли дополнительные закрывающие теги HTML (например, </TR>) дополнительные расходы для анализатора HTML браузера? - PullRequest
2 голосов
/ 26 октября 2010

Согласно этому недавнему вопросу , стандарт HTML 4 указывает, что закрывающие теги </TD> / </TR> являются необязательными.

Вопрос в том, если вы пишете свой HTML, пропуская закрывающие эти тегитеги, повлияет ли это на объем работы, которую должен выполнять HTML-парсер браузера в ту или иную сторону?

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

Я думаю, что будет скромный выигрыш от меньшего количества текста для анализа и без потерь, так как должен быть код для анализа открывающего тегав любом случае, внутри TD или TR, даже если закрывающие теги не являются обязательными;и поэтому единственная стоимость кода для того, чтобы сделать их необязательными, это проверка того, является ли открытый тег, содержащийся в <TD>, другим <TD> или <TR> без ранее встречавшегося вложенного <TABLE> ... не похоже наочень дорогое дополнение.

1 Ответ

3 голосов
/ 26 октября 2010

Я создал голую HTML-страницу с безумно большой таблицей: 100 000 ячеек распределены по 1000 столбцам и 100 строкам, каждая из которых заполнена знаком «x».Допустимый XHTML-файл имеет размер около 10 МБ, а действительный HTML-код - около 5 МБ.Я проверил это в 3 прогонах на FF 3.6.11 и IE8.Браузеры запускаются чистыми при каждом запуске.

FF занимал в среднем 2 минуты и 5 секунд для действительного XHTML, одну, 1 минуту и ​​15 секунд для действительного HTML.

IE8 в среднем занимал1 минута и 40 секунд для действительного XHTML и то же время для действительного HTML.Тем не менее, он заканчивается пустой страницей во всех случаях.

Приведенные выше результаты открыты для дальнейшей интерпретации.Для меня, я бы больше беспокоился о пропускной способности сети и ее обслуживании, чем о возможностях браузера.Пропускная способность сети стоит больше $$$.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...