CSS ではなぜ「8 の倍数」が余白の基準になるのか
現代の UI デザインでは「余白は 8 の倍数で設定する」というルールがよく用いられる。これは単なる慣習ではなく、画面密度・タイポグラフィ・スケールの数学的整合性に裏付けられた経験則である。
現代の UI デザインでは「余白は 8 の倍数で設定する」というルールがよく用いられる。これは単なる慣習ではなく、画面密度・タイポグラフィ・スケールの数学的整合性に裏付けられた経験則である。
明朝体やセリフ体で書かれた文章でも、太字はゴシック体で表示されることが多い。これはデザイン上の意図的な選択であり、可読性・視認性・歴史的慣習の 3 つの理由がある。
5 行 3 列のグリッドを作成してみます。
<div id="wrap">
<div id="elem">要素</div>
</div>
#wrap{
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-template-rows: repeat(5, 1fr);
}
1fr は等分した長さのことです。
repeat(3, 1fr) は 1fr を 3 回繰り返すのと同義で、
省略せずに書くと 1fr 1fr 1fr になります。
また、auto は、グリッド内の要素にグリッドのサイズを合わせるときに用います。
グリッドを定義した後は、要素を配置します。
要素の配置は、grid-row と grid-column を用いて行います。(ただし、grid-row-start、grid-row-end、grid-column-start、grid-column-end を使用しても可能です。)
図のように要素を 4 行 2 列目に要素を配置したいとします。

4 行目は 4 と 5 の間なので grid-row: 4 / 5; とし、
2 列目は 2 と 3 の間なので grid-column: 2 / 3; とします。
#elem{
grid-column: 2 / 3;
grid-row: 4 / 5;
}

4 行目に列いっぱいで配置したい場合は、
列が 1 と -1 の間なので grid-column: 1 / -1 とします。(このレイアウトの場合 grid-column: 1 / 4 でもかまいませんが端なので -1 としています。)
#elem{
grid-column: 1 / -1; /* grid-column: 1 / 4; でも可*/
grid-row: 4 / 5;
}
span キーワードを使用すると、複数の行や列をまたがることができます。(ただし、span を使用せずとも可能です。)

2 列目と 3 列目をまたがるように配置したい場合は、grid-column: 2 / span 2; とします。
#elem{
grid-column: 2 / span 2;
grid-row: 4 / 5;
}
以上、グリッドについての解説でした。