「WordPressで学ぶPHP(2)データ構造(配列・オブジェクト)編」を発売しました。
本書は「WordPressで学ぶPHP(1)変数・制御構造編」の続編にあたり、PHPの「データ構造」(配列とオブジェクト)について解説します。
配列やオブジェクトは、頭の中で考えるだけでは、イメージがつかみにくいです。本書では図を多用して、配列やオブジェクトをなるべく分かりやすく解説することを心がけました。
Kindle本で、定価250円です。
KDPでfont-familyが効かなくなる不具合・その後
先日、「KDPでfont-familyが効かなくなる不具合」という記事を書きました。
その後、試行錯誤した結果、問題を回避する方法が分かりました。
1.font-familyプロパティが効かなくなる条件
以下のどちらかの状況になっていると、font-familyプロパティが効かなくなります。
1-1.同一要素に複数のfont-familyを指定する
まず、クラスセレクタ等を使って同一要素に複数のfont-familyを指定すると、他の要素のfont-familyの指定も効かなくなります。
例えば、以下のスタイルシートを指定すると、font-familyの指定が効かなくなります。
p.a { font-family : ○○○; } p.b { font-family : □□□; }
1-2.HTML内にfont-familyの指定がないブロック系要素が存在する
HTML内にブロック系の要素(pやh1~h6など)がある一方で、スタイルシート内でそれらの要素に対するfont-familyを指定していないと、font-familyの指定が効かなくなります。
例えば、HTML内でh3要素を使っているとします。
この場合、スタイルシートでh3要素にfont-familyプロパティを指定していないと、他の要素のfont-familyの指定も効かなくなります。
なお、インライン系要素(aやspanなど)については、スタイルシートでfont-familyプロパティを指定していなくても問題ないようです。
2.回避方法
上記のことから、font-familyの指定が反映されるようにするには、以下の2点を守るようにします。
- 1.font-familyプロパティは、要素セレクタに対して指定する
- 2.HTMLに存在する個々のブロック系要素に対し、スタイルシートでfont-familyプロパティを指定する