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

Я обычно сталкиваюсь с контентом на сайтах, который явно предназначен для мобильных пользователей, только во время просмотра на компьютере.

User-Agent может помочь в этой ситуации.

MDN определяет пользовательский агент как

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

Общий формат строки пользовательского агента выглядит следующим образом:

Мозилла/5.0 (<system-information>) <platform> (<platform-details>) <extensions>

Обнаружить устройство пользователя

Чтобы узнать, находится ли пользователь на мобильном телефоне, найдите «Mobi» в строке пользовательского агента, как вы можете видеть в примере ниже.

Пример выше приводит к

Демонстрационный пример на настольном устройстве

Демонстрационный пример на мобильном устройстве

Протестируйте в своем браузере

Чтобы проверить это в своем браузере, откройте инструменты разработчика и щелкните значок «переключить устройство». Обновите страницу, чтобы изменения вступили в силу

Практический пример

Вот практический пример этого в моем приложении React.
Я использовал это в федеративном входе

Вывод

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

Подробнее о документах MDN