最近のWebデザインでは、font-feature-settings: "palt"
を使って文字間を自動調整する手法が広く使われています。
これにより日本語の文章がすっきりと見やすくなるのですが、時として文字が詰まりすぎてしまい、かえって読みづらくなることがあります。
文字が詰まりすぎる場合、もっともシンプルな解決策はletter-spacing
との組み合わせです。
.text {
font-feature-settings: "palt";
letter-spacing: 0.05em;
}
letter-spacing
の値は0.02em〜0.08emの間で調整すると良いでしょう。フォントの種類や文章の長さによって、ちょうど良い値は変わってきます。
実はfont-feature-settings
には強度を指定することができます。
.text {
font-feature-settings: "palt" 1; /* 完全に有効 */
/* または */
font-feature-settings: "palt" 0; /* 無効 */
}
句読点やカッコなど、特定の文字だけ詰めを調整したいこともあります。そんな時はHTMLで文字をくくって個別に指定できます。
<p class="text">
こんにちは<span class="punctuation">、</span>みなさん
</p>
.text {
font-feature-settings: "palt";
}
.punctuation {
font-feature-settings: "palt" 0;
}
より柔軟な制御が必要な場合は、font-kerning
プロパティを使用する手もあります。
.text {
font-kerning: normal; /* auto | normal | none */
}
実際の制作現場では、これらの技術を組み合わせて使うことが多いです。例えば:
.article-text {
/* 基本的な文字詰め */
font-feature-settings: "palt";
/* 少し字間を開ける */
letter-spacing: 0.03em;
}
/* 見出しは強めの詰め */
.article-heading {
font-feature-settings: "palt" 1;
letter-spacing: 0;
}
/* 句読点は詰めない */
.punctuation {
font-feature-settings: "palt" 0;
}