モバイル端末の水平および垂直画面ビューポート検出を決定するための js のいくつかの方法

モバイル端末の水平および垂直画面ビューポート検出を決定するための js のいくつかの方法

1. 異なるビューポートを取得する方法

// 視覚的なビューポートのサイズを取得します(垂直スクロールバーを含む)
iw = window.innerWidthとします。
 ih = ウィンドウの内側の高さ;
コンソールにログ出力します。

// 視覚的なビューポートのサイズを取得します (サイドバー、ウィンドウ クロム、ウィンドウのサイズ変更用の境界線を含むコンテンツ領域のサイズ)
ow = window.outerWidthとします。
 oh = ウィンドウの外側の高さ;
console.log(わー、あー);

// 画面の理想的なビューポート サイズを取得します (固定値 (画面解像度サイズ))
sw = window.screen.width とします。
 sh = ウィンドウの画面の高さ;
コンソールにログ出力します。

// ブラウザの利用可能なウィンドウのサイズを取得します(パディングを含みますが、垂直スクロールバー、境界線、余白は除きます)
aw = window.screen.availWidthとします。
 ah = window.screen.availHeight;
コンソールにログ出力します。

// パディング、スクロールバー、境界線、マージンを含む let dow = document.documentElement.offsetWidth,
 doh = document.documentElement.offsetHeight;
コンソールにログ出力します。

// スクロールバーを使用せずにビューポート内のすべてのコンテンツに収まるために必要な最小の幅と高さ let dsW = document.documentElement.scrollWidth,
 dsH = document.documentElement.scrollHeight;
コンソールにログ出力します。

// 要素のパディングを含みますが、境界線、余白、垂直スクロールバーは含みません。let cw = document.documentElement.clientWidth,
 ch = document.documentElement.clientHeight;
コンソールにログ出力します。

2. 水平画面と垂直画面のJavaScript検出

// window.orientation: 画面の回転方向を取得します window.addEventListener('resize', () => {
 // 通常の向きまたは画面を180度回転 if (window.orientation === 180 || window.orientation === 0) {
  console.log('垂直画面')
 }

 // 画面は時計回りに90度、または反時計回りに90度回転します。if (window.orientation === 90 || window.orientation === -90) {
  console.log('水平画面')
 }
});

3. 水平画面と垂直画面のCSS検出

/*水平および垂直画面の CSS 検出*/
@media 画面と (orientation:portrait) {

 /* 縦画面 */
 #アプリ {
  幅:100vw;
  高さ:100vh;
  背景: 赤;
 }
}

@media screen と (orientation:landscape) {

 /* 横画面 */
 #アプリ {
  幅:50vw;
  高さ:100vh;
  背景: 緑;
 }
}

4. メタタグ属性設定

<meta name="viewport" content="width=デバイス幅、初期スケール=1、最小スケール=1、最大スケール=1、ユーザースケーラブル=いいえ" />

5.メタタグ属性設定ノッチ画面と下部の黒いバーを設定する

<meta name="viewport" content="viewport-fit=cover" />

安全領域と境界の間の距離を設定する

/* 下部の固定ナビゲーション バーを使用する場合は、パディング値を設定する必要があります。 */
体 {
 パディング下部: 定数(セーフエリアインセット下部);
 パディング下部: env(セーフエリアインセット下部);
}

注: constant 関数は iOS < 11.2 の場合に有効で、env は iOS >= 11.2 の場合に有効です。

これで、モバイル端末での水平および垂直ビューポート検出を決定するために js を使用するいくつかの方法についての記事は終了です。モバイル端末での js 水平および垂直ビューポート検出に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • JSを使用して携帯電話の水平および垂直画面の状態を判別する
  • モバイル端末の横画面と縦画面を検知するJSコード

<<:  MySQL が自動的に再起動する問題の解決方法

>>:  Linux リモート開発に vs2019 を使用する方法

推薦する

ウェブページの読みやすさを向上させるいくつかの方法

1. 対照的な色を使用します。ここでのコントラストとは、テキストの色と背景色のコントラストを指します...

Docker5フル機能の港湾倉庫構築プロセス

Harbor は、Docker イメージを保存および配布するためのエンタープライズ レベルのレジスト...

CSSのoutline-offsetプロパティを使用してプラス記号を実装する

次のような初期コードがあると仮定します。 <!DOCTYPE html> <htm...

Vueは左上と右上のスライドナビゲーションを実装します

ナビゲーションなどは日々の開発でよく使うので、記録として記事を書きます。ナビゲーションは終了/開始位...

Docker+K8S+GitLab/SVN+Jenkins+Harbor をベースにした継続的インテグレーション配信環境の構築に関する詳細なチュートリアル

目次環境設定の概要1.K8Sとは何ですか? 2. K8S を使用する理由3. K8S を使用する利点...

JavaScript プロトタイプとプロトタイプチェーンの深い理解

目次1. プロトタイプとは何ですか? 2. プロトタイプ__プロト__ 4. コンストラクター5. ...

SQL ストアド プロシージャの取得、データ取得、プロセス分析

この記事は主に、SQL のストアド プロシージャから返されたデータを取得するプロセスの分析を紹介しま...

react setStateの詳細な説明

目次setState は同期ですか、それとも非同期ですか?カスタム合成イベントと React フック...

CSSスプライトの応用の詳細な説明

CSS Sprite は、CSS スプライトとも呼ばれ、画像結合技術です。この方法は、複数の小さなア...

jQueryの競合問題を解決する方法

フロントエンド開発において、$ は jQuery の関数です。$ のパラメータが異なると、実装される...

MySQL 最適化 query_cache_limit パラメータの説明

クエリキャッシュ制限query_cache_limit は、単一のクエリで使用できるバッファ サイズ...

アイデアをDockerに接続してワンクリックでデプロイする方法

1. docker設定ファイルを変更し、ポート2375を開きます。 [root@s162 docke...

HTML ページの先頭に戻るいくつかの実装の概要

最近、ウェブサイトを開発する際にトップに戻るボタンを作成する必要がありますが、私は主にバックエンドの...

初心者向けBootstrap 3.0学習ノート

この学習ノートの最初の記事として、シリーズの他の記事と同様に、Bootstrap の紹介から始め、そ...

MySQL監視グループレプリケーションについて簡単に説明します

元のテキスト: https://dev.mysql.com/doc/refman/8.0/en/gr...