Хорошо, я признаю, что это не внезапно, но я изменил несколько вещей.Мое приложение работает под управлением Cordova iOS 5.0.1 (обновлено с 4.5.4).Я также использую последнюю версию cordova-plugin-statusbar
, и это, кажется, исправляет основные безопасные области приложения при добавлении:
<preference name="StatusBarOverlaysWebView" value="false" />
, но у меня внезапно возникают проблемы вДно , где нижняя кнопка iPhone находится над содержимым.Или, точнее, содержание идет под ним и не относится к безопасной области.
В основном это происходит:

Это происходит в iPhone X and XR
на iOS 12.1
.
Мой тег окна просмотра должен быть в порядке, это:
<meta name="viewport" content="width=device-width,initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover">
У меня также Storyboards
установлен правильнои я применяю следующий CSS:
body{
margin-top: constant(safe-area-inset-top);
margin-top: env(safe-area-inset-top);
margin-bottom: constant(safe-area-inset-bottom);
margin-bottom: env(safe-area-inset-bottom);
padding-top: constant(safe-area-inset-top);
padding-top: env(safe-area-inset-top);
padding-bottom: constant(safe-area-inset-bottom);
padding-bottom: env(safe-area-inset-bottom);
margin-top: calc(0px - env(safe-area-inset-top)) !important;
padding-top: calc(0px - env(safe-area-inset-top)) !important;
margin-bottom: calc(0px - env(safe-area-inset-bottom)) !important;
padding-bottom: calc(0px - env(safe-area-inset-bottom)) !important;
}
Эти настройки, используемые для , работали нормально, пока я не обновил iOS 4.5.4 до 5.0.1 .
Как вы можете видеть, я пробовал и с margin
и padding
, а также с constant
и env
.
Я также пытался добавить height:100vh;
, но это также нене поможетЯ даже пробовал !important;
на всех правилах CSS, и это тоже не исправляет.
Что работает устанавливает:
function onDeviceReady() {
// detect here if device is iPhone X or XR
$("body").css({ 'margin-bottom': '34px' });
}
Однако этоболь, нацеленная на каждую версию iPhone / iPad и сохраняющую ее на будущее.
Что-то мне не хватает?