Google のガイドライン
Google がガイドラインを出しているので参考までに。
下記は画像 - Search Console ヘルプからの引用です。
重要なテキストを画像に埋め込まない
重要なテキストを、リンク ページの見出しやメニュー項目などの要素の画像に埋め込まないでください。ユーザーによっては、その要素にアクセスできないことがあるからです。重要なテキスト ベースのコンテンツにすべてのユーザーが確実にアクセスできるようにするには、通常の HTML 内に記述してください。
というわけで、重要なコンテンツを画像化する事は推奨されていないようです。
Google ウェブマスター向け公式ブログ
Google公式ブログによれば、text-indent: -9999px で文字列を飛ばす行為がガイドライン違反とあります。
CSS
1#navi li {
2 text-indent: -9999px;
3}
4
5#navi li#home {
6 background: url(./img/navi/home.gif) no-repeat;
7}
8
9#navi li#products {
10 background: url(./img/navi/products.gif) no-repeat;
11}
一昔前に流行った記憶がありますが、私もこの手法はよろしくないと読んだ覚えがあります。
対策として、text-indent: 100%;
が生まれたようですが、やっている事は変わらないので、これもガイドライン違反なのでしょう。
私はこの手法の問題は、text-indent
でテキストを画面領域外に飛ばす事で、「背景画像を前景であるかのように扱っている事」にあると考えています。
機械的に判断すれば、必要なはずのコンテンツ(テキスト)を領域外に飛ばし、無くても良いはずの背景画像を残す行為は明らかにおかしいのでスパム行為と判定されるのは自然だと思います。
テキストブラウザで確認する
text-indent
の手法は「テキストブラウザ/音声ブラウザで閲覧した場合にCSSが無効化されるが故にテキストコンテンツとして表示される」という特徴があり、当初は良い手法であるとする意見がありました。
しかし、Google がそれを否定した事で「テキストブラウザで閲覧可能 === OK」の概念は覆りました。
Googleは隠しテキストと隠しリンク - Search Console ヘルプで次のように説明しており、テキストブラウザで確認する事は現在でも必要条件の一つですが、それが全てではありません。
サイトのアクセシビリティは、ブラウザで JavaScript、Flash、画像をオフにしたり、Lynx(リンク先は英語)などのテキスト ブラウザを使用したりすることで確認できます。
前景と背景
前述の前景/背景に関しては、それがコンテンツかどうかで決まります。
重要なコンテンツは前景(img要素)で現し、コンテンツでない画像(表示されなくても支障がない画像)は背景(background-image)で現します。
CSS3 には次の注記があります。
注記: CSS においては、 content プロパティにより,スタイル的な前景画像を提供し得る。 (意味論的に重要な前景画像は、文書マークアップを通して提供されるべきである — 例えば HTML の img タグなど。)
SEO対策以前の前提として、HTML/CSSの仕様に準拠した書き方をする必要があります。
更新履歴
- 2017/07/20 0:22 「テキストブラウザで確認する」と「前景と背景」を追記
Re: landy77 さん
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。