我已经阅读了W3C、WHATWG和MDN上的一些语义元素,但在某些方面我还是有点不清楚。我还去了这篇文章,对边栏和旁白都是不同的!。
我有几个基本问题,或确认我理解我所读到的内容:
aside元素不是侧边栏吗?div标记吗?div标记在HTML5中是否可以接受(这可能与上面的问题相同)?main元素是否可以嵌入其他语义标记,如table、section、article和aside,但不限于?发布于 2018-11-09 16:46:00
请记住,语义标记只是一种使代码更具可读性和使页面标准化的方法。
这是因为在大多数用户只定义divs之前,定义一个class来描述它的角色,比如nav、footer、header等等。
对于第一个问题,aside元素本身并不表示“侧栏”。它只是表示与主要内容相关的内容,但它不是页面主题的一部分。您可以使用它包装侧栏的内容(它本身就是一个UI组件),但是您也可以将它用于其他事情。
来自HTML5规范
备用元素表示页面中的一个部分,该部分由与旁边元素周围的内容切分相关的内容组成,这些内容可被视为与该内容分离。在印刷印刷中,这样的部分通常被表示为边栏。 该元素可用于打印效果,如拉引号或侧栏、广告、导航元素组和其他被认为与页面主要内容独立的内容。
关于你的第二个问题。
是的,在HTML5中,您可以在任何时候使用divs或语义标记,但是只要有可能就鼓励您使用语义;如果没有其他标记可以用来定义文档的一部分,那么就使用div吧。您可以交替地使用它们,最后,它们中的大多数(如main、section、footer等)只是具有不同名称的divs,以便更容易阅读。
发布于 2018-11-09 18:01:02
这总是造成很大的混乱。这是2009年,原版说明书作者伊恩·希克森( Ian Hickson )对这一问题进行了讨论。 (他的回复用粗体表示,对小Tab Atkins的评论):
<aside>的名字也很糟糕。这个名字本身,以及它作为“侧栏”内容的描述,显然使几乎所有人都误认为它是为无处不在的网站侧边栏而设的。是的,,
一项非正式的调查显示,当我们第一次听说<aside>时,至少有3个人(包括我在内)立即试图以这种方式误用它。当我和另一位朋友在聊天中讨论这个问题时,他的回答大概是“他们有什么困惑?页脚是网站页脚的,旁边是边面板的。”
,这是一个正确的解释.
https://stackoverflow.com/questions/53229828
复制相似问题