TransWikia.com

Как убрать увеличение экрана на IPhone при нажатии на select (или input) без увеличения размера шрифта?

Stack Overflow на русском Asked on December 19, 2021

Знаю про решение с увеличением шрифта элементов формы

 @media (max-width: 580px) {
  input, select {
    font-size: 16px;
  }
}

Но хотелось быть узнать есть ли еще какие-нибудь решения

2 Answers

Есть два варианта:

1. Шрифт не менее 16px

2. Запрет масштабирования <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">

Но я бы не рекомендовал отключать масштабирование. Это неправильное решение. Лучше через CSS исправить эту проблему:

@media screen and (-webkit-min-device-pixel-ratio: 0) {
select:focus, textarea:focus, input:focus {
        font-size: 16px;
    }
}

Answered by Денис Небесный on December 19, 2021

Для iphone 9 и ниже (для 10 уже не работает) можно было добавить user-scalable=0 у viewport

<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0"/>

Можно, как пример, этот viewport менять js'ом, что-то типа этого:

if (/iPhone/.test(navigator.userAgent) && !window.MSStream)
{
    $(document).on("focus", "input, textarea, select", function()
    {
        $('meta[name=viewport]').remove();
        $('head').append('<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0">');
    });

    $(document).on("blur", "input, textarea, select", function()
    {
        $('meta[name=viewport]').remove();
        $('head').append('<meta name="viewport" content="width=device-width, initial-scale=1">');
    });
}

Answered by InDevX on December 19, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP