0

この「セマンティックタグ付け」は初めてです。しかし、これが正しいかどうかはわかりません。要するに、この場合、section タグと nav タグをいつ使用するべきかわかりません。それはどちらかである必要がありますか、まったくないでしょうか、それとも私が持っているのとまったく同じでしょうか? id = sidebar のセクションについて話しています。

<body>
    <div class="page">
        <header>
            <table id="formHeader" style="width:100%;text-align:center;">
                <tr>
                    <td></td>
                </tr>
            </table>
            <nav>
                <ul id="menu">
                    <li>@Html.ActionLink("Home", "Index", "Home")</li>
                    <li>@Html.ActionLink("About", "About", "Home")</li>
                </ul>
            </nav>
        </header>
        <section id="sidebar">
            @*<nav>*@
                Go To...
                <ul>
                    <li>First Move to Moon</li>
                    <li>First Move to Moon</li>                    
                </ul>
            @*</nav>*@   
        </section>
        <section id="main">        
            @RenderBody()                              
        </section>
        <footer>
        </footer>
    </div>
</body>
4

3 に答える 3

6

次の 2 つのことを理解する必要があります。

  • 各セクショニング コンテンツ要素 ( sectionarticleasidenav) は、ドキュメント アウトラインにエントリを作成します ( gsnedders HTML5 Outlinerなどのアウトライナーで遊んでください)。
  • その意味で、navは最も近い親のセクション化コンテンツ要素、または最も近い親のセクション化ルート ( などbody) に属します。

したがって、あなたの例では次のアウトラインが作成されます。

 1. (no heading) → body
   1.1 (no heading) → nav
   1.2 (no heading) → section (#sidebar)
     1.2.1 (no heading) → nav
   1.3. (no heading) → section (#main)

1 つ目は、ページnav全体のナビゲーション(またはサイトナビゲーション) であり、 に属します。body

2 つ目navは、サイドバー (!) のナビゲーションです。

これがあなたのコンテンツに当てはまる場合、あなたの例は問題ありませんしかし、おそらくサイドバーに他のコンテンツが追加されている場合にのみ意味があります。そうでない場合、そもそもナビゲーションを設ける理由はありません。親の見出しが見つからない場合 (実際に使用するかどうかは問題ではありません)、section何か問題がある可能性があります。

実際のコンテンツを見なければ、構造が正しいかどうかは誰にもわかりません。サイドバーの は何にnav使用されますか?

  • メイン コンテンツの目次である場合、navはこのメイン コンテンツの子である必要があります。
  • ページ/サイト ナビゲーションの場合は、 の子section(またはその他のセクション要素) であってはならず、 に属しbodyます。
  • …</li>
于 2014-01-16T16:28:38.167 に答える
1

主要なナビゲーション エンティティの場合は、nav タグを使用します。私の謙虚な意見では、セクション タグ内に nav 要素を配置する必要がある場合、それは nav の価値がありません。主要なナビゲーションではありません。

コード:

<section id="sidebar">
  <nav>
    Go To...
    <ul>
      <li>First Move to Moon</li>
      <li>First Move to Moon</li>                    
    </ul>
  </nav>   
</section>

....おそらく、セクションの代わりに aside タグを呼び出すことができます。

于 2012-06-18T13:26:55.497 に答える
-1

このようなタグを section タグの内側または外側に配置するための特別な規則はわかりませんが、セマンティック マークアップの主な目的は SEO であると心から信じています。そのため、このタグをどこに配置しても、Google などの今日の検索エンジンは十分にスマートです。それを見つける。

于 2012-04-26T14:03:55.650 に答える