先日、銀座アップルストアで行われたCSS Niteの後の飲み会での話題。
何の話からそうなったのかは知らないけれども、ヘッダーのあたりのCSSでpositionを使うかどうかという話をしていた。見ていると、コーディングをやっている4人中、3人がfloatのみ使う派、1人がfloatとpositionの組み合わせ派であるようだった。面白かったので参戦することにした。わたしはpositionも使う派です。
基本的には、どっち使おうが、見た目や使い勝手に問題が無ければOKだと思うけど、floatのみでできるのはスゴイなーと思っていろいろ聞いてみた(わたしはCSSが好きだしやっているけど、マニアックなほどにできるわけではないので)。
たとえばヘッダー内に、下記のようなものがあった場合。
・ページタイトル
・キャッチコピー
・グローバルナビゲーション
・ユーティリティナビゲーション(サイトマップとかの小さなやつ。なんて呼ぶのが正式?)
この順番でhtmlには書きたいけど、デザイン上は順番を崩したいときが、けっこうあると思う。
たとえば、ユーティリティナビは一番上の右側が良いとか、ページタイトルが製品名などならキャッチコピーはその上に置きたいとか。
その場合はどうするのか聞いてみたら、デザイン上の順番でhtmlも書く、ということだった。
わたしにはそれがとっても意外だった。
急いでいるときや、必要があるときに、そうすることはあるけれど、できれば順序よく書かないと気持ち悪いような気がするのだ。それを伝えようとしたが、うまく説明できなかった。
「それは本当に必要なの? 誰のためにそうするの?」とfloatの方々に聞かれ、
「え、なんでそうしないの? 使い勝手っていうか、気持ちの問題っていうかモゴモゴとにかくモゴモゴ」と答える堀内。
モゴモゴ・・・
今思えばこういうことかもしれない。
わたしはデザインとhtmlを同時進行することが多い。
デザインで煮詰まっているときやデザインカンプをクライアントに確認してもらっているときに、素のhtml書いてプロトタイプ作るとか、むしろデザインより先にhtmlと簡易的なCSSで作ったプロトタイプで動作確認とか。
そうすると、htmlは、デザイン上の制約を考えずに書くことになる。だからわたしはhtmlだけ見ても意味が伝わりやすいと思える順番で書くのだろう。
だから疑問に思っちゃったんだろう。
基本的にはどっちでも良いです。
そのときも、どっちが正しいかという議論をしていたわけではない。
結果が同じなら、人それぞれ、生産性が高いほうが良いと思う。慣れた方法が一番早いし、勝手なこだわりで工数が増えるのは誰にとってもよろしくない。
ユーザ層や戦略によって、優先順位も変わってくるわけでー。
面白かった。仕事人間としては、飲みの席での仕事の話、好きです。
追記:
float と position の戦いって、実際あると思うが、あまり興味はない。
興味はないけど、必要だとは思う。こだわる人がいないと進化しない。
そのあたりについては、別のエピソードがあるのでまた今度。
4 comments
Comments feed for this article
4月 15th, 2007 at 11:45
w2
WordPressなどではコンテンツの後にアーカイブなどのナビゲーション関係のHTMLが続くようで、それが一般的みたいですが、自分は変わり者で、コンテンツの前にアーカイブなどのナビゲーションを入れてます。
構造的HTML的な考え方やスクリーンリーダ、テキストブラウザ、ロボットからのアクセスを考えると、「結果が同じ…」にはならないと思います。
ですが、HTMLの順序についてのこだわりはウェブ開発者にとっても、なかなか論議する機会がないのだと思います。CSS Naked Dayなんかは良い機会だと思うのでうが、一瞬で終わってしまいますし。本来ならば、もっと論議されるべき課題でしょうね。
個人的にはPositionはブラウザ間でのバグ(違い)が多いので、できる限り使いたくないと思っています。
4月 15th, 2007 at 23:37
堀内
●w2さん
ご意見ありがとうございます!
そですね。「結果が同じ」というのは、仮定としても変ですね。笑
「結果がたいして変わらない」のであれば、他にやるべき、考えるべきことがたくさんあるだろう、ということです。時間は有限なので。
わたしの場合は、戦略的な優先順位を重視することが多いので、万人向けの「正しさ」とはズレたことをしているときもあります。ですが、誰にとっては何が使いやすいのだろうか、その最大公約数は何だろうか、という視点はずっと持っておきたいと思っています。
テキストリーダに最適化と言っても、使っている人たちの中でもいろんな層があり、そのどこにフォーカスするのかによって「使いやすい」順序は変わってくるのでしょうね。
とか、そういうことを考えていると、面白いです。
研究肌というか、きちんとしている人のことはとても尊敬しております。
4月 18th, 2007 at 15:22
iwaim
> 基本的にはどっちでも良いです。
何を考えての「基本」なのかでいろいろ違いますよね。
HTMLの「基本」(あるいは「本来」)を考えれば論理構造が適切にマークアップをすべきだからどちらでも良いというケースばかりではありません。
ま、業務でやっている人はCSS前提のHTML、見ため前提のHTMLと考えがちですから、《それは本当に必要なの? 誰のためにそうするの?》という意見がでるのも解ります。ただ、そういうのってtableレイアウトが流行っているときにtableでレイアウトしている人が、今はCSSでのレイアウトが流行っているからCSSでレイアウトしているというだけに思えてしまいます。結果的に成果物が良くなっているので比較すれば世の中が良くなっているとは言えるんでしょうけど。
5月 9th, 2007 at 01:30
堀内
●iwaimさん
わー。ありがとうございます。
iwaimさんみたいな人がいてこその発展ですよ。ほんと。
わたしあたりはベースとして商人的に考えてしまうので、HTMLの本質には迫れないのです。
「正しい」ことも移り変わっていくけど、その中で今正しいと思われていることをやりたい、という思いもありつつ、「これでなければならない、あれでなければならない」ではなく、足し算や掛け算で考えて選択することが多いです。見た目前提、CSS前提のHTMLというより、効果を期待したHTMLという感じで。