« デルタ空軍作戦続行 | Main | 続・IE5でもココログのレイアウトを崩さない方法 »

Feb 17, 2004

IE5でもココログのレイアウトを崩さない方法

現在のココログをIE5.xで閲覧すると、いくつかのスタイルとレイアウトの組み合わせにおいて、本来右にあるべきサイドバーが下に来る、などといったレイアウト崩壊が発生する場合がある。

これは、スタイルシートの width および border の実装の違いによるものである。

例えば、「両サイドバー付」レイアウトを使用し、#container { width: 800px; border: 1px solid; } の指定にしてある場合のブラウザの動作は、以下のようなイメージになる。
#前提として、#left / #center /#right の border は 0px あるいは設定無し。

【IE6・NN6/7のWidth属性】
WIDTH behavior of IE6/NN6/NN7

【IE5のWidth属性】
WIDTH behavior of IE5

見てのとおり、左右のボーダーの1ピクセル×2=2ピクセル分を、枠の外にカウントするか中にするかの違いがある。
信じられない人は、このような定規ツールや、[PrintScreen] 後ペイントなどのソフトに貼り付けて、確認してみるといい。

これを防止し、IE5でも正常にするためには、以下のようなスタイル指定をもぐりこませればよい。

<style type="text/css"><!-- #container { width: 802px } --></style>

具体的には、「トップ > ウェブログ一覧 > ウェブログ名 > 設定 > ウェブログの基本情報」の中の「ウェブログのサブタイトル(キャッチフレーズ):」の中にでも追加しておけばよいだろう。
スタイルは通常、ココログ保存ディレクトリの styles.css に書き込んであるが、ソース中の <link rel="stylesheet"> よりも後の方に上記のような指定があれば、そちらが優先されることになる。

実際にこれを適用し、どうやら問題解決しているサイトを紹介する。ソースを見てもらえればわかるだろう。
BLACK LAY
あるふれっどの館


各スタイルおよびレイアウトの組み合わせにおいて、実際に #container の width に指定すればよい値は以下の通り。 背景が黄色のところが、指定を必要とする値である。背景が白のものは、もともと border 指定がないので、特にいじらなくても問題なく動作する。

あくまで、2004/02/17 の調査結果であるので注意。
(2004/03/09 に更新)
(2004/03/10 にも更新)

左サイドバー付右サイドバー付両サイドバー付
あゆ702702902
さくら700700900
アメジスト700700900
エレガンス600600800
カナリア軍団700700900
カフェオレ700700900
クリスマス 緑602602802
クリスマス 赤602602802
クール702702902
サーフ700700900
システム602602802
タイプパッド風600600800
ダンディ700700900
トマト702702902
ハロー702702902
パプリカ700700900
パール702702902
ビジネス702702902
プレッシャー700700900
ボックス カーキ600600800
ボックス グリーン600600800
モノトーン702702902
ライン ネイビー602602802
ライン ワイン602602802
ルージュ600600800
和風702702902
専用700700900
山手線702702902
---
清流702702902
無地700700900
@nifty 1600600800
@nifty 2600600800
M▲TRIX602602802

[2004/03/09] チェックしてみたら、清流だけstyles.css内の数値が修正されていた。何が起きてる?
[2004/03/10] 昨日更新したばかりなのに、今日またスタイルが10個も増えた。…増えるのはいいんだけどさァ;´д`

なお厳密には、border だけでなく padding や margin の指定も考慮に加える必要があるが、現在のところ用意されているすべてのスタイルにおいては、#container { padding: 0px } となっているので影響はない。
自分で #container の padding を追加したり、#left / #center / #right の margin を追加したり、border を太くしたりといった場合や、将来的に用意されるスタイルが変更された場合などには、適宜に数値を変更して欲しい。


なお、この件については@niftyの方にも連絡したところ、「一度Internet Explorer 6にバージョンアップをされてから、再度レイアウトをお試しいただければと存じます。」との回答をいただいた。 呆れるほかない。 @niftyには再度、以下のようなメールを投げた。さて、回答は来るだろうか。

[2004/2/22] 回答が届いた。

1.IE6以上推奨であることは、コンテンツ作者には提示されている情報だが、閲覧者には提示されていない。

→「ココログ」アイコンの下にでも自動的に追加していただけるなら幸いです。あるいは、作者に個々に記述させるようマニュアルに記載しておくなど。

2.ココログを利用するコンテンツ作者としては、多くの人に読んでもらいたいという基本的姿勢がある。

→今回の件は、同じくココログで件のスタイルを使用している友人2名より「レイアウトが崩れると閲覧者に言われる」との報告を受け、調査した結果を元にした要望であり、私個人のIEが5.xか6.xかはそもそも問題外でした。
(私個人は両方を用意しており、Web開発時のチェックに使用しています。)
なお、IE6.1でも同様なレイアウト障害が出ているとの報告も受けております。

もとより全ブラウザ対応を望んでいるわけではありません。システム開発側の苦労も承知しております。
その上で、可能ならばバランスのよい対応策をご考慮いただきたいと願っております。
システム側で対応できないということであれば、せめてスタイル指定(style.cssの編集許可、あるいは<style>タグの追加など)の自由度を上げるなどの方針について、協議していただきたいと思います。

|

Comments

 こちらの記事にリンクさせていただきました。トラックバックは別のところに引かせていただいたので、コメントにて失礼します。
 大変参考になる記事でした。ありがとうございました。

Posted by: かみぃ@とのみ倶楽部 | Apr 07, 2004 at 04:09

The comments to this entry are closed.