4

使用して一時的または永久に何かを非表示にしても大丈夫display:noneですか?さまざまなプラグインなどからのページの多くのコンポーネントがあり、クライアントがページ上に何かを望まない場合は、ページdispaly:noneから物事を非表示にするために使用する動的サイトで。クライアントが戻ってきて、そのことを再度有効にするように依頼できるため、実際のソースからそのことを削除しません。

それで、物事を表示から隠しておくための長所と短所は何ですか:要素をDisplay:none永久に非表示にしておく場合はありませんか?

SEO、スクリーンリーダー、アクセシビリティなどの点で短所はありますか?

4

6 に答える 6

12

クライアントがそれを削除したい場合は、ページのバックアップを作成し、実際に削除されたページを投稿します。実際にアイテムを削除する代わりにCSSを使用しないでください。彼らが将来それを望んでいると判断した場合は、バックアップをライブコピーと交換してください。動的出力(PHPまたは同等のテクノロジーの場合)を扱っている場合は、コメントを使用してその特定の出力を停止し、応答に含まれないようにすることができます。

于 2010-02-18T15:31:12.583 に答える
4

長所:非常に簡単です

短所:

  • あなたはまだサーバー側でコンポーネントをロードしていて、クライアントはそれらをダウンロードします。ブラウザは単にそれらを「表示」しません。
  • 「ソースの表示」を使用している人は誰でも、「非表示」の値を見ることができます。したがって、機密情報を隠すために使用しないでください。

これらのセクションのサーバー側を単に「コメント」して、サーバーでの多くの処理、帯域幅などを節約できます。

于 2010-02-18T15:33:31.347 に答える
2

一部の検索エンジン(たとえばGoogle)が非表示のコンテンツをストックしていることもここで言及する価値があります。

使用して大量のテキストを隠すdisplay:none;ことは、多くの検索エンジンがキーワードスパムとして取り上げるものの1つです。

:)

于 2010-02-18T15:58:04.120 に答える
1

クライアント側のAjaxを実行する場合は、「display:none」を使用してコンテンツを非表示/表示するのが理にかなっています。このようにして、サーバーのラウンドトリップを行わずにビュー/タブを切り替えることができます。

セキュリティに影響がある場合は、ページのマークアップから実際に何かを削除する必要があります。ユーザーが機密情報を表示する権利を持っていない場合は、[ソースの表示]をクリックしたときにその情報が表示されないようにする必要があります。

于 2010-02-18T15:31:19.167 に答える
1

display: none人々がcssをオフにしたり、cssをサポートしていないブラウザを使用したりするときに、表示したいものを非表示にするのは良いことです。

于 2010-02-18T15:31:52.583 に答える
0

アクセシビリティに関しては、「display:none;」で何かが隠されている可能性が高いです。スクリーンリーダーは読み上げません。あなたがそれをそのようにするつもりなら、これは受け入れられるかもしれません。

スクリーンリーダー/cssオファーのみのコンテンツを非表示にする代わりに、次のクラスを使用することもできます。

.offscreen {
    position: absolute;
    left: -9000px;
    width: 0;
    overflow: hidden;
}

そして次のHTML:

<h3 class="offscreen">Site Navigation</h3>

非表示のテクニックの詳細については、http: //www.access-matters.com/2005/04/23/screen-reader-test-results/をご覧ください。

于 2010-02-25T03:36:54.277 に答える