левый и верхний поля отображаются после отображения клавиатуры в WebView - PullRequest
0 голосов
/ 25 ноября 2011

У меня есть веб-приложение в PhoneGap с шириной и высотой 100%, и оно заполняет всю страницу, но когда я ввожу или пытаюсь ввести значение (числовое) в поле <input>, 2-3 пикселяширокий край появляется сверху и справа от страницы.Я даже пытался изменить поле body до -3px со всех сторон после этого, но все же белый разрыв остается, он пока что появляется только в Android 2.2 и 2.3.Это ошибка, или я единственный, у кого есть эта проблема?

Ответы [ 3 ]

0 голосов
/ 12 января 2012

Я обнаружил эту ошибку в приложении, над которым я работаю. Я убежден, что это ошибка на Android 2.2 и выше. Я попробовал несколько возможных решений и нашел то, что работает. К сожалению, я не знаю, почему это работает. Он состоит из трех частей.

В файле css я вставил следующее:

#offset_wrapper {
      position: absolute;
      top: -20px;
}

Каждый раз, когда приложение переходит на страницу, содержащую элементы с фиксированной позицией, мы вставляли следующий фрагмент кода:

$("div#main_container").append("<div id='offset_wrapper'>" + window.pageXOffset + "</div>");

Впоследствии каждый раз, когда приложение перемещается с этих страниц, применяется приведенный ниже код.

$("#offset_wrapper").remove();
0 голосов
/ 10 марта 2015

Старый, я знаю, но я исправил эту или очень похожую проблему в приложении PhoneGap, указав не left:0 для моих фиксированных элементов.Обычно я держал только верх или низ, указанные для моего фиксированного заголовка навигации и элементов нижнего колонтитула 100% ширины.

Когда клавиатура вылетела, появилось около 5 пикселей поля.Добавление left:0 остановило это для меня.

0 голосов
/ 24 декабря 2011

Это было связано с фиксированными верхними и нижними колонтитулами. При переходе на страницу, где находятся входные данные, я изменил атрибут позиции css для верхнего и нижнего колонтитула на фиксированный и положение тела по умолчанию (css('position', '')) в jQuery. При переходе на страницу, где требуется фиксированная позиция, я просто изменил ее обратно.

...