ホームページ > ウェブフロントエンド > CSSチュートリアル > HTML 内のネストされたリンク: 許可されるかどうか?

HTML 内のネストされたリンク: 許可されるかどうか?

Susan Sarandon
リリース: 2024-12-09 03:52:10
オリジナル
898 人が閲覧しました

Nested Links in HTML: Allowed or Not?

リンクのネスト: 許可されていますか?禁止されていますか?

Web 開発では、よくある質問が生じます: リンクを別のリンク内にネストすることは許可されますか?

W3C HTML4スタンス

W3C HTML4 ガイドラインによれば、リンクの入れ子は禁止されています。 A 要素には他の A 要素を含めることはできません。

HTML5 の観点

HTML5 では、ルールが若干進化しています。リンクのネストは依然として許可されていませんが、アンカー タグ (A 要素) を含むインタラクティブ コンテンツを A 要素内に配置することはできないという新しい制約があります。

ベスト プラクティス

これらの制限にもかかわらず、特定のレイアウトでは、複数のクリック可能な領域を含むクリック可能な領域が必要になる場合があります。

代替アプローチ

  • CSS の使用: クリック可能な領域を親要素に割り当て、CSS を使用して適切なリンクのスタイルを設定する動作。
  • JavaScript の使用:イベント ハンドラーを使用してクリックをキャプチャし、ターゲット要素に基づいて意図されたアクションを決定します。

指定されたコード スニペットを考えてみましょう:

<a href="#" class="sp_mngt_bar">
    <h1><?php echo $v; ?></h1>
    <a href="#" class="t_icons t_icons_settings sp_mngt_settings"></a>
    <a href="#" class="t_icons t_icons_move sp_mngt_move"></a>
</a>
ログイン後にコピー

灰色のバー全体をクリック可能にするには、クリック イベント ハンドラーを親 に割り当てます。要素を指定し、次のように jQuery を使用します:

$('.sp_mngt_bar').click(function(e) {
  if (e.target.className.indexOf('sp_mngt_move') > -1) {
    // Handle move icon click
  } else if (e.target.className.indexOf('sp_mngt_settings') > -1) {
    // Handle settings icon click
  } else {
    // Handle main link click
  }
});
ログイン後にコピー

以上がHTML 内のネストされたリンク: 許可されるかどうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート