我网站的 h1 也是“home”链接,所以很明显我把它放在了 nav 标签中。导航中的其他链接最初放在无序列表中,如下所示:
<nav>
<h1><a href="#" class="active">Site Name</a></h1>
<ul>
<li><a href="#">Nav Item 1</a>
<li><a href="#">Nav Item 2</a>
<li><a href="#">Nav Item 3</a>
</ul>
</nav>
标准,对吧?您可以想象,在子页面上,导航保持不变,但“活动”类被应用于相关的导航项。
这就是问题所在。在移动屏幕宽度下,导航压缩到下拉菜单中,其中“活动”链接是下拉菜单上方显示的唯一链接。在 h1 是活动链接的主页上这很好,但似乎我的 CSS 在子页面上会变得非常混乱。
我注意到一些受人尊敬的前端开发人员使用没有有序/无序列表的列表项。这些人高度重视语义,所以我想知道他们可能在想......
所以我被困住了。将我的 h1 放在 ul 中似乎是错误的,但这似乎也是错误的:
<nav>
<li><h1><a href="#" class="active">Site Name</a></h1></li>
<li><a href="">Nav Item 1</a></li>
<li><a href="">Nav Item 1</a></li>
</nav>
我知道我几乎可以通过任何方式标记 HTML 来了解我想要实现的目标,但我希望尽可能在语义上做到这一点,同时避免 CSS/JS 噩梦/或任何黑客攻击。