WEBAPP開発スキルのまとめ(モバイルWebサイト開発の注意点)

WEBAPP開発スキルのまとめ(モバイルWebサイト開発の注意点)

1. レスポンシブな Web を開発するには、ページを画面サイズに適応させる必要があります。前の記事で説明したように、流動的なレイアウトを使用できます (アダプティブ幅レイアウト)。その他の特定の小さな問題は、メディア クエリを使用することで解決できます (レスポンシブ Web デザインと CSS3 メディア クエリを実現するために、IE で CSS3 メディア クエリをサポートするようにします)。
2. ほとんどの携帯電話には高度なブラウザが搭載されているため、HTML5 + CSS3 開発を使用できます。
3. 以下のように、メタタグを合理的かつ柔軟に使用します。


コードをコピー
コードは次のとおりです。

<meta content="width=デバイス幅、初期スケール=1.0、最大スケール=1.0、ユーザースケーラブル=0;" name="ビューポート" />
<meta content="yes" name="apple-mobile-web-app-capable" />
<meta content="black" name="apple-mobile-web-app-status-bar-style" />
<meta content="telephone=no" name="format-detection" />


最初のメタ タグは、ドキュメントの幅をデバイスの幅と 1:1 に強制し、ドキュメントの最大幅比を 1.0 にし、ユーザーが画面をクリックして拡大できないようにします。
2 番目のメタ タグは、iPhone デバイス上の Safari 用のプライベート メタ タグであり、フルスクリーン モードでのブラウジングを許可することを意味します。
3 番目のメタ タグも iPhone 専用のタグで、iPhone の Safari の上部にあるステータス バーのスタイルを指定します。
4 番目のメタタグの意味: ページ内の数字を電話番号として無視するようにデバイスに指示します。例については、「一般的なメタタグの例」を参照してください。

4. リンクのサイズに注意してください。ほとんどの携帯電話はタッチスクリーンなので、ユーザーはラベルを簡単にクリックできる必要があります (以前記事を見たことがありますが、今はソースが見つかりません。最小サイズは 42px*42px のようです)。

操作オブジェクトのサイズは指の操作に合わせており、キーのサイズは仕様に従って設定されています。
人差し指のクリック間隔は約7×7mm、1mm間隔です。
親指クリック 8 x 8 mm、間隔 2 mm。現在推奨されている値は 9mm で、最小値は 7mm 以上である必要があります。
もちろん、重要な操作や頻繁にクリックする領域は少し大きめに設定することもできます。

5. グレースフル デグラデーション (スムーズなデグラデーション) を実現し、JS や画像の使用を減らす必要があります。また、ユーザーが JS や画像のダウンロードを禁止する場合、ページはその価値を反映する必要があります (多くのアプリは、3G 環境では画像やその他のリソースを自動的にダウンロードしないようにデフォルトで設定されているため)。
6. 画像処理では、幅を設定するだけで画像が適応的になり、変形を防ぎます。もちろん、対応デバイスの解像度が大きく異なる場合は、メディアクエリを使用して、異なる解像度に応じて異なる画像をロードする必要があります(同じ画像をいくつかの異なる仕様に設定する必要があります)。これは、解像度の低いデバイスが大きな画像を読み込んでトラフィックを無駄にしたり、解像度の高いデバイスが小さな画像を読み込んで画像がぼやけたりするのを防ぐためです。
7. 解像度の設定が小さすぎて、通常のモジュールが混雑して見える場合は、メディアクエリを使用して、768px で 2 列レイアウトを表示し、320px で 1 列レイアウトを表示するなど、解像度に応じてモジュールを適切に表示または非表示にすることができます。


コードをコピー
コードは次のとおりです。

/* 大きなデスクトップ */
@media (最小幅: 1200px) { ... }

/* 縦長のタブレットから横長のデスクトップへ */
@media (最小幅: 768px) および (最大幅: 979px) { ... }

