フロー要素による「フローシステム」とは,垂直方向に閲覧するとき,ストレスなく見られるレイアウトをいいます.フローシステムの垂直配置(vertical rhythm)を整えることは難しいとされますが,ふくろうセレクタ(owl selector)を使って短いCSSで実現できるというお話です.
ふくろうセレクタとは,
main * + * { ... }
のように,全称セレクタと隣接セレクタを用いた「* + *
」の記述がふくろうの表情に似ているところから名付けられました.つまりは隣接する要素はなんでも,ふくろうセレクタで指定できるのです.
main * + * { margin-top: 1.5rem; }
とすれば,main
タグ内のすべての要素の間で等間隔の空白が入ります.ここに,空白を入れたくない要素があれば,例えば,
main * + *:not(p){ margin: 3rem 0; }
とすれば,p
要素の上下に空白が入りません.逆に,空白を入れずに要素を固めたい場合は,
li, br { margin-top: 0; }
とすればよいのです.