検索
ホームページウェブフロントエンドCSSチュートリアルCSS サイズ単位について理解する: px、em、rem、% など

Understanding CSS Size Units: px, em, rem, %, and More

CSS では、ピクセル (px) からパーセンテージ (%)、em や rem などの相対単位まで、要素のサイズを制御するさまざまな単位があります。デザインに適したユニットを選択することは、応答性が高くアクセスしやすいレイアウトを構築するために重要です。このガイドでは、最も一般的な CSS サイズ単位、各単位をいつ使用するか、およびそれらがレイアウトに与える影響について説明します。


1. ピクセル (px)

ピクセルは、CSS で最も一般的な絶対単位の 1 つです。 px は、画面上の 1 つの物理ピクセルを表します。固定されているため、px を使用すると、ユーザーの設定に関係なく、要素は同じサイズのままになります。

px を使用する場合:

  • アイコンや境界線などの正確な固定要素にはピクセルを使用します。
  • ユーザーがブラウザのズーム レベルを調整するときにアクセシビリティに影響を与える可能性があるため、テキストにはピクセルを使用しないでください。

例:

p {
  font-size: 16px;
  width: 200px;
}

2. パーセンテージ (%)

% 単位は相対的なものであり、親要素のサイズに基づいて調整されることを意味します。この柔軟性により、% はレスポンシブ デザイン、特にビューポートに基づいて要素のサイズが変更される流動的なレイアウトに不可欠なツールになります。

% を使用する場合:

  • 親コンテナを基準にして調整するコンテナや画像などのレイアウト要素には % を使用します。
  • % とメディア クエリを組み合わせて、流動的でレスポンシブなデザインを作成します。

例:

.container {
  width: 80%; /* 80% of the parent element's width */
}

3.em単位

em 単位は、最も近い親要素のフォント サイズに基づく相対単位です。親フォント サイズが定義されていない場合は、デフォルトでブラウザの基本フォント サイズ (通常は 16 ピクセル) が使用されます。

キーポイント:

  • 1em は親要素のフォント サイズと同じです。

  • 1em は 2 倍のサイズです。

  • ネストされた要素に適用されると em 値が増加する可能性があるため、ネストには注意してください。

いつ使用するか:

  • テキスト サイズに関連したスペース、パディング、またはマージンの調整用。

  • 親のテキスト サイズに応じて調整する必要があるコンポーネントのフォント サイズ。

例:

.container {
  font-size: 16px;
}

.child {
  padding: 1.5em; /* 1.5 times the font size of .container */
}

4.レム単位

em とは異なり、rem 単位はルート要素 () のフォント サイズに基づきます。つまり、ドキュメント全体で 1rem が一貫しています (カスタマイズされていない限り、多くの場合 16px)。これにより、rem は Web ページ全体で一貫したタイポグラフィと間隔を実現するための信頼できる単位になります。

rem を使用する場合:

  • ネストされた要素に関係なく、コンポーネント全体で一貫したフォント サイズを実現します。

  • 明確な基準点を使用して、より拡張性と保守性の高い設計を実現します。

例:

p {
  font-size: 16px;
  width: 200px;
}

5. ビューポートユニット (vw および vh)

ビューポート単位 - vw (ビューポート幅) と vh (ビューポート高さ) - は、ビューポート (ブラウザ ウィンドウ) のサイズに基づく応答単位です。 1vw はビューポートの幅の 1% に相当し、1vh はビューポートの高さの 1% に相当します。

vw と vh を使用する場合:

  • 全ページのヒーロー セクションなど、ブラウザのサイズに合わせて拡大縮小する必要がある要素の場合。

  • 画面の幅に基づいて調整されるレスポンシブ タイポグラフィを作成します。

例:

.container {
  width: 80%; /* 80% of the parent element's width */
}

6. 柔軟な長さの単位 (最小、最大、クランプ)

min()、max()、clamp() などの新しいユニットはレスポンシブ デザインに強力であり、最小値または最大値に基づいて条件付きのサイズ設定が可能です。

min(a, b): 2 つの値の最小値を取ります。
max(a, b): 2 つの値の最大値を取ります。
クランプ(最小、優先、最大): 定義された範囲内に適応する値を設定します。

