Мне кажется, что между симулятором chrome и реальным устройством есть 2 возможных различия.
Во-первых, мобильное устройство может игнорировать дубликаты мета-тегов viewport
. Для этого вопроса , хотя один и тот же атрибут name
на нескольких тегах meta
действителен HTML, некоторые браузеры / парсеры могут обрабатывать их некорректно. В этом случае возможно, что на вашем мобильном устройстве используется только второй тег viewport
, поэтому <meta name="viewport" content="width=device-width">
полностью игнорируется.
Вы можете попробовать объединить все в один тег meta
, например: Итак:
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
Вторая разность потенциалов между симулятором chrome и браузером на реальном устройстве заключается в том, что max-device-width
медиазапросы могут не поддерживаться. Согласно документам MDN они устарели. Вы должны попробовать использовать @media (max-width: 400px)