Некоторые функции кросс-браузерных DevTools или "инструментов разработчика", о которых вы, возможно, не знаете

Некоторые функции кросс-браузерных DevTools или "инструментов разработчика", о которых вы, возможно, не знаете
Некоторые функции кросс-браузерных DevTools или "инструментов разработчика", о которых вы, возможно, не знаете

Мы проводим много времени в DevTools, и уверены, что вы тоже. Иногда даже переключаемся между ними, особенно когда отлаживаем кроссбраузерные проблемы. DevTools во многом похожи на сами браузеры — не все функции DevTools одного браузера будут такими же или поддерживаться в DevTools другого браузера.

Но существует довольно много функций DevTools, которые совместимы, даже некоторые менее известные, которыми мы собираемся поделиться с вами.

Для краткости будем использовать “Chromium” для обозначения всех браузеров на базе Chromium, таких как Chrome, Edge, Opera и Яндекс.Браузер. Многие из используемых в них DevTools предлагают абсолютно те же функции и возможности, что и друг у друга, так что это просто сокращение для обозначения их всех сразу.

Поиск узлов в дереве DOM

Иногда дерево DOM заполнено узлами, вложенными в узлы, которые вложены в другие узлы, и так далее. Из-за этого довольно сложно найти именно то, что вы ищете, но вы можете быстро выполнить поиск в дереве DOM с помощью Cmd + F (macOS) или Ctrl + F (Windows).

Кроме того, вы также можете выполнять поиск, используя допустимый CSS-селектор, например .red, или используя XPath, например //div/h1.

Скриншоты DevTools для всех трех браузеров
Поиск текста в Chrome DevTools (слева), селекторы в Firefox DevTools (в центре) и XPath в Safari DevTools (справа)

В браузерах Chromium фокус автоматически переходит к узлу, который соответствует критериям поиска при вводе текста, что может раздражать, если вы работаете с более длинными поисковыми запросами или большим деревом DOM. К счастью, вы можете отключить это поведение, перейдя в Настройки (F1) → Настройки → Глобальный → Поиск по мере ввода → Отключить.

После того, как вы определили местоположение узла в дереве DOM, вы можете прокрутить страницу, чтобы вывести узел в область просмотра, щелкнув правой кнопкой мыши на узле и выбрав “Перейти в режим просмотра”.

Отображение выделенного узла на веб-странице с открытым контекстным меню для прокрутки в поле зрения

Доступ к узлам с консоли

DevTools предоставляет множество различных способов доступа к DOM-узлу непосредственно с консоли.

Например, вы можете использовать $0 для доступа к текущему выбранному узлу в дереве DOM. Браузеры Chromium делают еще один шаг вперед, позволяя вам получать доступ к узлам, выбранным в хронологическом порядке, обратном хронологическому выбору, используя, $1$2$3 и т.д.

Доступ к текущему выбранному узлу осуществляется с консоли в Edge DevTools

Еще одна вещь, которую браузеры Chromium позволяют вам сделать, это скопировать путь к узлу в виде выражения JavaScript в форме document.querySelector, щелкнув правой кнопкой мыши по узлу и выбрав Копировать → Скопировать путь JS, который затем можно использовать для доступа к узлу в консоли.

Вот еще один способ получить доступ к DOM-узлу непосредственно из консоли: в качестве временной переменной. Эта опция доступна при щелчке правой кнопкой мыши на узле и выборе опции. В DevTools каждого браузера эта опция обозначена по-разному:

  • Chromium: щелкните правой кнопкой мыши → “Сохранить как глобальную переменную”
  • Firefox: щелкните правой кнопкой мыши → “Использовать в консоли”
  • Safari: щелкните правой кнопкой мыши → “Элемент журнала”
Скриншот контекстных меню DevTools во всех трех браузерах.
Доступ к узлу в качестве временной переменной в консоли, как показано в Chrome (слева), Firefox (в центре) и Safari (справа)

Визуализируйте элементы с помощью значков

DevTools может помочь визуализировать элементы, соответствующие определенным свойствам, отображая значок рядом с узлом. Значки доступны для просмотра, и разные браузеры предлагают множество разных значков.

В Safari на панели инструментов панели элементов есть кнопка "Значок", с помощью которой можно переключать видимость определенных значков. Например, если к узлу применено объявление CSS display: grid или display: inline-grid, рядом с ним отображается grid значок. При нажатии на значок на странице выделяются области сетки, размеры дорожек, номера строк и многое другое.

Наложение сетки, визуализируемое поверх сетки три на три
Наложение сетки на значки в Safari DevTools

Значки, которые в настоящее время поддерживаются в DevTools Firefox, перечислены в исходных документах Firefox. Например, scroll значок указывает на прокручиваемый элемент. Щелчок по значку выделяет элемент, вызывающий переполнение, с overflow значком рядом с ним.