いつ使用するか:

  • 特定の範囲内に収まるレスポンシブ タイポグラフィ用。
  • ビューポートに基づいてコンポーネントのサイズを設定しますが、最小値または最大値の制限があります。

例:

.container {
  font-size: 16px;
}

.child {
  padding: 1.5em; /* 1.5 times the font size of .container */
}

結論

各 CSS ユニットには独自の長所と理想的な使用例があります。

  • 正確な固定要素の場合は px。
  • % は流動的で応答性の高いレイアウト コンポーネントを表します。
  • em は親要素を基準にしてスケーリングします。
  • ページ全体で一貫したスケーリングを行うには rem を使用します。
  • 動的、ビュー​​ポートベースの要素のビューポート単位。
  • 適応的で条件付きのスタイルを実現する、clamp() のような柔軟なユニット。

これらの CSS ユニットをマスターすると、柔軟でアクセスしやすく、保守しやすいレイアウトを作成することができます。デザインのニーズに基づいてそれらを組み合わせて、レイアウトが現実になるのを見てください。スタイリングを楽​​しんでください!

以上がCSS サイズ単位について理解する: px、em、rem、% などの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
CSSグリッドとは何ですか?CSSグリッドとは何ですか?Apr 30, 2025 pm 03:21 PM

CSSグリッドは、複雑で応答性の高いWebレイアウトを作成するための強力なツールです。設計を簡素化し、アクセシビリティを向上させ、古い方法よりも多くの制御を提供します。

CSS Flexboxとは何ですか?CSS Flexboxとは何ですか?Apr 30, 2025 pm 03:20 PM

記事では、レスポンシブデザインにおけるスペースの効率的なアラインメントと分布のためのレイアウト方法であるCSS FlexBoxについて説明します。 FlexBoxの使用量を説明し、CSSグリッドと比較し、ブラウザのサポートを詳細に説明します。

CSSを使用してWebサイトを応答するにはどうすればよいですか?CSSを使用してWebサイトを応答するにはどうすればよいですか?Apr 30, 2025 pm 03:19 PM

この記事では、ビューポートメタタグ、柔軟なグリッド、流体メディア、メディアクエリ、相対ユニットなど、CSSを使用してレスポンシブWebサイトを作成するための手法について説明します。また、CSSグリッドとフレックスボックスを使用してカバーし、CSSフレームワークを推奨しています

CSSボックスサイズのプロパティは何をしますか?CSSボックスサイズのプロパティは何をしますか?Apr 30, 2025 pm 03:18 PM

この記事では、要素の寸法の計算方法を制御するCSSボックスサイズのプロパティについて説明します。コンテンツボックス、ボーダーボックス、パディングボックスなどの値と、レイアウト設計とフォームアライメントへの影響について説明します。

CSSを使用してアニメーション化するにはどうすればよいですか?CSSを使用してアニメーション化するにはどうすればよいですか?Apr 30, 2025 pm 03:17 PM

記事では、CSS、キープロパティ、およびJavaScriptとの組み合わせを使用してアニメーションの作成について説明します。主な問題は、ブラウザの互換性です。

CSSを使用してプロジェクトに3D変換を追加できますか?CSSを使用してプロジェクトに3D変換を追加できますか?Apr 30, 2025 pm 03:16 PM

記事では、3D変換、主要なプロパティ、ブラウザの互換性、およびWebプロジェクトのパフォーマンスに関する考慮事項にCSSを使用して説明します。

CSSに勾配を追加するにはどうすればよいですか?CSSに勾配を追加するにはどうすればよいですか?Apr 30, 2025 pm 03:15 PM

この記事では、CSSグラデーション(線形、放射状、繰り返し)を使用して、ウェブサイトのビジュアルを強化し、深さ、フォーカス、および現代の美学を追加します。

CSSの擬似要素とは何ですか?CSSの擬似要素とは何ですか?Apr 30, 2025 pm 03:14 PM

記事では、CSSの擬似要素、HTMLスタイリングの強化における使用、および擬似クラスとの違いについて説明します。実用的な例を提供します。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。