我想知道这种结构在HTML5中是否在语义上是正确的。
<html>
<head></head>
<body>
<aside>
<header>
<h1></h1>
</header>
<div>
</div>
</aside>
<section id="content">
</section>
</body>
</html>
我想要的是左侧酒吧占据屏幕的30%,标识和下面的一些东西,然后内容占据右侧的另外70%。
非常感谢。
答案 0 :(得分:13)
鉴于HTML5仍然是草案,规范说
标题元素旨在 通常包含该部分的标题 (h1-h6元素或hgroup element),但这不是必需的。 标题元素也可用于 包装部分的目录,a 搜索表单或任何相关徽标。
和
[aside]元素可用于 拉引号等印刷效果 或侧边栏,用于广告,用于 导航元素组,以及其他组 被视为独立的内容 来自页面的主要内容。
并且<aside />
标记上唯一的“限制”是
使用旁边是不合适的 元素只是为了括号,因为 那些是主流的一部分 文件
事件虽然<header />
标记内没有<aside />
标记的明确示例,但我认为它们还可以。
链接:
答案 1 :(得分:10)
使用您放置的代码本身没有任何问题,但请注意<aside>
标记为a sectioning content element,因此内部为<header>
和<h1>
它将被视为<aside>
的标题,而不是整个页面(至少在HTML5概述算法下,sadly, seems to be dead in practice)。
那可能就是你想要的。如果没有,那么如果左栏中的所有内容都只是页面的介绍性内容,您可以将其全部放在<header>
element内并完全丢失<aside>
:
<html>
<head></head>
<body>
<header>
<h1></h1>
<div>
</div>
</header>
<section id="content">
</section>
</body>
</html>