逆襲のletter-spacing
2005-07-23 Sat[Web制作 > コーディング]
こんぬつば。
朝っぱらから聖書要りませんかだの牛乳取りませんかだの、salsaの幸せと健康を案じてくれてご親切にありがとう。
でも、牛乳屋のおじさん、ごめん。
「全然飲まないのでぇ」と断ったけど、本当は牛乳大好きです。いや、インターフォンでそう伝えたときの、おじさんの気落ちした声が忘れられなくてさ。
VIVA牛乳! 牛乳フォー!!
えーと、今回のは、気にしない方には全く関係のない話。
MacIEは眼中に無し、って方はスルーしてくれて構わない感じ。
MacとWindowsとでは、多かれ少なかれ、ブラウザでの表示にちょっとした違いが現れるというのは周知のお話。両方で表示確認が取れていて、普通にブラウズできても、何かが違う。
そのひとつが行間や文字間である。
Macでは微妙に余裕があって、なにも設定せずとも読みやすい。
しかしWindows、特にIEの場合、文字間がぎちっと詰まって見えるのがどうしても許せなかった…ので少し前に、文字間のスタイルシートであるletter-spacingを設定したのだけれど、これをするとMacのIEで、記事のある枠から文字がはみ出してしまうのである。何回やっても。
letter-spacingを設定していないMacIEでの見え方
letter-spacingを設定しているMacIEでの見え方
毎日考BLOGでは記事部分に枠を付けていないからちょっと広がっているくらいにしか見えないけど、枠ありの場合は完璧に文字が飛び出る。
(毎日考のほうは枠ありなので、だらしなく飛び出た)
Macユーザ自体多くないとはいえ、Firefoxユーザが増えているとはいえ、それでもまだMacブラウザーはSafariに次いでIEが多いのだ。また、Mac版Firefox、Netscape7、Safariすべてで、記事部分の幅として指定したスペースより微妙に段落幅が広がっていた。文字が外枠ぎりぎりだ。かっこわりぃ、だめじゃん。Web屋も大したことねーな、と思われてはイヤだしな。
そのままめんどくさくて忙しくて、どうせ現状でも読めるのだからと放置していたのだが、今回対策を施してみた次第。症状や退避方法については以下。
→Mac IE 5で文字がはみ出たわけ(K Place* | Dialy)
→letter-spacingを指定した要素内の表示が崩れる(CSSバグリスト)
→letter-spacing問題
(株式会社メディアチャンネル - HTML・CSS解説)
→letter-spacingを指定した要素内で連続したbr要素が無視される(CSSバグリスト)
つまりこういうこと。
このバグ、スタイルシート界(?)では有名なバグで…
そうでなくてもMacIE、NN6以下に次いで消して欲しいブラウザです全く。
ということで、記事本文のみ文字間を広げてみました。
多少は見やすくなっているでしょうか。
そいではまた〜
朝っぱらから聖書要りませんかだの牛乳取りませんかだの、salsaの幸せと健康を案じてくれてご親切にありがとう。
でも、牛乳屋のおじさん、ごめん。
「全然飲まないのでぇ」と断ったけど、本当は牛乳大好きです。いや、インターフォンでそう伝えたときの、おじさんの気落ちした声が忘れられなくてさ。
VIVA牛乳! 牛乳フォー!!
えーと、今回のは、気にしない方には全く関係のない話。
MacIEは眼中に無し、って方はスルーしてくれて構わない感じ。
MacとWindowsとでは、多かれ少なかれ、ブラウザでの表示にちょっとした違いが現れるというのは周知のお話。両方で表示確認が取れていて、普通にブラウズできても、何かが違う。
そのひとつが行間や文字間である。
Macでは微妙に余裕があって、なにも設定せずとも読みやすい。
しかしWindows、特にIEの場合、文字間がぎちっと詰まって見えるのがどうしても許せなかった…ので少し前に、文字間のスタイルシートであるletter-spacingを設定したのだけれど、これをするとMacのIEで、記事のある枠から文字がはみ出してしまうのである。何回やっても。
letter-spacingを設定していないMacIEでの見え方
letter-spacingを設定しているMacIEでの見え方
毎日考BLOGでは記事部分に枠を付けていないからちょっと広がっているくらいにしか見えないけど、枠ありの場合は完璧に文字が飛び出る。
(毎日考のほうは枠ありなので、だらしなく飛び出た)
Macユーザ自体多くないとはいえ、Firefoxユーザが増えているとはいえ、それでもまだMacブラウザーはSafariに次いでIEが多いのだ。また、Mac版Firefox、Netscape7、Safariすべてで、記事部分の幅として指定したスペースより微妙に段落幅が広がっていた。文字が外枠ぎりぎりだ。かっこわりぃ、だめじゃん。Web屋も大したことねーな、と思われてはイヤだしな。
そのままめんどくさくて忙しくて、どうせ現状でも読めるのだからと放置していたのだが、今回対策を施してみた次第。症状や退避方法については以下。
→Mac IE 5で文字がはみ出たわけ(K Place* | Dialy)
→letter-spacingを指定した要素内の表示が崩れる(CSSバグリスト)
→letter-spacing問題
(株式会社メディアチャンネル - HTML・CSS解説)
→letter-spacingを指定した要素内で連続したbr要素が無視される(CSSバグリスト)
つまりこういうこと。
1.スタイルシートで文字間を広げる記述は、
div.entry {letter-spacing:0.15em;}
(「div.entry」に対応する部分は、<P>だったり<span>だったり、各自のスタイルシートで異なる。文字間を指定したい要素に記述する)
2.letter-spacingプロパティを指定した要素内では、<br>を2つ以上連続して置いても1つしか認識されないので、
br {letter-spacing: 0;}
と記述してやる必要がある。
3.ただし上記1と2の設定はMacIEではうまく認識されず、ブロック要素から文字が飛び出てしまう。
(逆に言えばここまでの設定で、Windowsではちゃんと表示できる)
4.したがって、letter-spacingを指定したい部分は
@media screen {
div.entry {letter-spacing: 0.15em;}
br {letter-spacing: 0;}
}
と記述する。
こうすればMacIEで、@media screenの中の設定を無視するように設定できるというわけ。
div.entry {letter-spacing:0.15em;}
(「div.entry」に対応する部分は、<P>だったり<span>だったり、各自のスタイルシートで異なる。文字間を指定したい要素に記述する)
2.letter-spacingプロパティを指定した要素内では、<br>を2つ以上連続して置いても1つしか認識されないので、
br {letter-spacing: 0;}
と記述してやる必要がある。
3.ただし上記1と2の設定はMacIEではうまく認識されず、ブロック要素から文字が飛び出てしまう。
(逆に言えばここまでの設定で、Windowsではちゃんと表示できる)
4.したがって、letter-spacingを指定したい部分は
@media screen {
div.entry {letter-spacing: 0.15em;}
br {letter-spacing: 0;}
}
と記述する。
こうすればMacIEで、@media screenの中の設定を無視するように設定できるというわけ。
このバグ、スタイルシート界(?)では有名なバグで…
そうでなくてもMacIE、NN6以下に次いで消して欲しいブラウザです全く。
ということで、記事本文のみ文字間を広げてみました。
多少は見やすくなっているでしょうか。
そいではまた〜
<< 軽井沢プチ避暑紀行 | main | 関東が震えた、そのとき >>
同じカテゴリの新着記事
- CSSエディタのCSSEditを愛用してます。 (2009-04-21)
- コーディングに慣れない人のコーディング (2008-10-31)
- 久しぶりのIE確認でCSS的衝撃的事実発覚 (2008-07-22)
- インデントの話ふたたび (2008-02-24)
- 派遣コーダーのユーウツ・2 (2008-02-23)
- ブログの一言コメントを楽に更新する (2007-12-06)
- コーダーの制作ルールをちょっと考える (2007-09-05)
- 絶対パス、ときどき相対パス (2007-08-14)
- 愛用のGrep検索/置換ソフト (2007-08-08)
- ブログパーツが表示されない理由(わけ) (2007-07-12)