Технический сбой

Сайт временно работает в режиме только для чтения, идут восстановительные работы. Приносим свои извинения за неудобства.
DLE FAQ » Все вопросы » Общие вопросы по PHP » Как сократить структуру DOM?

Как сократить структуру DOM?


     dom, СЕО    Все вопросы » Общие вопросы по PHP    2264

вопрос
добрый день, знатоки

при проверке сайта на pagespeed от гугла выходит структура dom
задаю вопрос так как незнаю что такое dom и как работает
Как сократить структуру DOM?

Ответа пока нет


14 комментариев

леший
Гости

леший - -


Глубина вложенности 17. То есть только на отрисовку данной ссылки браузер потратит примерно 170 миллисекунд. Я даже представить себе не могу, что там можно так глубоко вкладывать.
 body => header => section => div => nav => ul => li =>a
Это при самом худшем раскладе седьмой уровень вложенности, ну максимум ещё два уровня, если в li вложить ещё один ul, но это уже потолок...

Pringles
Юзер

Pringles - -

Ты не прав, не забывай что есть такие вещи как обертка в контейнеры или те же сетки. Пример тому бутстрап или материал, хочешь или нет, ты получишь большую вложенность в зависимости от сложности макета или базовых контейнеров фреймворков. А по существу вопроса сократить можно не отдавая дом сразу, а подгружая по мере необходимости по Ajax

леший
Гости

леший - -

А div между section и nav это по Вашему что? Это и есть обёртка в контейнер.

Pringles
Юзер

Pringles - -

Я даже не знаю какой должен быть случай чтобы ваша схема работала.
В основном как пример схема такая, к примеру на бутстрап:
body -> div.container -> .header -> div.row -> div.col.lg-6 -> div.row -> div.lg-3 -> ul-> li -> ul > li > a
И это самый простой вариант...

леший
Гости

леший - -

Даже в Вашем примере уровень вложенности 11 и то, даже Ваш случай можно сократить до 9-го уровня вложенности. А если Вы даже не знаете в каком случае представленная мной схема будет работать, значит Вы никогда не верстали вручную, без использования различных фреймворков, где куча лишнего кода, который не используется в 95% случаев.

Pringles
Юзер

Pringles - -

Безполезно что-то доказывать. Каждый при своем суждении.

redissx
Юзер

redissx - -

Цитата: леший
Глубина вложенности 17. То есть только на отрисовку данной ссылки браузер потратит примерно 170 миллисекунд.

Откуда данные и как считать? А 10 ссылок 170*10 = 1.7 секунд? Поясните как считать, пожалуйста.

леший
Гости

леший - -

На отрисовку каждого уровня вложенности браузер тратит 10 миллисекунд, чем больше у Вас блоков с глубоким уровнем вложенности, тем дольше будет грузиться Ваш сайт, это очень заметно на слабых ПК/ноутбуках, а так же на мобильных девайсах. Например Google Chrome на моём телефоне виснет уже при уровне вложенности 500 (плюс-минус 30 уровней). Если интересно, то можете поэкспериментировать

Rudoy
ГипноКотЭ

Rudoy - -

Дотянул до 653, кто больше? :D

redissx
Юзер

redissx - -

Откуда информация что "На отрисовку каждого уровня вложенности браузер тратит 10 миллисекунд"? Если бы это было так, если бы браузер тратил фиксированное время на один уровень, то тогда бы смартфон любой мощности получается отрисовывал одно и то же одинаковое время, но ведь это не так.

doom45
Юзер

doom45 - -

Норм это "Максимальная глубина вложенности DOM 17". Лучше уменьшить общее кол-во

Rudoy
ГипноКотЭ

Rudoy - -


Хе хе, у меня то же самое, ничего критичного, в основном проблема из за рейтинга

To3ls
Юзер

To3ls - -

Используйте xhr , подгружайте (дорисовка) блоки(ов) . Смотрите чтобы теги были закрыты.

Rudoy
ГипноКотЭ

Rudoy - -

Вот кстати я писал выше что у меня тоже вложеность 16. Тег был не закрыт)))

Похожие вопросы

наверх