-Sun&Moon Blog-
catsmoon.exblog.jp
エキサイトブログスキン配布 (Mac OS10.5 Leopard・Safari) ★基本的にコメントにレスしません
by catsmoon
プロフィールを見る
画像一覧
Top | Out
まだ早かった
2005年 02月 21日 |
ご存じの通り、私の配布するスキンは、昨今、最低と名高いtableタグを使った配置になっている。
tableタグというのは、本来、デザインのためではなく、表を作るためのものだから、デザインとして配置したいのならば、tableを使わず、CSSで指定すべきだという説明サイトが多く、まあ理屈で言えばその通りなのだろうが…。



現実的に、ではCSSだけで配置しようと思うとどうするかというと、つまりはfloatやpositionを使う事になる。
絶対値指定を使って、がっちり幅を決めれば、これは何とかならなくもない。
それでも、実にしばしば中身がはみだして零れ、隣と重なっているものを見る。

何故かというと、tableタグは、中に折り返し禁止を入れていない限り、基本的に何とかして中をはみ出さないように詰め込もうとするので、tableのセルの中に入ったdivなどは、その強制的なtableの仕様によって、有無を言わせず幅を小さくされることが多い。

それに対し、divなどのタグは、ブラウザによっては、何とかして横に全部表示してやろう、横幅が長くなろうが、はみだそうが(ここらはブラウザによって解釈が異なる)となることがあるので、うっかりブラウザごとに異なる幅の解釈を忘れて計算を間違ったりすると、そりゃもう見事にはみ出して重なったり、サイドバーが落ちたりする(つまり並ばずに下に送られる)

つまり環境毎のチェックを、tableタグを使うよりずっとずっとマメに厳密にやらないと、環境によっては読めない程の崩れっぷりを披露してくれる。
これは実質的に、Macでの環境チェックができないWinユーザーの場合、Macで崩れててもそれは知らないという姿勢になる。
私も、Macは少数派だということは知っているし、教えてあげたって自分でMacのチェックはできないのだろうから、これは読むのを諦めて立ち去るだけで、いちいち崩れを教えてあげたりは普通しない。

ちなみにMacユーザーの場合、仮にWinでのチェックができなくたって、なにせ圧倒的多数を誇るWinのこと、否応なく、崩れてる、どうにかせい!という苦情の嵐を浴びる事になって、対策しない訳にはいかなくなる(^^;

そういう事情に加えて、私は絶対値で指定するのが好きではない。
相対的に記事部分が伸縮するようにも作れなくはないが、実に面倒臭い。
ことに3カラムで作ろうと思うと、うんざりする。
tableを使えば、5分で出来ることが、CSSだけでやろうと思うと、1時間かかったりするのだ。
更に公開する以上、出来るだけカスタマイズしやすく作りたい。
しかるに、CSSだけでデザインが設定されたスキンを、自力でカスタマイズ出来る人は、多分、私のスキンなんか使わない。
自分で好きなスキン作るだろうw

そういう訳で、私はデザインと中身を切り離すべきだという理想論はわかるが、ならばtableタグに匹敵するくらい、環境の影響を受けにくく、わかりやすくしてくれ、それまでは知らないという姿勢できた。
誰がこういう切り離しを推進しているのか知らないが、私が付き合っていらん苦労をする義理はない。
CSSの方が便利ならそうするし、HTMLの方が便利ならそっちを使う。

そもそもtableをデザイン目的で使ってはいけないという説明で、tableはそういう目的のタグじゃないからだという以外に説得力のある説明を見た事がない。
HTMLタグには内容を示す意味があるのだからと言われても、そんなものページを見る人にはわからない。
CSSに対応していないブラウザでは、table使ってる方がまだ見えやすいだろうし(divだけで作っていたら、対応してなきゃ全部縦並びだ)

とはいえ、いずれはこれが主流になるだろうし、呪われたIEが駆逐されるか進歩すれば、更にその流れは促進されるだろう。
その時には、あっさりと作れるように、そろそろ一つ作ろうかと思って、3カラムを作ってみた。
(ちなみに公開する必要もなく、従って崩れてるという苦情もきにくいブログでは、既に練習の心算で2カラムだが使用している)

まあ、positionとmargin、floatを使って、どうにか伸縮ものは作れた。
作れたんだが。
やっぱりIEがやってくれた。
何をどう考えても、出るはずのない余白が右に生じて、その分が横スクロールとなる。
もちろん、それを無視して読むのに支障はないのだが、気になる。
私のソースにミスがあるのかと思って、tableを使わずに3カラム表示にしているブログもいくつか、普段は使わないIEで見てみたが、それ以前の問題としてグチャグチャであるか、やはり同様の空白、横スクロールが出るかしていたから、これは毎度おなじみのIE固有の現象なのだろう。

かくして、面倒な思いをして作ったスキンはお蔵入り。
CSSだけを使って、tableタグを排除するのは時期尚早という結論になった。
だって、table使えば、そんなものは出ないんだから。
table使うより苦労して、しかもWinでは崩れてると言われるリスクはおそらく数倍で、他の人が使いたいと思っても、およそ初心者には無理であろうと思われる程カスタマイズが難しく、挙げ句にどうしても問題が出るというなら、なんでそれを使う必要があるか。
私は理想より現実を取る。
[PR]
<< 右2列スキン一覧1 PageTop 死刑制度容認、初の8割超 >>
XML | ATOM

個人情報保護
情報取得について
免責事項
Blue Paper Skin by Sun&Moon