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 ストアド プロシージャの取得、データ取得、プロセス分析

推薦する

Hbase 入門

1. HBaseの概要1.1 HBaseとはHBase は、高い信頼性、高いパフォーマンス、列ストレ...

::before/:before と ::after/:after の使用に関する深い理解

パート1: 基礎1. :active や :hover などの疑似クラスとは異なり、これらはすべて疑...

ネイティブJSは非常に見栄えの良いカウンターを実装します

今日は、ネイティブ JS で実装された見栄えの良いカウンターを紹介します。効果は次のとおりです。 以...

js の Array.forEach でループを終了する方法の例

目次forEach() メソッドjs の Array.forEach のループから抜け出す方法解決:...

Linuxはlsofコマンドを使用してファイルのオープンステータスを確認します

序文Linux では「すべてがファイル」であることは誰もが知っているので、ファイルのオープン状態を確...

uni-appがNFC読み取り機能を実装

この記事では、参考までに、NFC読み取り機能を実装するためのuni-appの具体的なコードを紹介しま...

WeChat アプレット uniapp は左スワイプによる削除効果を実現します (完全なコード)

WeChatアプレットuniappは左スワイプで削除効果を実現成果を達成する1. スワイプしてリス...

HTML ブロックレベルタグとインラインタグの違い

1. ブロックレベル要素: 独立して存在できる能力を指します。通常、ブロックレベル要素は改行によって...

Linux でのログ サーバーの設定に関するグラフィック チュートリアル

序文この記事では、Linux 構成ログ サーバーに関する関連コンテンツを主に紹介し、参考と学習のため...

Nginx 静的サービス設定の詳細な説明 (ルートとエイリアスの指示)

静的ファイルNginx は高いパフォーマンスで知られており、フロントエンドのリバース プロキシ サー...

Vue3 の SetUp 関数のプロパティとコンテキスト パラメータの詳細な説明

1. setUp関数の最初のパラメータpropsセットアップ(プロパティ、コンテキスト){}最初のパ...

Matlab による JavaScript プログラミング、重心アルゴリズムによる位置決め学習

目次Matlab セントロイドアルゴリズムMatlab はクローズドな商用ソフトウェアであり、米国政...

Nexus を使用して Docker リポジトリを作成する方法

公式の Docker レジストリを使用して作成されたウェアハウスでは、イメージを削除してもデフォルト...

純粋な CSS で実装された大きなドロップダウン メニューのサンプル コード

これは純粋に CSS で実装された大きなドロップダウン メニューです。この大きなメニューは、js コ...

ノードでシェルスクリプトを使用する方法

背景開発中、特定の状況でビジネス ロジックをバッチ処理するためのスクリプトが必要になる場合があります...