0

タグをクリックしたときに表示される点線のボックスにうんざりしているので、それらを p タグに置き換え始め、クリック イベントのイベント リスナーを追加しました。

他の人気のあるサイトがこれを行っていないことに気が付かずにはいられません (たとえば、SO で [質問を投稿] をクリックすると、煩わしい点線のボックスが表示されます)。

a タグを p タグに置き換えない正当な理由はありますか。特別な a タグ プロパティは必要ありません...実際、JavaScript で preventDefault() を使用して、リンクが何度か停止するようにする必要があります。

Aタグはほぼなくしても大丈夫ですか?

これは、主要な最新ブラウザに関する質問です。

私はそれらを取り除こうとしています...そして、どこでもまだ使用されているのを見ると、何かが足りないと妄想しています。

4

4 に答える 4

11

いいえ、これは問題ありません。

スタイルをサポートしていないブラウザにはアンカー タグが必要です。古いバージョンの IE について話しているだけです。スクリーン リーダー、テキストのみのユーザー、およびブラウザー プラグインはすべて、アンカー タグを見つけることを期待していることに注意してください。

Dash が指摘したように、検索エンジン クローラーなどのボットも、ボットを追跡してページをインデックス化できるようにするために、アンカー タグが必要です。

HTML は文書構造用です。CSSはスタイリング用です。この原則を守ることが重要です。

点線のボックスに関するメモ...要素にフォーカスがあることを示すためにあります。誰もが知っているマウスを使用しているわけではありません。キーボードを使用してドキュメントをタブで移動することを好む人もいますが、そのフォーカス ボックスが役立ちます。CSSで削除できたとしても…やめてください。

于 2012-07-15T21:43:38.620 に答える
2

htmlセマンティクスのため、これを行わないでください。たとえば、スクリーンリーダーや検索エンジンは、リンクをたどることができない場合があります。

于 2012-07-15T21:46:00.977 に答える
0

ボタンやリンクがクリックされた後に点線のボックスを表示したくない場合は、要素をぼかすリスナーを追加するだけです。

<a href="..." onclick="this.blur();">Look ma, no dots</a>

ドットを持たないように設定できる CSS プロパティもありますが、思い出せません。検索を行うか、Mozilla のデフォルト スタイルシートを参照してください。

于 2012-07-16T00:17:54.193 に答える
-1

私は他の 2 人のコメンターに少し同意しません。スクリーン リーダーが機能しなくなり、下位互換性がないことは事実ですが.....

上記のいずれも気にしない特定のユースケースがある場合は、まあ...それはあなたのプロジェクトです。:)

また、CSS に以下を追加することで、ほとんどの場合これを実現し、アンカー タグを保持することもできます。

a 
{
text-decoration: none; 
}
于 2012-07-15T22:41:11.680 に答える