gorogoronyan FC2

CSS: 要素の大きさ - width, height

概略

HTML のタグ (要素) には CSS の display の値で主に 1) inline のタグ、 2) inline-block のタグ、 3) block のタグがあります。 inline-block や block のタグでは width (幅) や height (高さ) で大きさを指定することができます。 inline のタグでは大きさを指定することができません。
CSS display: inline, block など

display の値     width, height の指定   要素(タグ)の例
-------------------------------------------------------------
inline           できない               span, a, b, strong など
inline-block     可                     img など
block            可                     div, p, h1, ul, dl など

値の単位

要素の大きさを指定するときに px%, em, rem, vw, vh などさまざまな単位があります。 単位は主に 1) 絶対値の単位、2) 相対値の単位 に分類できます。

絶対値の単位
px       ピクセル、画素数。

相対値の単位
em, rem  文字サイズに対する割合の大きさ。
%        親要素の大きさに対する割合。
vw, vh   ビューポートの大きさに対する割合。
など

はじめて HTML や CSS を眺める人だと絶対値の px 指定の方が分かりやすいですが、 画面サイズによってページや要素の幅が変わる HTML では % や rem などの相対値指定を多用した方が便利な話も多いです。

em に関連する単位で rem もあります。 rem はルート要素 (body) のフォントサイズに対して相対値で指定します。 em 指定は親要素のフォントサイズに連動して大きさがどんどん変わるので、 末端の要素になるほどフォントサイズが分かりづらくなる欠点があります。 rem だとルート要素のフォントサイズだけ気にすればよいので em よりも見通しが良くなります。

width と height のサンプル

width

TestCSS_width_div01.html
div タグの幅 (width) を指定するサンプル。 px, %, vw などの単位。
div タグ
TestCSS_width_div02.html
div の幅を % で指定したサンプル。
CSS: 要素の余白 - padding, margin

height

TestCSS_height_div01.html
div の高さ (height) を指定するサンプル。 % 指定は親要素 (包含するブロック) の高さが不定の場合は反映されません。
TestCSS_height_percent01.html
div の高さ (height) を % で指定するサンプル。 % 指定は親要素の高さが分かってる場合は反映されます。

height: 100%; を指定したい場合は box-sizing の話も見てください。
CSS box-sizing

CSS overflow

div などの大きさを指定すると div 内のテキストが div 領域に収まらない場合にどうするか? の話が出てきます。CSS の overflow でスクロールバーを付けるなどの指定が必要になります。
CSS: スクロール

TestCSS_overflow_scroll01.html
div にスクロールバーを付ける。CSS overflow のサンプル。

CSS text-overflow

目次などのタグでテキストが枠からあふれるときに、 文字列を改行せず末尾を「・・・」に置き換えたいことがあります。 このような場合は CSS の text-overflow: ellipsis; を設定します。

TestCSS_text_overflow01.html
text-overflow: ellipsis; のサンプル。
文章レイアウト: 箇条書き、目次、表など

span タグに大きさを持たせる

span タグや a タグや b タグなど初期設定がインラインの要素も display: inline-block; を指定することで大きさを持たせることができます。 img タグと同じ感覚で扱えます。
インライン要素をブロック要素に変更する

TestHTML_input_inline_block01.html
項目名の文字列の幅を揃えるサンプル。 b タグを display: inline-block; にして幅を指定する。
HTML: input タグ

要素の大きさを手動操作で変更する

要素の大きさを画面に合わせて変更する

関連

inserted by FC2 system