Исправлены заголовки с текстовыми полями на сайтах мобильных сафари.

Я некоторое время искал вокруг, и я не могу найти какое-либо решение для этой проблемы. Когда поле ввода получает фокус в мобильном сафари (не проверял другие браузеры), фиксированный элемент будет перепрыгивать из-за того, что сафари отображает этот элемент (ближе к центру). Ошибка возникает только при прокрутке пользователя, если пользователь все еще находится вверху страницы, ничего не происходит.

До и после скриншоты

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

Вот пример сайта на скриншотах, очень простой, ничего необычного.

    <!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, scale=1"/> 
    <title>MySite</title>
    <style>
    body{
        height:100%;
        width:100%;
        padding:0;
        margin:0;
        font-size:16px;
        font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
    }
    header, footer {
        background-color:#333;
        padding:10px;
        color:#FFF;
        width:100%;
    }
    header {
        position:fixed;
        top:0;
        left:0;

    }
    input[type=search] {
        position:relative;
        margin-left:20px;
        width:160px;
        font-size:16px;
        height:26px;
    }
    section{
        padding:10px;
    }
    </style>
</head>
<body>
<header>
<b>MySite</b>
<input type='search' placeholder='Search'>
</header>
<section>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</sction>
<footer>
&copy; MySite <?php echo date('Y') ?>
</footer>
</body>
</html>

Ответы на вопрос(1)

Ваш ответ на вопрос