最適なウェブページ幅とその互換性のある実装方法

最適なウェブページ幅とその互換性のある実装方法
1. Web ページをデザインするときに、幅を決定するのは非常に面倒な作業です。

jb51.net を例にとると、Google Analytics の統計によると、過去 6 か月間で訪問者の画面解像度は合計 81 種類ありました。最小解像度は 122x160 で、これは携帯電話の解像度であるはずです。最大解像度は 3360x1050 で、それがどんなデバイスであるかは神のみぞ知るところです。

このようにさまざまなサイズの画面で Web ページが満足のいく結果を表示するのがいかに難しいかは容易に想像できます。たとえば、幅 400 ピクセルの画像は、800 ピクセルの画面では幅の 50% を占めますが、1920 ピクセルの画面 (Windows Vista の一般的な設定) では幅の 20% しか占めません。
2.

現在、一般的な画面解像度の幅は、800px、1024px、1280px、1440px、1680px、1920px の 6 種類あります。その中では1024pxが最も一般的ですが、大画面ディスプレイの普及に伴い、より高い解像度が一般的になりつつあります。

一般的な解決策は 2 つあります。

最初の方法: JavaScript を使用して、さまざまなクライアント解像度に応じて CSS スタイルシート ファイルを選択します。具体的な方法については、こちらをご覧ください。

2 番目の方法: Fluid Width Layout を使用して、Web ページの幅を適応させます。

最初の方法の利点は、画面解像度に応じて完全に異なるレイアウトを使用できることです。欠点は、複数のスタイルシートを設計して維持する必要があり、面倒なことです。 2 番目の方法では、スタイルシートを 1 つだけ使用するため、より便利です。

次の記事では、css-tricks のソリューションに基づいて 2 番目の方法を実装する方法について説明します。これは実際には非常に簡単です。

3.

まず、Web ページのデフォルトの幅は、表示幅 1024px に合わせて決定されます。これは、1024x768 が現在最も一般的な解像度であるというだけでなく、この幅が Web ページに最も適しているためでもあります。1) 3 列レイアウトに十分なコンテンツを収容できます。2) 1 行のテキストは長すぎてはいけません。1024 ピクセルが限界で、長すぎると読み疲れを引き起こしやすくなります。3) 現在のインターネット帯域幅の状況では、Web ページで高解像度に必要な大きなサイズの画像を使用することは困難です。

次に、Web ページの幅は 780 ピクセル〜 1260 ピクセルの範囲内で自動的に変更されます。つまり、最小値は 780 ピクセル以上、最大値は 1280 ピクセル以下になります。

最後に、解像度が大きい場合、Web コンテンツは自動的に中央に配置されます。

4.

たった 4 行の CSS ファイルの書き方を以下に示します。これらのステートメント行はすべてページ全体、つまり body タグまたは最も外側の div 領域に適用されることに注意してください。

マージン: 10px 自動;

この行により、Web ページがどの解像度でも中央に配置されます。

最小幅: 780px;
最大幅: 1260px;

これら 2 行は、Web ページの最小幅と最大幅を指定します。 IE6 ではこれら 2 行はサポートされていないため、IE6 では無効であることに注意してください。

幅:式(document.body.clientWidth < 782? "780px" : document.body.clientWidth > 1262? "1260px" : "auto");

この行は IE6 の回避策です。 CSS 式を使用しますが、JavaScript を使用して実装することもできます。

さらに、内部ブロックを自動的に拡大縮小したい場合は、その幅をパーセンテージで表すことができます。例:

#div-左{
幅:50%;
}

#div-右{
幅:50%;
}

最終結果とソースコードのダウンロードはここからご覧いただけます。ブラウザウィンドウのサイズを変更すると、Web ページが 780 ピクセル〜 1260 ピクセルの範囲内で自動的に拡大縮小されることがわかります。

5.

最後に、あまり意味がないので、コンピューターを使用するときに盲目的に高解像度を使用しないことをお勧めします。

<<:  Vueスロットの詳細な説明

>>:  Linux カーネルプログラミングにおけるコンテナの of() 関数の紹介

推薦する

MySQL 5.7.18 リリース インストール ガイド (bin ファイル バージョンを含む)

インストール プロセスは、コンパイル手順を除いて、基本的にソース バージョンと同じです。この記事では...

win10 64 ビット システムに複数の JDK バージョンをインストールする際の切り替え問題と解決策の概要

コンピューターにmyeclipse2017とidea2017がインストールされているため、ideaが...

Linuxコマンドをバックグラウンドで実行する方法

通常、ターミナルでコマンドを実行する場合、別のコマンドの入力を開始する前に、現在のコマンドが終了する...

Docker ベースの Redis クラスターの構築方法

Redisイメージをダウンロードする docker pull yyyyttttwww/redis を...

よく使用される入力テキストボックスの内容は自動的に垂直方向に中央揃えされ、クリックするとデフォルトのプロンプトテキストは空になります。

3つの機能: 1. コンテンツの垂直方向の自動中央揃え2. デフォルトのプロンプトテキストは灰色で表...

MySQL のストレージ エンジンの違いと比較

MyISAM ストレージエンジンMyISAM は ISAM ストレージ エンジンに基づいており、それ...

MYSQL クエリの効率を向上させる 10 の SQL ステートメント最適化テクニック

MySQL データベースの実行効率はプログラムの実行速度に大きな影響を与えます。データベースの効率的...

MySQLの誤操作後にbinlog2sqlを使用して素早くロールバックする方法の詳細な説明

序文日常の仕事や勉強では、データベースを操作するときに「不注意」によるミスを犯すことは避けられません...

Vue elementUI はツリー構造テーブルと遅延読み込みを実装します

目次1. 成果を達成する2. バックエンドの実装2.1 エンティティクラス2.2 データベース内のデ...

CentOS 7.3 で Nginx 仮想ホストを設定する方法

実験環境最小限にインストールされた CentOS 7.3 仮想マシン基本環境を構成する1. ngin...

Docker-compose におけるdepends_on 順序問題を解決する方法についての簡単な説明

コンテナをソートするためにdepends_onを使用しても、コンテナ間の依存関係の問題は完全には解決...

Centos8 で yum を使用して rabbitmq をインストールするチュートリアル

/etc/yum.repos.d/フォルダに入るrabbitmq-erlang.repo ファイルを...

意外と知らないJSのループ速度テストのいろいろを徹底解説

目次序文1. forループ2. whileループとdo-whileループ3. forEach、map...

JavaScript マクロタスクとマイクロタスクの実行順序についての簡単な説明

目次1. JavaScriptはシングルスレッドです1. 同期タスク2. 非同期タスク2. タスクキ...