In HTML5, I know that <nav> can be used either inside or outside the page's masthead <header> element. For websites having both secondary and main navigation, it seems common to include the secondary navigation as a <nav> element inside the masthead <header> element with the main navigation as a <nav> element outside the masthead <header> element. However, if the website lacks secondary navigation, it appears common to include the main navigation in a <nav> element within the masthead <header> element.
如果我遵循这些例子,我的内容结构将基于包含或排除辅助导航。这引入了内容和风格之间的耦合,这感觉是不必要的和不自然的。
有没有更好的方法,使我不移动的主要导航从内部到外部的masthead <header>元素基于包含或排除辅助导航?
主备导航示例
<header>
<nav>
<!-- Secondary Navigation inside <header> -->
<ul>
<li></li>
</ul>
</nav>
<h1>Website Title</h1>
</header>
<nav>
<!-- Main Navigation outside <header> -->
<ul>
<li></li>
</ul>
</nav>
OnlineDegrees.org就是一个遵循上述模式的示例站点。
仅主导航示例
<header>
<h1>Website Title</h1>
<nav>
<!-- Main Navigation inside <header> -->
<ul>
<li></li>
</ul>
</nav>
</header>
uk就是一个遵循上述模式的示例站点。
从介绍HTML5摘录-添加于02-Feb-11,上午7:38
Bruce Lawson和Remy Sharp介绍HTML5:
标题还可以包含导航。这对于站点范围内的导航非常有用,特别是在模板驱动的站点上,其中整个<header>元素可能来自模板文件。 当然,并不要求<nav>在<头文件>中。 如果在很大程度上取决于你是否认为全站导航属于全站标头,以及实用的考虑是否易于样式化。
根据最后一句话,这些摘录的章节的作者布鲁斯·劳森(Bruce lawson)似乎承认,“对易于设计的实用主义考虑”在内容和风格之间产生了耦合。