ホームページ > 記事 > ウェブフロントエンド > 大画面要素の解像度適応を実装する Vue 命令の詳細な説明
この記事では、vue に関する関連知識をお届けします。主に、一般的な適応スキームや CSS スケーリング スキームなど、大画面要素の解像度適応を実装するための Vue 命令の詳細な説明を紹介します。ぜひ一緒にご覧ください。皆さんのお役に立てれば幸いです。
[関連する推奨事項: javascript ビデオ チュートリアル、vue.js チュートリアル]
フロントエンドを使用するデータセンター (ミドルプラットフォーム) およびその他のコンセプトの継続的な開発、およびモノのインターネットデバイスの更新と普及により、データを集中表示するために 1 つまたは複数の大きなビジュアルスクリーンをシステムに追加することを希望する所有者 (プロジェクト) が増えています。上司もそれを「状況」と呼ぶことを好みます。
もちろん、プログラマはプロジェクトを完了する限り、「上司」が何を考えているかは一般に気にしません。しかし、次のような問題がよく発生します。大画面のテンプレートがあるが、ユーザーのブラウザの解像度が十分ではない、ブックマーク バーがあるテンプレートとないテンプレート、または全画面のテンプレートと小さなウィンドウだけのテンプレートがあります。このように、コードがさまざまな解像度のシナリオに適応するための要件があります。
通常使用する Web 側の適応ソリューションには主に次のものがあります:
最新の画面適応ソリューションの原則は上記の方法に基づいていますが、これらの方法には大きな欠点もあります。ブラウザ テキストには最小幅があります。サイズ!
解像度 1080p 以上の通常の画面では、ほとんどの設計図面の比率と表示効果を完全に復元できます。ただし、特定のシステムにページ コンテンツが多すぎる場合、またはブラウザで使用されている解像度 (物理解像度ではない) が完全な表示要件を満たしていない場合、上記の方法を使用すると、 テキストのサイズが計算される可能性があります。ブラウザの最小フォント サイズ より小さい場合、テキスト幅が要素を超えるため、ページ スタイルが崩れる可能性があります。
中央レイアウトと最小幅は表示効果を確保できますが、大画面プロジェクトには適していません。
上記の解決策が満足できない場合、通常、誰もが別の解決策、CSS3 スケール スケーリングを使用します。
設計図のサイズ比率と実際のページ表示領域サイズを計算し、要素の拡大縮小率を動的に調整します。
個人的には、これが小さな解像度で表示コンテンツとスタイルを保持する最良の方法だと思います。
もちろん、この方法にはまだいくつかの欠点があります。
ここでは、Vue のカスタム命令の簡単なレビューを示します: カスタム命令を構成し、パラメーターをバインドすることにより、対応する処理ロジックが、component/ などの異なる時点で実行されます。要素のロード、更新、および破棄。
Vue のカスタム命令には、次のフック関数が含まれます。
// 缩放指令 import Vue from "vue"; function transformScale(el, options) { const { target = "width", origin = "top left" } = options; Vue.nextTick(() => { // 获取显示区域高宽 const width = window.innerWidth; const height = window.innerHeight; el.style.transformOrigin = origin; if (target === "ratio") { const scaleX = width / CONF.width; const scaleY = height / CONF.height; el.style.transform = `scaleX(${scaleX}) scaleY(${scaleY})`; } else { let scaleProportion = 1; if (target === "width") { scaleProportion = width / CONF.width; } if (target === "height") { scaleProportion = height / CONF.height; } el.style.transform = `scale(${scaleProportion})`; } }); } function inserted(el, binding) { const options = binding.options || { passive: true }; const callback = () => transformScale(el, binding.value); window.addEventListener("resize", callback); callback(); el._onResize = { callback, options }; } function unbind(el) { if (!el._onResize) { return; } const { callback } = el._onResize; window.removeEventListener("resize", callback); delete el._onResize; } export const Scale = { inserted, unbind }; export default Scale;説明:
もちろんこのコマンドも完璧とは言えず、手ぶれ補正がない、拡大縮小してもCSSで指定したサイズが変わらない、スクロールバーなど抜け道はまだたくさんあります。などが表示される傾向があります;
そして、以前の理由により、このプロジェクトには多くのチャートやマップも含まれており、表示上の問題が発生することが多いため、後でいくつかの新しい指示が追加されますが、解像度の適応は実際の状況に基づいて決定する必要があります。
【関連する推奨事項: JavaScript ビデオ チュートリアル 、vue.js チュートリアル ]
以上が大画面要素の解像度適応を実装する Vue 命令の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。