【保存版】remにvh、mozmm…あまり知られていないけれど知ると得するCSSの単位まとめ
「この単位、なんだ?初めて見た・・・」
CSSが初めに登場してからかなりの時間が経過していますが、CSSに触れている経験が長いひとでも、一度はこのように思ったことがあるのではないでしょうか。
CSS歴10年以上の方でも*「長さの指定にはpxしか使わない」*という人も珍しくはありません。
実際、CSSは小さな仕様変更を繰り返しており、W3Cの草案作成・勧告といった正式なプロセスを経て便利な単位やプロパティは続々と追加されています。
CSSにおいて、単位を操ることができれば、デザインやレイアウトを行う上でかなり幅が広がることになります。
これから紹介するように、CSSにはすでにさまざまな単位がありますが、知らなかったがために回り道をしてしまっていた、あるいは知っていたらもっと短く書けるコードも多く存在します。
今回は、あまり知られていないけれど知ると得するCSSの単位をまとめていきます。
単位についてわからないことがあれば、一旦この記事に戻ってみてください。
CSSの単位のカテゴリ分け
画像引用元:pexel.com
一口に「CSSの単位」と言っても、あらゆる場所で使えるものもあれば、一部のCSS関数内で使えるものなど、使える場所が限定されている場合もあります。
CSSの単位をカテゴリ分けすると、以下のようになります。
1. PERCENTAGE型
PERCENTAGE型は、割合を示す値に使われます。
正確に言えば単位ではないのですが、何らかの値を基準として、その割合を示します。
PERCENTAGE型は、その名前の通り*「%」*が用意されています。
2. LENGTH型
LENGTH型は、長さを表す単位に使われます。
オブジェクトの高さやマージンの幅など、あらゆるシーンで使う単位です。
LENGTH型には、ブラウザの設定や環境に依存する相対単位と、ブラウザ環境に依存しない絶対単位があります。
前者には*「px」「ex」「em」「rem」*があり、後者には *「ch」「cm」「mm」「q」「in」「pt」「pc」「mozmm」「vw」「vh」「vmin」「vmax」*があります。
3. ANGLE型
ANGLE型は、角度を表す単位に使われます。
この型に当てはまるのは、*「deg」「grad」「rad」「turn」*があります。
4. TIME型
TIME型は、時間を表す単位に使われます。
アニメーションやトランジションなどで使う場面が多いでしょう。
*「s」「ms」*がこの型に当てはまります。
5. FREQUENCY型
FREQUENCY型は、周波数を表す単位に使われます。
この型に当てはまるのは、*「Hz」「kHz」*があります。
6. RESOLUTION型
RESOLUTION型は、デバイスの解像度を表す単位に使われます。
主にMedia Queryの式で利用します。
この型に当てはまる単位は、*「dpi」「dpcm」「dppx」*です。
それでは、以下でそれぞれの単位の詳細を確認していきましょう。
PERCENTAGE型の単位
%
画像引用元:pexel.com
言わずとしれた、割合を表すのが、「%」(パーセンテージ)です。
CSSではLENGTH型やANGLE型の代用で使われることがあります。
長さを表すプロパティ(widthやheight、marginやpaddingなど)では、指定する要素の親要素の値が基準値となります。
角度の場合には円周(360度)を基準に割合を決めていきます。
LENGTH型の単位
px
画像引用元:pexel.com
「px」は「pixel」(ピクセル)の略です。
「px」はブラウザ環境に依存しない絶対単位だと誤解されていることが多いですが、実際には相対単位です。
CSSにおけるピクセルは、スクリーンサイズのピクセルとは実際には異なっています。
W3Cによるドキュメントによれば、「px」に関して次のような定義がなされています。
px:ピクセルユニット ── 1pxは0.75ptと同値
これによれば「1px=0.75pt」となっており、「px」はピクセルの大きさからくる絶対値ではなく、「pt」の大きさを元に測った相対指定の値であることがわかります。
デバイスのピクセル比もデバイスによって変わるので、iPadで見る時とKindleで見る時とGalaxy Tabで見る時で、文字の大きさも違って見えるのです。
そのため、昨今のWeb業界では、フォントサイズに「px」を使わない方がいいと考える人も増えています。
参考:
CSSで知っておきたい、フォントサイズ指定の単位のすべて
ex
「ex」は一般的にそのまま「エックス」と読むか、「エックスハイト」と読みます。
文字の大きさの基準を、小文字のxの高さを基準にしたものなので、「x-height」(xの高さ)という意味の単位になっています。
その時点のコンテナの中にある「x」文字の高さを1exとし、line-heightやmarginといったプロパティで使用されることがあります。
em
「em」はそのまま「エム」と発音されます。
「ex」が「x」の高さを基準にしているのに対し、「em」は定義としては大文字の「M」の幅を基準とした単位とされています。
しかし実際には親要素のフォントサイズを基準とした単位とされています。
例えば、24pxが指定された親要素に対して、子要素に1emを指定すれば24px相当の文字サイズになります。
一方、0.5emを指定すれば12px相当のサイズになります。
ただし、相対指定は親要素の影響を受けてしまう、いわゆる「複利」の計算になってしまうので、入れ子された要素のときには注意が必要です。
rem
「em」は親要素に対しての相対計算を行いますが、「rem」はルート要素(通常はhtml)のフォントサイズを元に計算します。
常にルート要素が基準となるので、非常にわかりやすくスッキリとデザインを行うことができます。
何もルート要素のフォントサイズを指定していない場合は「1rem=16px」という計算方法になるので、初めのうちはpxを扱っているときのように試行錯誤しながら適切なフォントサイズを探すことになるでしょう。
ch
「ch」はある要素の現在のフォントの数字の「0」の横幅を1chとするもので、等幅フォントと組み合わせるときにまれに使われる単位です。
以前はChromeが未サポートでしたが、最新バージョンでは対応しています。
IEでもサポートはしていますが、実際の「0」の横幅よりも短く表示されてしまうようなので注意が必要です。
cm・mm・q
画像引用元:pexel.com
「cm」は1cm(センチメートル)、「mm」は1mm(ミリメートル)、「q」は四分ミリメートルといって1q=1/4mmとなる単位です。
いずれも絶対単位であり、ディスプレイよりもプリンターなど出力メディアの物理的な特性が分かっている場合に便利です。
in・pt・pc
同じく絶対単位として「in」「pt」「pc」があります。
「in」はインチのことで、1in=2.5cmで定義することができます。
「pt」はポイントで、1pt=1/72in=0.3528mmで定義することができます。
「pc」はパイカで、1pc=12ptで定義することができます。
mozmm
「mozmm」はMozilla Firefoxによる実験的な単位で、ディスプレイ解像度に関係なくディスプレイ上に正確に1mmを描画しようとする単位です。
Firefoxのほか、Safariも対応しています。
vw・vh
画像引用元:pexel.com
「vw」「vh」はそれぞれviewport widthとviewport heightの略で、現在のViewportに対する割合です。
例えば、回り込みを指定した上で、「width: 50vw」「height: 100vh」と指定すれば、高さ100%のコンテナを2つ横並びに並べることができます。
%を使わない理由は、親要素に引きずられることなく、直接Viewportに対する値を指定できるからです。
vmin・vmax
「vmin」「vmax」はそれぞれ「vw」「vh」のうち小さい方の値と大きい方の値を適用することができます。
例えば、「width: 50vmin」としておけば、ブラウザが横長のときにwidthは縦幅に対して50%、ブラウザが縦長のときにはwidthは横幅に対して50%の長さになります。
少々分かりにくいですが、レスポンシブデザインのときに役立つ時が多々あるでしょう。
ANGLE型の単位
deg・rad・grad
画像引用元:pexel.com
「deg」はdegree(度)の略で、360degで1円周分と同じです。
「rad」はradian(ラジアン)のことで、「円・扇の弧の長さ÷円の半径」が定義ですが、2πradで1円周分と同じになります。
「grad」はgrade(グラード)もしくはgradian(グラジアン)で、1gradは直角(90度)の100分の1、360deg=400gradで1周分と同じになります。
turn
「turn」は回転数のことで、1turnが1円周分の回転になります。
「transform: rotate(1turn)」のようなプロパティで使われます。
TIME型の単位
s・ms
画像引用元:pexel.com
「s」・「ms」はそれぞれsecond(秒)・milli second(ミリ秒)のことです。
トランジションやアニメーション、オーディオなどのdurationやdelay、timingなどで使われます。
FREQUENCY型の単位
Hz・kHz
「Hz」「kHz」は、声の高さのような周波数を表す単位で、それぞれヘルツ。キロヘルツを表します。
過去、FIreFoxやOperaがpitchという読み上げ用音声に声の高さを指定するプロパティを用意していましたが、CSS2.1以降削除され、現在では使用されていないようです。
RESOLUTION型
dpi
画像引用元:pexel.com
「dpi」はdot per inch(1インチあたりのドット数)のことです。
画面でよく使われるのは72もしくは96 dpiで、長さは物理的な値ではなく、CSS のinch、cm、またはpxと関連づけられます。
dlcm
「dpcm」はdot per centimeter(1センチメートルあたりのドット数)のことです。
1inch=2.54cmなので、1dpcmはおよそ0.39dpiとなります。
dppx
「dppx」はdot per pixel(1ピクセルあたりのドット数)を表します。
CSSのinchとCSSのpxの比率は1.96で固定なので、1dppxは 96dpiと同じです。
まとめ
CSSの単位にはさまざまな単位がありますが、それぞれの単位の特性を理解することで便利に使えるプロパティがさまざまあります。
うまく使うことで、例えばレスポンシブデザインのレイアウトを簡単に組み立てることができたり、どのプリンタでも同じように印刷したりすることができます。
適材適所で、これらのプロパティをぜひ使い分けてみてください。
- CS
- CSとはCustomer Satisfactionの略称で「顧客満足度」を意味します。顧客との関係維持、サービスの発展に関するマーケティング戦略に関わる用語です。
- CS
- CSとはCustomer Satisfactionの略称で「顧客満足度」を意味します。顧客との関係維持、サービスの発展に関するマーケティング戦略に関わる用語です。
- CS
- CSとはCustomer Satisfactionの略称で「顧客満足度」を意味します。顧客との関係維持、サービスの発展に関するマーケティング戦略に関わる用語です。
- W3C
- W3Cは、World Wide Web Consortiumの略称で、ダブリュー・スリー・シーと呼ばれています。WWWコンソーシアム、またはワールドワイドウェブコンソーシアムと表記されることが多く、国際的な非営利団体です。主に、WWWと呼ばれるウェブ上で利用される技術の標準化を進めています。
- CS
- CSとはCustomer Satisfactionの略称で「顧客満足度」を意味します。顧客との関係維持、サービスの発展に関するマーケティング戦略に関わる用語です。
- レイアウト
- レイアウトとは、もともと「配置」や「配列」を指す語です。ここでは、「ホームページレイアウト(ウェブレイアウト)」と呼ばれる、ホームページにおけるレイアウトについて説明します。
- CS
- CSとはCustomer Satisfactionの略称で「顧客満足度」を意味します。顧客との関係維持、サービスの発展に関するマーケティング戦略に関わる用語です。
- CS
- CSとはCustomer Satisfactionの略称で「顧客満足度」を意味します。顧客との関係維持、サービスの発展に関するマーケティング戦略に関わる用語です。
- CS
- CSとはCustomer Satisfactionの略称で「顧客満足度」を意味します。顧客との関係維持、サービスの発展に関するマーケティング戦略に関わる用語です。
- CS
- CSとはCustomer Satisfactionの略称で「顧客満足度」を意味します。顧客との関係維持、サービスの発展に関するマーケティング戦略に関わる用語です。
- デバイス
- デバイスとは「特定の機能を持つ道具」を表す語で、転じてパソコンを構成するさまざまな機器や装置、パーツを指すようになりました。基本的に、コンピューターの内部装置や周辺機器などは、すべて「デバイス」と呼ばれます。
- CS
- CSとはCustomer Satisfactionの略称で「顧客満足度」を意味します。顧客との関係維持、サービスの発展に関するマーケティング戦略に関わる用語です。
- CS
- CSとはCustomer Satisfactionの略称で「顧客満足度」を意味します。顧客との関係維持、サービスの発展に関するマーケティング戦略に関わる用語です。
- W3C
- W3Cは、World Wide Web Consortiumの略称で、ダブリュー・スリー・シーと呼ばれています。WWWコンソーシアム、またはワールドワイドウェブコンソーシアムと表記されることが多く、国際的な非営利団体です。主に、WWWと呼ばれるウェブ上で利用される技術の標準化を進めています。
- デバイス
- デバイスとは「特定の機能を持つ道具」を表す語で、転じてパソコンを構成するさまざまな機器や装置、パーツを指すようになりました。基本的に、コンピューターの内部装置や周辺機器などは、すべて「デバイス」と呼ばれます。
- フォント
- フォントとは、同一の特徴を持った文字の形状を一揃いでデザインしたものです。
- フォント
- フォントとは、同一の特徴を持った文字の形状を一揃いでデザインしたものです。
- フォント
- フォントとは、同一の特徴を持った文字の形状を一揃いでデザインしたものです。
- フォント
- フォントとは、同一の特徴を持った文字の形状を一揃いでデザインしたものです。
- フォント
- フォントとは、同一の特徴を持った文字の形状を一揃いでデザインしたものです。
- ディスプレイ
- ディスプレイ(display)とは、文字や図形を表示する装置のことを言います。 テレビと同じ原理のCRTディスプレイや、設置面積が小さく消費電力の少ない液晶ディスプレイや、ガス放電を利用したプラズマディスプレイなど、種類も多くあります。
- ディスプレイ
- ディスプレイ(display)とは、文字や図形を表示する装置のことを言います。 テレビと同じ原理のCRTディスプレイや、設置面積が小さく消費電力の少ない液晶ディスプレイや、ガス放電を利用したプラズマディスプレイなど、種類も多くあります。
- CS
- CSとはCustomer Satisfactionの略称で「顧客満足度」を意味します。顧客との関係維持、サービスの発展に関するマーケティング戦略に関わる用語です。
- CS
- CSとはCustomer Satisfactionの略称で「顧客満足度」を意味します。顧客との関係維持、サービスの発展に関するマーケティング戦略に関わる用語です。
- CS
- CSとはCustomer Satisfactionの略称で「顧客満足度」を意味します。顧客との関係維持、サービスの発展に関するマーケティング戦略に関わる用語です。
- CS
- CSとはCustomer Satisfactionの略称で「顧客満足度」を意味します。顧客との関係維持、サービスの発展に関するマーケティング戦略に関わる用語です。
- レイアウト
- レイアウトとは、もともと「配置」や「配列」を指す語です。ここでは、「ホームページレイアウト(ウェブレイアウト)」と呼ばれる、ホームページにおけるレイアウトについて説明します。
おすすめ記事
おすすめエントリー
同じカテゴリから記事を探す
カテゴリから記事をさがす
●Webマーケティング手法
- SEO(検索エンジン最適化)
- Web広告・広告効果測定
- SNSマーケティング
- 動画マーケティング
- メールマーケティング
- コンテンツマーケティング
- BtoBマーケティング
- リサーチ・市場調査
- 広報・PR
- アフィリエイト広告・ASP
●ステップ
●ツール・素材
- CMS・サイト制作
- フォーム作成
- LP制作・LPO
- ABテスト・EFO・CRO
- Web接客・チャットボット
- 動画・映像制作
- アクセス解析
- マーケティングオートメーション(MA)
- メールマーケティング
- データ分析・BI
- CRM(顧客管理)
- SFA(商談管理)
- Web会議
- 営業支援
- EC・通販・ネットショップ
- 口コミ分析・ソーシャルリスニング
- フォント
- 素材サイト
●目的・施策
- Google広告
- Facebook広告
- Twitter広告
- Instagram広告
- LINE運用
- LINE広告
- YouTube運用
- YouTube広告
- TikTok広告
- テレビCM
- サイト制作・サイトリニューアル
- LP制作・LPO
- UI
- UX
- オウンドメディア運営
- 記事制作・ライティング
- コピーライティング
- ホワイトペーパー制作
- デザイン
- セミナー・展示会
- 動画・映像制作
- データ分析・BI
- EC・通販・ネットショップ
- 口コミ分析・ソーシャルリスニング