これは今までで最も簡単な質問かもしれませんが、私は単にそれを理解できなかったかもしれません。私は今、ウェブサイトで作業しています。私は、HTMLをきれいに編集しやすくするために、できるだけ少数の<div>
要素を使用したいと考えています。現時点では、私は本質的に持っています:divを隠すことなくコンテンツを隠していますか?
非常にシンプルでエレガントな、はい?しかし、クライアントは、彼らのヘッダーが会社名とロゴを含む単一の大きな画像で構成されることを望んでいます。だから私のオプションはかなり明確です - <img>
タグを使うか、background-image
プロパティをヘッダの<div>
に設定してください。しかし、その後私はSEOについて考えるようになった。 Googleのために、<div>
というヘッダーに自分のウェブサイトのタイトルを持つ<h1>
要素が含まれていても、この要素を隠して、人間のユーザーには背景画像しか表示されないようにする必要があります。
display:none;
CSSプロパティを使用する場合は、背景を含めて<div>
全体が消えますが、 <div>
自体を隠すことなく、<div>
の内容を隠す良い方法はありますか?
もっと良い方法は、他のh1がページに現れ、何かのように隠れてしまいますので、id/classを使用することです。 'h1#hide {display:none; visible:hidden;}'どう思いますか? – DaMainBoss
はい、これは私の間違いです。それをキャッチするためにありがとう。更新しました。 私はできるだけ余分なids/classesを避け、文書の流れを使って指示しますが、それは単なる好みです。後で読むと変更するのが簡単になります。 :) – Joshua
私はこれを考えなかったことを馬鹿げています。ありがとうございました。副作用ですが、私のような単純なページでは違いはありません。クラスやIDの使用は再帰的な定義を使うよりはるかに簡単です。したがって、「#header h1」はレンダリングに少し時間がかかります(ページに何千もの要素がある場合にのみ目立ちます) – stevendesu