レム適応の一般的なパッケージ3つについて

レム適応の一般的なパッケージ3つについて

序文

以前、rem適応についての記事を書きましたが、具体的なパッケージは紹介しませんでした。今日は、よく使われる3つの方法を紹介し、皆さんの参考になればと思います。エディターと一緒に学んでいきましょう。

1. rem1.js

最初の方法は、m 側の画面回転の問題を考慮しています。互換性のためにいくつかの処理が行われています。詳細についてはコードを参照してください。

エクスポート関数 rem (doc, win) {
  docEl = doc.documentElement とします。
  // 画面回転イベントを考慮し、互換性を持たせる let resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize';
  再計算 = 関数 () {
            var clientWidth = docEl.clientWidth;
            if (!clientWidth) 戻り値:
            クライアント幅 >= 750 の場合
                 docEl.style.fontSize = '100px';
            } それ以外 {
                 docEl.style.fontSize = 100 * (clientWidth / 750) + 'px';
            }
      };

   doc.addEventListener の場合、戻り値は次のようになります。
    win.addEventListener(resizeEvt, recalc, false); // 画面のサイズと回転に適応します doc.addEventListener('DOMContentLoaded', recalc, false); // ページが最初に開かれたときに適応します recalc();
};

2. rem2.js

計算には HTML タグの offsetWidth の長さが使用されます。

エクスポート関数 rem() {
  var fz = document.querySelector('html').offsetWidth / 7.5; //デザイン図 750 1rem=100px
  document.querySelector('html').style.fontSize =
    fz <= 100 ? fz + 'px' : '100px';
  window.onresize = 関数() {
    レム();
  };
};

3. rem3.js

window.innerWidth を使用して計算すると、フォントの継承を防止するために body fontSize が設定され、ページのフォントが大きくなりすぎます。

エクスポート関数 rem() {
  document.documentElement.style.fontSize = window.innerWidth / 7.5 + 'px'; //1rem = 100px
  document.body.style.fontSize = '14px'; // ページにスタイルのない大きすぎるフォントが表示されないように、本文のフォント サイズを復元します}

要約する

上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。

<<:  MySQL/MariaDB でピボット テーブルを実装する方法のサンプル コード

>>:  CSS のみを使用して折りたたまれたヘッダー効果を作成する方法の例コード

推薦する

CentOS7 は rpm を使用して MySQL 5.7 をインストールするチュートリアル図

1. 4つのrpmパッケージをダウンロードする mysql-コミュニティクライアント-5.7.26-...

画像プレビュー付きのアップロードフォームの完全な HTML

画像プレビュー機能付きのアップロードフォーム、完全なHTMLコードは次のとおりです。 <htm...

CSS ワールド - コード実践: 画像の Alt 情報の表示

ただし、デフォルトの src を持つ <img> 要素を使用してスクロール読み込み効果を...

データベースクエリ、どのオブジェクトにどのフィールドが含まれているか、メソッドステートメント

データベースは、どのオブジェクトにどのフィールドが含まれているかを照会します。 *を選択 sysob...

IMG での UserMap の使用例

usemap は <img> タグの属性であり、使用するイメージ マップの名前を指定する...

MySQL タイムブラインドインジェクションの 5 つの遅延方法

MySQL タイム ブラインド インジェクションの 5 つの遅延方法 (PWNHUB の予期しない解...

フォームファイル選択ボックスのスタイルをカスタマイズする例

コードをコピーコードは次のとおりです。 <!DOCTYPE html> <html...

MySQL でテーブルを作成するときの NULL と NOT NULL の使用方法の詳細な説明

MySQL の仕様によっては、テーブル作成仕様にすべてのフィールドが空であってはならないという要件を...

HTML における rel="nofollow" の役割と rel 属性の使用を分析する

リンクに rel="nofollow" 属性を追加すると、検索エンジンにこの接続...

知っておくべき JS 配列削減の高度な使い方 25 選

序文Reduce は ES5 で追加された新しい従来の配列メソッドの 1 つです。forEach、f...

MySQL の時間設定に関する考慮事項の詳細な要約

時間は本当に存在するのでしょうか?時間は人間が考え出した概念に過ぎず、物事の変化を測る基準に過ぎない...

Linux ファイルディレクトリ管理コマンドの概要

タッチコマンドこれには 2 つの機能があります。1 つは、既存のファイルの時間タグを現在のシステム時...

Vue で AES.js を使用する詳細な手順

AES暗号化の使用データ転送の暗号化と復号化処理 --- AES.js最初のステップ: vue に ...

CentOS8でyumソースを変更した後にウェアハウスキャッシュの同期に失敗する問題の詳細な説明

問題の原因: 最初は CentOS 8 のデフォルトの yum ソースを正常に使用できますが、次のコ...

HTML DOM入門_PowerNode Javaアカデミー

DOMとは何ですか? JavaScript を使用すると、HTML ドキュメント全体を再構築できます...