CSSをiPhoneのフルスクリーンに適応させる方法

CSSをiPhoneのフルスクリーンに適応させる方法

1. メディアクエリ方式

/*iPhone X への適応*/
@media 画面のみ、(デバイス幅: 375px)、(デバイス高さ: 812px)、(-webkit-device-pixel-ratio: 3) {
 .固定ボトム{
 下: 37px;
 }
}
/*iPhone XS max への適応*/
@media 画面のみ、(デバイス幅: 414px)、(デバイス高さ: 896px)、(-webkit-device-pixel-ratio: 3) {
 .固定ボトム{
 下: 37px;
 }
}
/*iPhone XR max への適応*/
@media 画面のみ、(デバイス幅: 414px)、(デバイス高さ: 896px)、(-webkit-device-pixel-ratio: 2) {
 .固定ボトム{
 下: 37px;
 }
}

既存の問題: WeChat Webview では、このソリューションにより、要素の下部に安全領域の幅を問題なく追加できます。ただし、Safari などの下部バーがあるブラウザ(ページ表示領域がすでにセーフエリア内にある)では、セーフエリアの幅も追加されます。

CSS関数

これは、フルスクリーン版のリリース後に Apple が提供した CSS 関数です。ios<11.2 の場合は constant()、ios>11.2 の場合は env() です。安全領域の上、下、左、右の幅に対応するように、safe-area-inset-top、safe-area-inset-left、safe-area-inset-right、safe-area-inset-bottom を入力できます。 env と constant は viewport-fit=cover の場合にのみ有効になります。

コードは次のとおりです。

メタタグにviewport-fit=coverを追加する

<meta name="viewport" content="width=デバイス幅、初期スケール=1、最大スケール=1、ユーザースケーラブル=いいえ、ビューポートフィット=カバー">

CSSの記述方法。envとconstantをサポートしていないブラウザはこのスタイルを無視します。

.固定ボトム{
 下部: 0;
 下部: 定数(セーフエリアインセット下部);
 下部: env(safe-area-inset-bottom);
}

この解決策は解決策1の問題を解決でき、コードはより簡潔です

フルスクリーン iPhone に CSS を適応させる方法についての記事はこれで終わりです。フルスクリーン iPhone に CSS を適応させる方法に関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

<<:  a タグにはテキストと画像があります。テキストを非表示にして画像のみを表示するにはどうすればよいでしょうか?

>>:  offsetWidth、clientWidth、scrollWidth、scrollTop、scrollLeft などのプロパティの図。

推薦する

データベース復旧エラーの原因となる MySQL 文字セットの簡単な分析

MySQL の文字セットエンコーディングが正しくないデータをインポートすると、エラーが表示されます。...

Vue Element フロントエンドアプリケーション開発 従来の Element インターフェースコンポーネント

目次1. リストインターフェースとその他のモジュールの表示処理2. 従来のインターフェースコンポーネ...

IIS を使用して X-Forwarded-For ヘッダー (XFF) を呼び出して訪問者の実際の IP を記録する 2 つの方法

問題: IIS を通じて公開された Web サイトは F5 デバイスの背後に配置されています。透過的...

MySQL トリガー: 複数のトリガー操作の作成例の分析

この記事では、例を使用して、MySQL で複数のトリガー操作を作成する方法について説明します。ご参考...

MySQL の NOT IN 充填ピットの NULL 列の問題の解決方法

以前、会社で小さな機能に取り組んでいたとき、特定の状況でデータがいくつあるかを数えてから問題を修正し...

要素テーブルの多層ネスト表示の実践

複数の注文を含むリストが必要です。各注文は一意にすることも、複数の注文を結合することもできます。各注...

js SMS認証コード入力ボックスを手動で実装する

序文この記事では、私が手動で実装したフロントエンドの一般的な SMS 認証コード入力コンポーネントと...

JSが5つ星の賞賛を獲得

この記事では、5つ星の評価を獲得するためのJSの具体的なコードを参考までに共有します。具体的な内容は...

Xmeter APIインターフェーステストツールの使用状況の分析

XMeter API は、以下のサービスを含む、JMeter に基づくワンストップのオンライン イン...

MySQLデータベーステーブルの定期バックアップの実装の詳細な説明

Mysqlデータベーステーブルの定期的なバックアップの実装0. 背景実際の開発環境では、フロントエン...

よく知られているブラウザのDOCTYPEモード選択メカニズム

ドキュメントの範囲この記事では、Firefox やその他の Gecko ベースのブラウザ、Safar...

HTMLメタの大きな役割

メタ属性には、name と http-equiv の 2 つがあります。 name 属性は主に、We...

MySQL の一般的な日付比較および計算関数

MySql での時間比較の実装unix_timestamp() unix_timestamp 関数は...

Docker で ElasticSearch と Kibana をインストールするためのサンプル コード

1. はじめにElasticsearchは現在非常に人気があり、多くの企業が利用しているため、esを...

MySQL に 1,000 万件のレコードを素早く挿入する方法

面接で「MySQL に 1,000 万件のレコードをすばやく挿入するにはどうすればよいか」という質問...