Вкладка Elements

Вкладка Elements показывает страницу в текущем состоянии: чем каждый элемент на экране является в разметке и как эта разметка ведёт себя при сужении окна.

Что такое DOM

DOM расшифровывается как Document Object Model — объектная модель документа. Это структура страницы, которую браузер строит из HTML и затем может изменять с помощью скриптов. HTML, который изначально вернул сервер, — отдельный артефакт, он виден во вкладке Network в запросе документа. Если значение есть в Elements, но отсутствует в исходном HTML, его подставил скрипт.

Как найти элемент

Иконка со стрелкой в левом верхнем углу DevTools (ctrl shift c / cmd shift c) выбирает элемент на странице и подсвечивает его в разметке. ctrl f / cmd f внутри дерева Elements выполняет поиск по тексту, CSS-селектору или XPath — тем же селекторам, которые используют автотесты, поэтому уникальность локатора проверяют здесь.

CSS: как выглядит элемент

CSS расшифровывается как Cascading Style Sheets, по-русски — каскадные таблицы стилей. Это язык, на котором описывают внешний вид веб-страницы. HTML описывает структуру и смысл страницы, а CSS — её цвет, шрифт, размер, отступы, границы и положение элементов. Обычно правила CSS находятся в файлах стилей, но могут быть записаны прямо у элемента в атрибуте style.
button { background-color: #f28338; padding: 12px; }
Селектор button выбирает все кнопки. background-color и padding — свойства, а значения после двоеточия задают их вид.
Слово «каскадные» означает, что несколько правил могут пытаться задать одно и то же свойство. Браузер выбирает одно итоговое значение: обычно из более конкретного правила или из правила, записанного позже. Чтобы посмотреть CSS, выбери элемент во вкладке Elements.
Панель Styles показывает подходящие правила, файл-источник и правила, которые были переопределены. В Computed видно итоговое значение, которое браузер применяет на самом деле. Перечёркнутое свойство не работает, потому что его переопределило другое правило.
Цвета и шрифты: один цвет можно записать как #f28338, rgb(242, 131, 56) или hsl(...); это форматы записи, а не разные цвета. Нажмите на цветной квадратик в Styles, чтобы посмотреть цвет или переключить его формат. В font-family может быть список запасных шрифтов: браузер берёт первый установленный. Чтобы подтвердить шрифт, которым текст отрисован на самом деле, откройте Computed и найдите внизу раздел Rendered Fonts.

Пять распространённых тегов

HTML описывает не только внешний вид, но и назначение элементов. Начать удобно с пяти часто встречающихся тегов:
<button>Сохранить</button> — выполняет действие: сохраняет, отправляет или открывает что-то. Получает фокус с клавиатуры и работает по Enter и Space.
<a href="/profile">Профиль</a> — ведёт на другую страницу или к месту на текущей странице.
<label for="email">Email</label> — подписывает поле формы и связывается с <input id="email">.
<img src="photo.jpg" alt="Команда на встрече"> — добавляет изображение; alt описывает важное содержимое для скринридера.
<nav>...</nav> — обозначает группу ссылок для навигации, например главное меню.
Стилизованный <div> может выглядеть как кнопка, не будучи кнопкой. Разница видна в разметке и важна для клавиатуры, скринридера и поведения браузера.

Заголовки: h1, h2 и h3

Заголовки показывают структуру документа. <h1> — главная тема страницы, <h2> — раздел этой темы, а <h3> — подраздел внутри <h2>.
<h1>Изучаем DevTools</h1>
<h2>Вкладка Elements</h2>
<h3>Как найти элемент</h3>
На странице используют один <h1> и не пропускают уровни: после <h2> ставят <h3>, только если это подраздел. Заголовок — не способ увеличить текст: размер задаёт CSS, а тег заголовка — структуру.

Что проверять в разметке

  • Является ли элемент управления настоящим <button> или это <div>. Фокус с клавиатуры получает только первый: пройдите страницу клавишей Tab и отметьте пропущенные элементы.
  • Связано ли каждое поле ввода с <label>. Если связано, клик по подписи ставит фокус в поле; если нет, скринридеру нечего озвучить.
  • Ровно один <h1> и последовательный порядок заголовков без пропусков с <h2> на <h5>.
  • Есть ли у изображений осмысленный атрибут alt, а у декоративных — пустой.

Проверка разрешений экрана

Адаптивная вёрстка — это вёрстка, которая подстраивается под доступную ширину экрана. Один и тот же сайт должен оставаться удобным на узком телефоне, планшете и широком экране компьютера.
Мобильная вёрстка — вариант такой вёрстки для маленьких экранов: колонки обычно становятся одной колонкой, меняется меню, по элементам легче попадать пальцем, а текст не должен уходить за край.
Это важно, потому что страница может выглядеть правильно на ноутбуке разработчика и быть неудобной на телефоне: кнопка окажется за пределами экрана, форму придётся прокручивать по горизонтали или меню закроет содержимое. Проверка только одной десктопной ширины такие дефекты не находит.
Режим device toolbar (ctrl shift m / cmd shift m) задаёт произвольную ширину окна. Проверка строится вокруг брейкпоинтов — ширин, на которых меняется вёрстка, — а не вокруг названий устройств: примерно 360, 768, 1024 и 1280, а также по несколько пикселей с обеих сторон от каждого перехода. На каждой ширине проверьте, что колонки перестраиваются ожидаемо, текст не выходит за границы, элементы управления видны и у страницы не появляется горизонтальная прокрутка. Поворот экрана и зум браузера на 200% — ещё два случая для проверки.

Как внести локальные правки в элемент

В Elements можно временно изменить то, что видите вы в своём браузере: переписать текст, удалить элемент или поменять CSS-свойство, чтобы проверить гипотезу. Это локальные правки: они не меняют сайт для других людей и не передаются на сервер. После перезагрузки страницы все изменения исчезнут.
Зачем это нужно? Чтобы проверить возможную причину дефекта до оформления бага. Например, заменить короткое название товара на очень длинное и посмотреть, сломается ли карточка; скрыть рекламный блок и проверить, не закрывает ли он кнопку; временно изменить цвет или отступ, чтобы показать разработчику ожидаемый результат.
Как изменить текст: выбери его на странице, правый клик → Inspect, затем дважды кликни по тексту между открывающим и закрывающим тегами в Elements. Введи новое значение и нажми Enter.
Как изменить стиль: выбери элемент, найди панель Styles и поменяй значение, например color или margin. Страница обновится сразу.
Как удалить элемент: выбери его тег в Elements и нажми Delete. Чтобы вернуть элемент, перезагрузи страницу.

На собеседовании

На собеседовании по Elements обычно проверяют, умеете ли вы прочитать разметку и использовать её для проверки интерфейса. Попробуйте ответить сами, прежде чем открыть ответ.
juniorначальный уровень знаний
1. Как быстро найти элемент на странице и в разметке?
2. Можно ли исправить текст или CSS во вкладке Elements?
3. Как проверить адаптивную вёрстку через DevTools?
middleболее продвинутый уровень
4. Чем DOM во вкладке Elements отличается от исходного HTML?
5. Почему кнопка в виде div может быть дефектом?
Вопросы по остальным темам собраны на странице Вопросы на собеседовании QA по DevTools.
НазадДалее