在HTML5中,我知道<nav>
可以在页面的标头<header>
元素的内部或外部使用它 。对于同时具有辅助导航和主导航的网站,通常将辅助导航作为<nav>
标头<header>
元素内的元素包括在内,而将主导航作为标头<nav>
标头<header>
元素外的元素。但是,如果网站缺少辅助导航,则通常<nav>
在标头<header>
元素内的元素中包含主导航。
如果我遵循这些示例,则我的内容结构将基于二级导航的包含或排除。这就在内容和样式之间引入了一种不必要和不自然的结合。
有没有更好的方法,这样我就不会将主要导航从标头广告的内部移动到外部 <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>
Keyzo.co.uk是遵循上述模式的示例网站。
HTML5简介摘录-11年2月2日上午7:38添加
布鲁斯·劳森(Bruce Lawson)和雷米·夏普(Remy Sharp)在介绍HTML5时对这个话题有这样的说法:
标头也可以包含导航。这对于站点范围的导航非常有用,尤其是在模板驱动的站点上,其中整个
<header>
元素可能都来自模板文件。当然,它不要求
<nav>
是在<header>
。是否在很大程度上取决于您是否相信站点范围的导航是否属于站点范围的标题以及有关样式易用性的实用考虑。
在最后一句话的基础上,布鲁斯·劳森(Bruce Lawson)(该节摘录的本章的作者)似乎承认,“关于样式易用性的务实考虑”在内容和样式之间产生了耦合。