4

Web デザイナーの友人の 1 人はまだテーブルを使用してサイトを作成していますが、彼は css を非常にうまく使用しており、私も css をうまく使用してい<div>ますが、友人よりもレイアウトでクロスブラウザーの問題に直面しています。

そして、私は友人に の短所について何らかの理由を与えました<table>。友達との私の議論全体を読んでください。

I - あなたのサイトはスクリーン リーダーに問題があります

私の友人- わかりましたが、これに関してクライアントから電話を受けたことはありません.

I - クライアントから変更があった場合、レイアウトの変更により多くの時間を費やすことになります。

私の友人- 私はそうは思いませんが、もしそうだとしたら、時間を節約する方法を教えて<div>ください

I - あなたのサイトは検索エンジンでうまく機能しません。

私の友人- それは真実ではありません。私は多くのサイトを作成しましたが、これに関してどのサイトやクライアントにも問題はありません

I - レイアウトは古い方法で、非 w3c で非標準の方法です。

私の友人- 何が古いのか、何が新しいのか、W3C とは誰なのかわかりません。標準とは何ですか? 私が作成したものはすべてのブラウザーで機能しますが、それで十分であり、クライアントは標準および W3C ガイドラインのルールに料金を支払うことはありません

I - あなたのサイトはモバイル ブラウザでは動作しません

私の友人- 問題ありません。クライアントは携帯電話を気にしません。

I - サイトにアクセスできませんか?

My Friend - アクセスできないとはどういう意味ですか? 私が作るものはすべて、すべてのブラウザーで動作します。私のどのクライアントもアクセシビリティについて尋ねたことはありません

I - 今後、テーブルで仕事をすることはありませんか?

私の友人- OK、クライアントがテーブル付きのサイトを受け入れなくても問題ありません。将来、div ベースのレイアウトについて学びます。

私の質問?

  • table+css を使用してデスクトップ ブラウザーのクロス ブラウザー レイアウトを作成するのは、+css よりも簡単 divですか?
  • 私が使用してもクライアントが気にしない場合、開発者がCSSレイアウトの代わりに DIV+ レイアウトを使用する利点は何ですか?<table>
4

6 に答える 6

7

個人的には、セルが互いに密接に結合され、互いに依存しているテーブルよりも、独立したチャンクの観点からレイアウトを考える方がはるかに簡単だと思います。両方の方法を広範に使用したので、div について学習すると、div の方が簡単になります。

テーブルを維持するのも悪夢です。列を追加する場合は、他の行が影響を受けないようにする必要があります。CSS を使用しても、表の HTML は依然として非常に肥大化しており、一目で理解するのは困難です (特に入れ子になった表の場合)。

表がスクリーン リーダーにとって本当に大きな問題であるとしたら、私は驚きます (ソフトウェアがあらゆる種類の Web ページを処理できるほどスマートであることを願っています)。ただし、すべてのユーザーがサイトにアクセスできるようにすることは法律で定められているため、適切な手段をすべて講じる必要があります。

携帯電話は表をうまく表示できます。ここでの唯一の問題は、別のモバイル スタイルシートを作成する場合、列の書式を削除することは事実上不可能です。

最後に、SEO に関しては、違いはありません。SE は、コードの有効性は関係ないと何度も言います。

于 2010-01-27T11:03:05.147 に答える
3

ほとんどの人にとって、表を使用して Web ページをレイアウトすることは、おそらく CSS よりも直感的です。

レイアウトにもよるけど。深くネストされたテーブルは、非常に複雑になる可能性があります。CSS レイアウト オプション (現時点では基本的にフロート) は、ページ レイアウトに関する別の考え方です。CSS フロートの観点からレイアウトを考えることに慣れているので、最近はテーブルよりも簡単だと思います。

IE には float 関連のバグがいくつかあります。これらは、CSS レイアウトに関するクロスブラウザーの問題の主な原因だと思います。

于 2010-01-27T10:18:16.607 に答える
2

CSS フレームワークを使用すると、DIV のレイアウトを簡単に作成できます。

私は個人的に960 Grid Systemを使用していますが、他にもたくさんあります。

于 2010-01-27T11:54:46.760 に答える
1

CSSはより柔軟でクリーンです。限目。個人的には、意味のある名前を持つ3つのネストされたdivは、3つのテーブルtr tdよりもはるかに読みやすいと思いますか?それが新しく受け入れられた標準である理由があります。私はテーブルを使います。ただし、表形式のデータを表示する場合のみ。CSSのトリックを学んだら、完全にクロスブラウザ互換の超クリーンなdiv構造を書くことができます。

私はあなたの友達のように感じた時を思い出します。それは主に恐怖に基づいていました。恐れることはありません。そして、コードとブラウザーの将来を決定するのは私たち開発者であることを忘れないでください。ここでも他のすべての答えに同意します。(最初から)どのように実行する場合でも、グリッドレイアウトを使用する場合でも、テーブルレスレイアウトの方がはるかに満足できます。そして、上記に同意するために、サイトをブロックとして考えることは、TONを助けます。幸運を!

于 2010-01-27T12:50:56.920 に答える
1

誰も言及しなかったように、HTML はセマンティック マークアップを目指しています。つまり、使用するタグにはセマンティックな意味があります。

したがってtable表形式のデータを使用することは問題なく、それを行う唯一の方法です。
しかし、tablefor layout を使用することは意味論的意味と矛盾します。

そしてセマ​​ンティックの関連性は過小評価されるべきではありません。セマンティックは WWW が現在目指しているものだからです ( Semantic Web )。セマンティック Web と HTML が必ずしも関連しているわけではないことはわかっていますが、HTML を正しく使用することは、その助けになるだけだと思います。

divsで魅力的なレイアウトを作成するのは、もっと難しいかもしれません。これには、柔軟性の向上という利点があります。

そして、すでに述べたように、保守性はテーブルの苦痛になる可能性があります。

私は個人的に、HTML ファイルをできるだけ意味的に正しいものに保つようにしています。つまり、適切な目的のために適切なタグを使用しています。外観(レイアウトが属するもの) は CSS の問題です。

ところで。あなたが探しているCSS vs tablesなら、多くの素晴らしい比較を取得してください(ほとんどはCSSを支持しています).

于 2010-01-27T13:00:39.307 に答える
0

テーブル レイアウトは html を増やし、html を増やすと記述および維持するコードが増え、js を介した DOM 操作の明確性が低下します。css コードの量はほぼ同じままです (2004 年のインライン スタイル マークアップについて話しているわけではありません。これにより、css の量が大幅に削減されることは間違いありません)。そして、テーブルレイアウトに反対するより良いseo要因が常にあります. したがって、css を完全に理解していれば、これほど簡単なことはありません。最近では ie6 と ie7 をサポートすることさえ自明ではないため、「クロス ブラウザー」ステートメントにどのブラウザーを含めるかを明確にする必要があるかもしれません。

于 2010-01-27T10:18:39.553 に答える