ちょうどCSSであなたのPWAでノッチを避けてください
仕事では、私は通常、迅速かつ反応ネイティブのネイティブモバイルアプリケーションを作成しています.しかし、新しいプロジェクトのために、我々はそれが進歩的なWebアプリを実装する方が良いと決めた.私はHTML、CSS&JavaScriptの経験があるので、問題はないと思いました.
私たちが新しい敵に会うまで、すべては計画に従って行っていました:iPhone X.
すみません、それらのボタンをタップしたいです!
ネイティブの背景
ネイティブの世界では、我々は安全なエリアと呼ばれる何かを持っています、我々は内部にものを置くことができて、彼らがノッチと一番下の地域の外にいると確信します.
この方法は、画面の上部にいくつかのコンポーネントを配置するアプリを伝えることは簡単ですが、途中でノッチがある場合は少し下に移動します.
PWAについては、その愚かなボトムバーを回避する最も簡単な方法は、いくつかの
環境変数
ご存知のように、カスタムCSS変数を
それらをサポートするブラウザでは、ボトムパディングを
同様に、top, left and right screen edgesの変数もある.
成功!
私たちが新しい敵に会うまで、すべては計画に従って行っていました:iPhone X.
すみません、それらのボタンをタップしたいです!
ネイティブの背景
ネイティブの世界では、我々は安全なエリアと呼ばれる何かを持っています、我々は内部にものを置くことができて、彼らがノッチと一番下の地域の外にいると確信します.
この方法は、画面の上部にいくつかのコンポーネントを配置するアプリを伝えることは簡単ですが、途中でノッチがある場合は少し下に移動します.
PWAについては、その愚かなボトムバーを回避する最も簡単な方法は、いくつかの
padding-bottom
を追加することによってですが、それは他のすべてのデバイスを壊すでしょう.私はJavaScriptでCSSクラスを条件的に加えると思いました、しかし、それはハックのようでした.環境変数
ご存知のように、カスタムCSS変数を
var(--padding-bottom)
で定義することができます.同様に、ブラウザも自分自身を定義することができます.彼らは標準化の過程にあるが、アップルは自分たちの一部を作った..navbar {
padding-bottom: 0;
padding-bottom: env(safe-area-inset-bottom, 0);
}
環境変数をまだサポートしていないブラウザ用のボトムパディングを定義します.我々が第一の規則を省略することになっているならば、第2のものは壊れていて、何も適用されません.それらをサポートするブラウザでは、ボトムパディングを
safe-area-inset-bottom
に等しくし、変数が設定されていない場合は0
に立ち下がります.同様に、top, left and right screen edgesの変数もある.
成功!
Reference
この問題について(ちょうどCSSであなたのPWAでノッチを避けてください), 我々は、より多くの情報をここで見つけました https://dev.to/marionauta/avoid-notches-in-your-pwa-with-just-css-al7テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol