最近のフォントサイズ指定について考える

写真:Font

最近はレスポンシブ対応などで、フォントサイズの指定に迷ってしまいます。
レスポンシブのない時代はpxを使っていて、その後yui fontをSASSで使用してましたが、親要素に引っ貼られてしまうし、新しい技術も調べてみたかったので、まとめてみました。

YUI Font

枯れた技術のYUI。と言いつつ最近のプロジェクトで使ったこともあります。pxを使った場合に発生する、ブラウザ間の差異をなくしてくれるものです。%指定なので親要素に引っ貼られてしまうのが問題ではあります。
CSS Fonts – YUI Library – 
 

 

em

[CSS]Media Queriesで使う単位はpx, em, remのどれが適しているか検証 -px指定は注意が必要 | コリス – 
Pxの強化版。だけど親要素に引っ貼られてしまうのが玉に瑕。
 
こちらはbodyにremを使用して、バグを回避しています。でもIE疑似要素については言及してませんね。そこだけpx使うとかかな。
CSSのフォントサイズの指定の仕方 – Qiita – 
 

 

rem

 

Root em。親要素に引っ貼られることなく、直感的に使用することができる。当初大本命的に扱われてましたが、バグ多いですね。
こちらの方はpxとremの二段構えで挑もうとしています。正直2つ分指定するのは面倒くさいです。
【CSS3】フォントサイズは「rem」で指定するのが最適解。 – ONZE – 
 
でもAutoprefixerを使うことで自動的にpxを出力してくれるので、この点は問題ないと思います。
 
気をつけなければ行けないところは、IEでは最新版にも関わらず疑似要素でバグがあるそうです。
IE10/11 のバグを考えると CSS では rem 単位を使わない方が良い | かきしちカンパニー Web Magazine –
 

 

ビューポート基準

calcやvwなんていうCSS3時代のフォントサイズ設定。メディアクエリーで再度指定する手間がかからないので、めちゃ便利みたい。でもpxみたいに直感的にわかりにくいしなぁ。
[CSS]レスポンシブ対応の文字サイズを指定するこれからのテクニック | コリス – 
 
 
この方のやり方はなかなかいいのでは、と思います。
スマートフォンのフォントサイズをvwとcalcとremでリキッドにする | Katsunori Nippo – 
ただ、vwとcalc()はAndroid4.4未満では使用できません。とある通り、実用化はまだ先になるでしょう。
 
このあたり本当数学の分野似になってきているので、頭悪い自分の手には負えないですね。。。。。
 

まとめ

 
自分の場合は疑似要素に気をつけつつremをAutoprefixer使いつつ利用していこうと思いました。
,