/* 横長の携帯電話から縦長のタブレットへ */
@media (最大幅: 767px) { ... }

/* 横長の携帯電話と下向き */
@media (最大幅: 480px) { ... }

8. もちろん、異なる端末に基づいて異なるURLにジャンプすることもできます。参照:携帯電話やタブレットなどのモバイル端末向けのJavaScriptでジャンプURLに適応する
9. モバイルブラウザは数多くあり、モバイルシステムのデフォルトの処理方法も異なります。互換性の問題はPC版ほど単純ではないため、よく使われる処理方法をまとめる必要があります。例えば、-webkit-tap-highlight-color:rgba(0,0,0,0); /*リンクのハイライトを無効にする*/ -webkit-touch-callout:none; /*リンクを長押ししてオプションメニューをポップアップするのを無効にする*/ などです。
10. モバイル フォンやタブレットではトラフィックが非常に重要なので、Web アプリのクラス名と ID は、先頭は hd、中間は bd、下部は ft など、できるだけ区別できるものにする必要があります (この提案は、後のメンテナンスやその他の問題に便利かどうかを考慮しているため保留中です)。

<<:  HTML の類似タグと属性の違いの詳細な説明

>>:  角度付き双方向バインディングの詳細な説明

推薦する

nginx 設定場所方法の概要

位置一致順序1. 「=」プレフィックス命令マッチング、マッチングが成功したら他のマッチングを停止2....

Vueはビデオ再生を実装するためにビデオタグを使用します

この記事では、ビデオタグを使用してビデオ再生を実装するVueの具体的なコードを参考までに共有します。...

kindとDockerを使用してローカルKubernetes環境を起動する

導入Kubernetes を使い始めるのに丸一日を費やしたことはありませんか?最近登場したいくつかの...

CSS の複雑なセレクターと CSS のフォントスタイルと色属性の詳細な説明

これまでに CSS の基本的なセレクターをいくつか学習しましたが、今日は CSS の複雑なセレクター...

ウェブページのフォント設定についての簡単な説明

サイト全体のフォントを設定することは、常にシンプルでありながら難しい作業です。深く掘り下げていくと、...

MySQL5.6.31 winx64.zip インストールと設定のチュートリアル

#1. ダウンロード # #2. ローカルに解凍し、必要な構成のmy*.iniを変更します。 #3....

Kubernetes オブジェクトボリュームの詳細な使用方法

概要ボリュームは、さまざまなストレージ リソースを抽象化および仮想化したものです。ストレージ リソー...

WeChatミニプログラムでの仮想リストの実装例

目次序文分析する初期レンダリング方法初期最適化さらなる最適化方法2序文ほとんどのミニプログラムには、...

MySQL と Golan 間の従来の分散トランザクションのための 7 つのソリューション

目次1. 基本理論1.1 取引1.2 分散トランザクション2. 分散トランザクションソリューション2...

VMwareを使用したPermeateレンジシステムのインストール手順の詳細説明

1. 背景私たちは時々社内研修を行っており、実験環境をよく利用しています。最初はdockerコンテナ...

JavaScript の 7 つのデータ型の詳細な説明

目次序文:詳しい紹介:練習する:要約する序文: Python、Java、Cシリーズなど、すべての主要...

TypeScript を使用して Vue3 で axios をカプセル化する詳細な例

この axios パッケージは、vue3 デモで使用されます。便宜上、element-plus は ...

CSS3は円錐グラデーション効果を実現します

文法:背景画像: 円錐グラデーション(位置の角度から、開始色、...、最後の色)最初のパラメータ:開...

VueRouterルーティングの詳細な説明

目次vueルーター1. ルーティングの概念を理解する1.1 ルーティングとは何ですか? 1.2. バ...

高品質なJavaScriptコードの書き方

目次1. 読みやすいコード1. 統一コード形式2. マジックナンバーを削除する3. 単一機能原則2....