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 の類似タグと属性の違いの詳細な説明

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

推薦する

MySQL SELECT実行順序の簡単な理解

SELECT ステートメントの完全な構文は次のとおりです。 (7)選択 (8) DISTINCT ...

shtml includeの使い方

これを応用することで、ウェブサイトの一部の公開領域を独立したページにすることができ、その後、この技術...

Docker で FastDFS ファイル システムを構築する (マルチイメージ チュートリアル)

目次FastDFSについて1. 画像を検索する2. イメージをインストールする3.1. 必要なディレ...

Docker ディスク領域クリーニングのソリューション

少し前に、docker ディスク容量が小さすぎてデータを書き込めないという問題が発生しました。理由は...

MySQLの共通関数の概要

序文: MySQL データベースは、よく使用される集計関数、日付および文字列処理関数など、幅広い関数...

MySQL データ ウェアハウスを保護するための 5 つのヒント

さまざまなソースからデータを集約することで、中央倉庫を作成できます。データ ウェアハウスは、ビジネス...

MySQLインデックスの作成について知っておくべきこと

目次序文: 1. インデックスメソッドを作成する2. インデックスを作成するために必要な権限序文: ...

Ubuntu環境でPHPとNginxをコンパイルしてインストールする方法

この記事では、Ubuntu 環境で PHP と Nginx をコンパイルしてインストールする方法につ...

Mysql 8.0.18 ハッシュ結合テスト (推奨)

ハッシュ結合ハッシュ結合は実行にインデックスを必要とせず、ほとんどの場合、現在のブロックネストループ...

js タグ構文の使用法の詳細

目次1. ラベルステートメントの紹介2. ラベルステートメントの使用序文:日常の開発では、プログラム...

JavaScript ステートメントの一般的な for ループの詳細な説明

JavaScript には、for、for in、for of、forEach ループなど、多くのル...

MySQL カーディナリティ統計の簡単な分析

1. カーディナリティとは何ですか?カーディナリティとは、MySQL テーブルの列内の異なる値の数を...

jQueryはシンプルなコメントエリアを実装します

この記事では、参考までに、簡単なコメントエリアを実装するためのjQueryの具体的なコードを紹介しま...

ウェブページ読み込み時に左右にジャンプする原因の分析と解決

最近、ウェブサイトを設計するときにこの問題に遭遇しています。メンバーセンターを設計し、コンテンツを ...

MySQL 5.7.24 圧縮パッケージのインストールと設定方法のグラフィックチュートリアル

この記事では、参考までにMySQL 5.7.24圧縮パッケージのインストールチュートリアルを紹介しま...