Безопасные зоны iPhone X внезапно перестали работать - PullRequest
0 голосов
/ 26 сентября 2019

Хорошо, я признаю, что это не внезапно, но я изменил несколько вещей.Мое приложение работает под управлением Cordova iOS 5.0.1 (обновлено с 4.5.4).Я также использую последнюю версию cordova-plugin-statusbar, и это, кажется, исправляет основные безопасные области приложения при добавлении:

<preference name="StatusBarOverlaysWebView" value="false" />

, но у меня внезапно возникают проблемы вДно , где нижняя кнопка iPhone находится над содержимым.Или, точнее, содержание идет под ним и не относится к безопасной области.

В основном это происходит:

enter image description here

Это происходит в 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 и сохраняющую ее на будущее.

Что-то мне не хватает?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...