vue+px2rem(rem適応)を使用してPCで大画面適応を実装するためのサンプルコード

vue+px2rem(rem適応)を使用してPCで大画面適応を実装するためのサンプルコード

構成の序文

プロジェクト構築: vue-cli3 をベースに構築、rem 適応には postcss-px2rem px2rem-loader を使用

実装の原則: パッケージ化するたびに、webpackはプラグインpostcss-px2remを使用してpx単位をrem単位に自動的に変換します。

px2rem は、px を rem に自動的に変換するプラグインであり、開発者がピクセル間の相互変換の計算プロセスを削減するのに役立ちます。

この先に落とし穴があります。UI フレームワークの一部のコンポーネントは、JavaScript を使用して CSS を HTML タグ内にインライン スタイルとして直接書き込みます。パッケージ化と適応中は関連する CSS が読み込まれないため、関連するスタイルを構成する必要があり、スタイルをオーバーライドするにはスタイル内に "!important" が必要です。

実装手順

最初のステップは、postcss-px2remとpx2rem-loaderをインストールすることです。

コマンドラインツールを開き、次のコマンドを入力してプラグインをインストールします(もちろん、Taobaoミラーcnpmを使用してインストールする方が速くなります)。

npm をインストール postcss-px2rem px2rem-loader --save

2 番目のステップは、ルート ディレクトリ src の util ディレクトリに新しい rem.js ファイルを作成することです。

// rem 比例適応設定ファイル // 基本サイズ const baseSize = 16
// rem関数を設定する function setRem() {
  // 現在のページ幅を 1920 の幅に対して拡大縮小する比率。必要に応じて変更できます。
  定数スケール = document.documentElement.clientWidth / 1920
  // ページのルート ノードのフォント サイズを設定します ("Math.min(scale, 2)" は最大拡大率が 2 であることを意味します。実際のビジネス ニーズに応じて調整できます)
  document.documentElement.style.fontSize = baseSize * Math.min(scale, 2) + 'px'
}
// setRem() を初期化する
// ウィンドウサイズを変更するときに rem をリセットする
window.onresize = 関数 () {
  リセット()
}

3番目のステップは、main.jsにアダプタファイルを導入することです。

'./util/rem' をインポートします

ステップ4: vue.config.jsでプラグインを構成する

// 比例適応プラグインをインポートします const px2rem = require('postcss-px2rem')

// 基本サイズを設定する const postcss = px2rem({
  // 基本サイズ baseSize、rem.js と同じである必要があります remUnit: 16
})

// 比例適応プラグインを使用する module.exports = {
  保存時にlint: true、
  css: {
    ローダーオプション: {
      ポストcss: {
        プラグイン: [
          ポストCSS
        ]
      }
    }
  }
}

要約する

これで、vue+px2rem による PC での大画面対応についての記事は終了です。vue+px2rem による大画面対応に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き閲覧してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vueプロジェクトを大画面に適応させる方法の例

<<:  MySQL における or、in、union、インデックス最適化の詳細な分析

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

推薦する

Dockerコンテナのいくつかの保存方法の詳細な説明

目次前面に書かれた複数のストレージマウント方法1.バインドマウント2. 巻数3.tmpfsマウントス...

値の転送を実現するために、2つの同じレベルのコンポーネントをVueで作成します。

Vue コンポーネントは接続されているため、コンポーネント間で値を渡す必要があるのは避けられません...

IDEA 2020 で Tomcat サーバーを構成するための詳細な手順

IDEA 2020 で Tomcat を構成する手順は次のとおりです。最初のステップはTomcatを...

MySQL サービスを起動できない問題の解決策を含む MySQL 5.7.17 インストール チュートリアル

.net 開発に関しては、Microsoft の SQL Server データベースに精通しており、...

Vue における ref と $refs の紹介と使用例

序文JavaScript では、document.querySelector("#demo...

サイトマップをウェブページの下部に配置するメリットと例

以前は、ほとんどすべての Web サイトに、すべてのページをリストしたサイトマップ ページがありまし...

MySQL ユーザー権限管理の分析例

この記事では、MySQL ユーザー権限管理の例について説明します。ご参考までに、詳細は以下の通りです...

Linux で so または実行可能プログラムの依存ライブラリを表示します

Linux で実行可能プログラムまたは so の依存ライブラリを表示します。 Linux の実行可能...

MySQLのLIMIT文について詳しく説明します

目次質問サーバー層とストレージエンジン層LIMITって何ですか?何をするか?トゥカオ最近、Q&...

JavaScript で文字列内の最長の単語を見つける 3 つの方法 (推奨)

この記事は、Free Code Camp の基本アルゴリズム スクリプト「文字列内の最長の単語を見つ...

VMware 仮想マシンのインストール Linux システムのグラフィック チュートリアル

この記事では、LinuxシステムのVMwareインストールの具体的な手順を参考までに紹介します。具体...

CSS におけるスタックコンテキストの具体的な使用法

序文一部の CSS 相互作用の影響により、要素に設定されたz-index実際のサイズに応じて重ね合わ...

シンプルな虫眼鏡効果を実現するJavaScript

大きな箱の中に写真があります。マウスをその上に置くと、半透明のマスク レイヤーが表示されます。マウス...

Docker ベースの ELK を素早く構築する方法

[概要] この記事では、自作の Docker プラットフォームをベースに完全な ELK システムを素...

CocosCreatorのホットアップデートの包括的な説明

目次序文ホットチェンジとはCocos Hot アップデートの概要マニフェストプロジェクトリソースとゲ...