2009-07-17 3 views
4

私はウェブサイトのフロントエンドで作業しており、レイアウト目的で常にdivを入れ子にしています。レイアウト用のテーブルを使用しないと、ボックス内のボックスをレイアウトするのは自然な選択肢のようです。しかし、私の完成したソースコードを見ると、3〜4層のネストされたdivの深さを見るのは珍しくありません...ネストされたDIVの過度使用。検索エンジンの索引作成に悪い習慣や悪い?

これは問題ですか、私はdivの量を減らすためにレイアウトを最適化しようと努力しています。を使用して?検索エンジンの索引付けには悪いですか(あるいは何の違いもありません)?

編集:私の混乱は、検索エンジンがdivをどのように扱うかについて私が無知であるという事実から生じると思います。 divで何を探しているのですか?(IDは重要です... divが何らかの形でタイトルを記述していれば...検索エンジンはdivを解析しますか?)

答えて

5

私はそれことをtheresのいずれかの実証的証拠はないと思います検索エンジンには悪いが、その決定的に悪い習慣である。それはそれ自身のニックネームを持っています - >divitis

一般的には、CSSを通して何が達成できるかを知らないことから生じます。もちろん複雑なレイアウトではdivを入れ子にする必要があるかもしれませんが、常に意味のあるウェブサイトを完全に持つことはできません。しかし、レイアウトがどれほど複雑であっても、私は2〜3つ以上の深みを持つ必要はありませんでした。

実際には、レイアウトを中央に配置するために、ボディコンテナ全体が表示されます。これは、たとえば、ルートに3つのdivがあり、3つがすべて丸められているためです異なるウィンドウサイズでお互いに離れている可能性があります。

これが役に立ちます。

+0

実際に私はその固有の構造を持つXHTMLタグの無知(すなわち、DL、DD、DT、フィールドセットなど)をCSSよりも多くしています。それ以外の場合は、正しいです。 –

1

検索エンジンのインデックス作成では、テーブルを使用するよりもひどいことはありませんが、div自体は説明的ではありません。 divの内容をより正確に記述するには、<section> <header> <footer><article>などの新しいHTML5要素を調べることをおすすめします。これらは検索エンジンのランキングに適しています。

+1

正しい:検索エンジンはそれほどページのレイアウトを気にしません。 –

2

検索インデックスには悪いとは思えませんが、CSSボックスモデルを正しく使用していないと入れ子になっているDIVが多すぎます。たとえば、DIVを含むDIVに2つのimgタグが並んでいる場合は、imgタグの周りにdivを置く必要はないでしょう。imgをdisplay:blockに設定するとDIVのように動作します。

その後、再び、私はあなたのコードが実際にどのように見えるか分からないので、私は本当に、それが何かのようなにおいがすると言うことはできません...

1

検索エンジンに気を付ける必要はありません。また、divは意味的に透過的と呼ぶもので、意味はありません。そのため、コンテンツのブロックを定義するのに適しています。

CSSスタイルとレイアウトにdivsをフックとして使用することは認められていますが、ネストをあなたから離れさせるのは非常に簡単です。ネストされたdivを減らそうとする場合は、それらのうちのどれかが意味的に意味のあるタグに置き換えられるかどうかを確認してください。ドキュメントの継承に注意することで、余分なタグを使わずに特定のスタイルを適用できるようになります。

あなたのマークアップを見ることなく判断することはできませんが、半複雑なレイアウトであっても3〜4層のdivが目立つことはないかもしれません。

関連する問題