Верстка · Senior · Запитання 6 з 75

Що таке layout thrashing (forced synchronous layout)?

for (const el of items) {
  el.style.width = box.offsetWidth + "px";
}

Пояснення

Читання offsetWidth після запису стилю змушує браузер синхронно перерахувати layout, щоб повернути актуальне значення. У циклі це відбувається на кожній ітерації. Рішення - спершу прочитати всі значення, потім записати (batch reads/writes), або винести читання з циклу. Допомагають і бібліотеки на кшталт fastdom.

Де почитати

Помилка в запитанні

Верстка · Senior · запитання 6

Перевірте себе

Пройдіть тест Верстка · Senior: запитання й варіанти перемішуються, а наприкінці - розбір помилок.

Пройти цей тест