モバイル端末のH5アクティビティページのREMレイアウト適応方法の分析
この記事は主に、H5 アクティビティ ページのモバイル REM レイアウト適応方法を詳細に説明する関連情報を紹介します。内容は非常に優れているので、参考として共有します。
デザインドラフトを取得した後、レイアウトを復元するにはどうすればよいですか?
正確ではないレスポンシブデザインのみを行う必要がある場合は、メディアクエリを使用してそれを実現しても問題ありません。設計ドラフトを正確に復元する必要がある場合、これは通常、ズームによって実現されます。一般的なソリューションには、ビューポートベースおよびレムベースのスケーリング ソリューションが含まれます。
1 ビューポート スケーリング ソリューション
モバイル側では、ビューポートを通じてページ サイズ比率をスケーリングすることで目的を達成できます。
簡単に言うと、すべての幅と高さのピクセルがモックアップ出力と同じになり、ページ幅とモックアップ幅の比率によってビューポートが動的に設定されます。スケーリング ソリューションのコア コード リファレンス:
(function () { var docEl = document.documentElement; var isMobile = window.isMobile /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini|Mobi/i.test(navigator.userAgent); function setScale() { var pageScale = 1; if (window.top !== window) { return pageScale; } var width = docEl.clientWidth || 360; var height = docEl.clientHeight || 640; if (width / height >= 360 / 640) { // 高度优先 pageScale = height / 640; } else { pageScale = width / 360; } var content = 'width=' + 360 + ', initial-scale=' + pageScale + ', maximum-scale=' + pageScale + ', user-scalable=no'; document.getElementById('viewport').setAttribute('content', content); window.pageScale = pageScale; } if (isMobile) { setScale(); } else { docEl.className += ' pc'; } })()
このソリューションは、昨年の H5 アクティビティ ページのデザインで実践されました。
しかし、PCで表示したい場合は、ビューポートのズーム概念がないため、固定値でしか設定できず、理想的ではありません。
2 rem レイアウト適応ソリューション
rem レイアウト適応ソリューションはよく言及されており、大手インターネット企業の製品で広く使用されています。
簡単に言うと、その方法は次のとおりです。
デザイン案とデバイスの幅の比率に応じて、HTML ルートタグのフォントサイズを動的に計算して設定します
CSS では、デザインドラフト要素の幅、高さ、相対位置およびその他の値は同じ比率でレム単位に変換されます
デザインドラフトのフォントはピクセル単位を使用し、メディアクエリを通じてわずかに調整されます。
例を挙げて説明しましょう。
2.1 HTMLタグのフォントサイズを動的に設定する
最初の問題は、HTMLタグのフォントサイズを動的に計算することです。これは、変換率をどのように合意するかによって異なります。例としてページ幅の 10 等分を取ると、コア コード リファレンス:
(function(WIN) { var setFontSize = WIN.setFontSize = function (_width) { var docEl = document.documentElement; // 获取当前窗口的宽度 var width = _width || docEl.clientWidth; // docEl.getBoundingClientRect().width; // 大于 1080px 按 1080 if (width > 1080) { width = 1080; } var rem = width / 10; console.log(rem); docEl.style.fontSize = rem + 'px'; // 部分机型上的误差、兼容性处理 var actualSize = win.getComputedStyle && parseFloat(win.getComputedStyle(docEl)["font-size"]); if (actualSize !== rem && actualSize > 0 && Math.abs(actualSize - rem) > 1) { var remScaled = rem * rem / actualSize; docEl.style.fontSize = remScaled + 'px'; } } var timer; //函数节流 function dbcRefresh() { clearTimeout(timer); timer = setTimeout(setFontSize, 100); } //窗口更新动态改变 font-size WIN.addEventListener('resize', dbcRefresh, false); //页面显示时计算一次 WIN.addEventListener('pageshow', function(e) { if (e.persisted) { dbcRefresh() } }, false); setFontSize(); })(window)
さらに、全画面 H5 アクティビティ ページについては、要件があります。このとき、幅と高さの比率を調整する必要があります。次のように実行できます:
function adjustWarp(warpId = '#warp') { // if (window.isMobile) return; const $win = $(window); const height = $win.height(); let width = $win.width(); // 考虑导航栏情况 if (width / height < 360 / 600) { return; } width = Math.ceil(height * 360 / 640); $(warpId).css({ height, width, postion: 'relative', top: 0, left: 'auto', margin: '0 auto' }); // 重新计算 rem window.setFontSize(width); }
このスケーリング方法に従うと、ほぼすべてのデバイスで比例スケーリングによる正確なレイアウトを実現できます。
2.2 要素サイズの値の方法
2つ目の問題は、要素サイズの値です。
デザイン案の幅を1080pxとして、変換しやすいように幅を10等分し、1rem = 1080 / 10 = 108pxとします。変換方法は次のとおりです:
const px2rem = function(px, rem = 108) { let remVal = parseFloat(px) / rem; if (typeof px === "string" && px.match(/px$/)) { remVal += 'rem'; } return remVal; }
たとえば、サイズが 460x210、相対ページ位置が top: 321px、 left: 70 の画像があります。上記の変換方法によると、要素の最終的な CSS スタイルは次のようになります。
.img_demo { position: absolute; background-size: cover; background-image: url('demo.png'); top: 2.97222rem; left: 0.64814rem; width: 4.25926rem; height: 1.94444rem; }
2.3 rem 配置計画の開発方法
上記の方法により、rem 配置計画が実現されました。しかし、rem の値を手動で計算するのは明らかに非現実的です。
less/sass 前処理ツールを使用すると、ミックスイン メソッドを設定し、デザイン ドラフトの実際のサイズに応じて値を取得するだけで済みます。 Less を例として挙げると、ミックスインのリファレンスは次のとおりです:
// px 转 rem .px2rem(@px, @attr: 'width', @rem: 108rem) { @{attr}: (@px / @rem); } .px2remTLWH(@top, @left, @width, @height, @rem: 108rem) { .px2rem(@top, top, @rem); .px2rem(@left, left, @rem); .px2rem(@width, width, @rem); .px2rem(@height, height, @rem); }
前のサンプル要素の場合、CSS スタイルは次のように記述できます:
.img_demo { position: absolute; background-size: cover; background-image: url('demo.png'); .px2remTLWH(321, 70, 460, 210); }
ここで、幅と高さは次のように記述できます。デザイン案から直接画像要素として出力 Photoshop上でガイドラインを移動して要素を配置することで、上/左の値を素早く取得できます。
2.4 フォントは単位として px を使用します
rem 比例スケーリングを使用するフォントは表示の問題を引き起こします。メディア クエリを使用して複数のサイズを設定するだけです。
参考例:
// 字体响应式 @media screen and (max-width: 321px) { body { font-size: 13px; } } @media screen and (min-width: 321px) and (max-width: 400px) { body { font-size: 14px; } } @media screen and (min-width: 400px) { body { font-size: 16px; } }
以上がこの記事の全内容です。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。
関連する推奨事項:
JSカウントダウン失敗の問題を解決するためにWeChat埋め込みH5 Webページを使用する方法
以上がモバイル端末のH5アクティビティページのREMレイアウト適応方法の分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









H5プロジェクトを実行するには、次の手順が必要です。Webサーバー、node.js、開発ツールなどの必要なツールのインストール。開発環境の構築、プロジェクトフォルダーの作成、プロジェクトの初期化、コードの書き込み。開発サーバーを起動し、コマンドラインを使用してコマンドを実行します。ブラウザでプロジェクトをプレビューし、開発サーバーURLを入力します。プロジェクトの公開、コードの最適化、プロジェクトの展開、Webサーバーの構成のセットアップ。

H5ページの制作とは、HTML5、CSS3、JavaScriptなどのテクノロジーを使用したクロスプラットフォーム互換のWebページの作成を指します。そのコアは、ブラウザの解析コード、レンダリング構造、スタイル、インタラクティブ機能にあります。一般的なテクノロジーには、アニメーションエフェクト、レスポンシブデザイン、およびデータ相互作用が含まれます。エラーを回避するには、開発者をデバッグする必要があります。パフォーマンスの最適化とベストプラクティスには、画像形式の最適化、リクエスト削減、コード仕様などが含まれ、読み込み速度とコード品質を向上させます。

H5クリックアイコンを作成する手順には、次のものがあります。画像編集ソフトウェアで正方形のソース画像の準備が含まれます。 H5エディターにインタラクティブ性を追加し、クリックイベントを設定します。アイコン全体をカバーするホットスポットを作成します。ページにジャンプしたり、アニメーションのトリガーなど、クリックイベントのアクションを設定します。 HTML、CSS、およびJavaScriptファイルとしてH5ドキュメントをエクスポートします。エクスポートされたファイルをウェブサイトまたは他のプラットフォームに展開します。

H5(HTML5)は、マーケティングキャンペーンページ、製品ディスプレイページ、企業プロモーションマイクロウェブサイトなどの軽量アプリケーションに適しています。その利点は、クロスプラットフォームと豊富な対話性にありますが、その制限は複雑な相互作用とアニメーション、ローカルリソースアクセス、オフライン機能にあります。

はい、H5ページの生産は、HTML、CSS、JavaScriptなどのコアテクノロジーを含むフロントエンド開発のための重要な実装方法です。開発者は、&lt; canvas&gt;の使用など、これらのテクノロジーを巧みに組み合わせることにより、動的で強力なH5ページを構築します。グラフィックを描画するタグまたはJavaScriptを使用して相互作用の動作を制御します。

H5はスタンドアロンプログラミング言語ではなく、最新のWebアプリケーションを構築するためのHTML5、CSS3、およびJavaScriptのコレクションです。 1。HTML5は、Webページの構造とコンテンツを定義し、新しいタグとAPIを提供します。 2。CSS3はスタイルとレイアウトを制御し、アニメーションなどの新しい機能を紹介します。 3. JavaScriptは動的な相互作用を実装し、DOM操作と非同期要求を通じて機能を強化します。

H5ReferStoHtml5、apivotaltechnologyinwebdevelopment.1)html5introduceSnewelementsandapisforrich、dynamicwebapplications.2)Itupp ortsmultimediawithoutplugins、endancingurexperiencecrossdevices.3)semanticelementsimprovecontentstructurendseo.4)H5'srespo

H5ポップアップウィンドウの作成手順:1。トリガー方法(クリック、時間、終了、スクロール)を決定します。 2。設計コンテンツ(タイトル、テキスト、アクションボタン); 3。SETスタイル(サイズ、色、フォント、背景); 4.コードを実装する(HTML、CSS、JavaScript); 5。テストと展開。