Значок переполнения в Firefox DevTools, расположенный на панели HTML

В браузерах Chromium вы можете щелкнуть правой кнопкой мыши на любом узле и выбрать “Настройки значков ...”, чтобы открыть контейнер со списком всех доступных значков. Например, элементы с scroll-snap-type будут иметь scroll-snap значок рядом с ним, который при нажатии переключает scroll-snap наложение на этот элемент.

Создание скриншотов

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

Процесс начинается с щелчка правой кнопкой мыши на DOM-узле, который вы хотите захватить. Затем выберите опцию для захвата узла, который помечается по-разному в зависимости от того, какие DevTools вы используете.

Скриншот DevTools во всех трех браузерах
Chrome (слева), Safari (посередине) и Firefox (справа)

Повторите те же действия на html узле, чтобы сделать скриншот всей страницы. Однако, когда вы это сделаете, стоит отметить, что Safari сохраняет прозрачность цвета фона элемента — Chromium и Firefox будут отображать его как белый фон.

Два скриншота одного и того же элемента, один с фоном, а другой без
Сравнение скриншотов в Safari (слева) и Chromium (справа)

Есть еще один вариант! Вы можете сделать “адаптивный” снимок экрана страницы, который позволяет захватить страницу с определенной шириной окна просмотра. Как и следовало ожидать, у каждого браузера есть разные способы добраться туда.

  • ChromiumCmd + Shift + M (macOS) или Ctrl + Shift + M (Windows). Или щелкните значок “Устройства” рядом со значком “Проверить”.
  • Firefox: Инструменты → Инструменты браузера → “Режим адаптивного дизайна”
  • Safari: разработка → “Войдите в режим адаптивного дизайна”
Введите параметры адаптивного режима в DevTools для всех трех браузеров.
Запуск режима адаптивного дизайна в Safari (слева), Firefox (справа) и Chromium (внизу)

Совет Chrome: осмотрите верхний слой

Chrome позволяет визуализировать и проверять элементы верхнего уровня, такие как диалоговое окно, оповещение или модальный. Когда элемент добавляется в #top-layer, рядом с ним появляется top-layer значок, который при нажатии переводит вас в контейнер верхнего уровня, расположенный сразу после </html> тега.

Порядок элементов в top-layer контейнере соответствует порядку размещения, что означает, что последний находится сверху. Щелкните по reveal значку, чтобы вернуться к узлу.

Совет Firefox: перейдите к ID

Firefox связывает элемент, ссылающийся на атрибут ID, с его целевым элементом в том же DOM и выделяет его подчеркиванием. Используйте CMD + Click (macOS) или CTRL + Click (Windows) ) для перехода к целевому элементу с идентификатором.

Подведение итогов

Довольно много всего, не так ли? Потрясающе, что есть несколько невероятно полезных функций DevTools, которые поддерживаются как в Chromium, так и в Firefox и Safari. Есть ли какие-либо другие менее известные функции, поддерживаемые всеми тремя, которые вам нравятся?

Еще советы по DevTools в нашей группе Вконтакте - DevTools >

Понравилась статья?
Будем признательны, если поделитесь в соцсетях или мессенджерах, а также присоединитесь к нашей группе Вконтакте. Будет интересно!

Вас может заинтересовать:

JavaScript 101: сила замыканий
JavaScript 101: сила замыканий

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


Тенденции веб-дизайна в 2018 году
Тенденции веб-дизайна в 2018 году
В 2018 году, дизайнеры начинают разработку чистых и простых сайтов, способных соответствовать стандартам мобильных достижений. Центр внимания сосредотачивается на проекты с прямолинейным, но эффективным и оптимизированным дизайном.

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

Веб-дизайн в 2023 году: бренды флиртуют с цветом, дизайном, социальными сетями и информацией
Веб-дизайн в 2023 году: бренды флиртуют с цветом, дизайном, социальными сетями и информацией
Люди больше не интересуются общими веб-сайтами. Несмотря на то, что сайт эстетически и навигационно приятен, он должен быть привлекательным для пользователя. Большинство брендов уже начали работать над этим и наняли дизайнеров веб-сайтов, которые могли бы им помочь.

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

Веб дизайн в 2021 году
Веб дизайн в 2021 году

Итак, что мы можем ожидать в веб-дизайне в 2021 году?

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


QRcode

2010-2023 © Веб студия iNikSite.ru (г. Подольск). Все права сохранены.

Цены на сайте носят ознакомительный характер и не являются публичной офертой! Просим уточнять цены при отправке заявки в нашу компанию. У нас действуют специальные предложения и скидки на различные варианты исполнения заказа и 100% предоплату!

Мы используем файлы cookie. Они помогают улучшить ваше взаимодействие с сайтом.