Я изучал эту проблему в течение последнего часа и видел похожие вопросы, но я не уверен, что это одна и та же проблема. Вероятно, как-то связано, но ни один из ответов не помог мне решить мою проблему.
Возьмите следующий код:
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
html, body {
height: 100%;
margin: 0;
}
main {
background-color: orange;
height: 1500px;
margin: 50px;
}
footer {
background-color: green;
position: fixed;
height: 50px;
left: 100px;
right: 100px;
bottom: 100px;
}
</style>
</head>
<body>
<main></main>
<footer></footer>
</body>
</html>
Это трудно отлаживать, потому что я не могу последовательно воспроизвести проблему. Я продолжаю прокручивать вверх и вниз — отображать и скрывать адресную строку в Chrome для Android — в конечном итоге произойдет что-то вроде этого:
По какой-то причине footer
рисуется в правильном месте (как указано в CSS), но инструменты разработчика Chrome обнаруживают элемент в другом положении (не всегда так, как показано на скриншоте).
Почему это проблема?
Предположим, что у меня есть интерактивные элементы внутри footer
, интерактивная область для этих элементов будет находиться в «синей» области, обнаруженной инструментами разработчика Chrome, а не там, где на самом деле рисуется нижний колонтитул (зеленая область), как это должно быть, потому что это то, что пользователь видит.
Мысли?
position: absolute
, если это вариант, ИЛИ блокировка области просмотра, чтобы адресная строка никогда не скрывалась. - person James   schedule 21.06.2018