Это сложная проблема, чтобы получить «право».Вы можете попытаться скрыть нижний колонтитул на фокусе элемента ввода и показать размытость, но это не всегда надежно на iOS.Время от времени (скажем, один раз в десять на моем iPhone 4S) событие фокусировки, похоже, не срабатывает (или, может быть, есть условие гонки), и нижний колонтитул не скрывается.
После большогометодом проб и ошибок, я пришел к этому интересному решению:
<head>
...various JS and CSS imports...
<script type="text/javascript">
document.write( '<style>#footer{visibility:hidden}@media(min-height:' + ($( window ).height() - 10) + 'px){#footer{visibility:visible}}</style>' );
</script>
</head>
По существу: используйте JavaScript, чтобы определить высоту окна устройства, затем динамически создайте медиазапрос CSS, чтобы скрыть нижний колонтитул, когда высотаокно сжимается на 10 пикселей.Поскольку открытие клавиатуры изменяет размер экрана браузера, на iOS это никогда не заканчивается.Поскольку он использует движок CSS, а не JavaScript, он гораздо быстрее и плавнее!
Примечание. Я обнаружил, что использование «видимости: скрыто» менее броско, чем «отображение: нет» или «позиция: статика», но вашпробег может варьироваться.