div
代码与新HTML5 aside
代码有何区别?
W3Schools对两者的描述非常相似 -
我还看到很多网站使用aside
标记,其中div
标记完全正常。
虽然,当我将它们付诸实践时,它们的行为方式相同,如下:
<aside>
<h4>This is a heading</h4>
<p>This is a very short paragraph.</p>
</aside>
<div>
<h4>This is a heading</h4>
<p>This is a very short paragraph.</p>
</div>
所以我的问题是,两者之间的主要区别是什么?应该何时使用另一个?
答案 0 :(得分:21)
<div>
标记用于定义HTML中的常规分部或部分。
<aside>
标记与div具有相同的表示形式,但包含仅与主要网页内容相关的内容。
两者具有相同的行为,但在逻辑上具有不同的含义。
答案 1 :(得分:5)
<强>相似性强>:
<aside>
和<div>
元素没有默认呈现(和呈现品质)。因此,您需要将它们设为block
元素,并使用样式表规则调整其外观和布局。默认情况下,浏览器始终在它们之前和之后放置换行符。但是,这可以通过CSS更改。大多数浏览器将使用以下默认值显示这些元素:
div {
display: block;
}
<强>差异强>
<aside>
元素标识与周围内容相关但相切的内容。在印刷品中,它的等价物是侧边栏,但它们无法调用元素侧边栏,因为在“侧面”放置一些东西是一种表达描述,而不是语义。<aside>
元素是一个分段内容,因此其内容定义了标题和页脚的范围。每个Sectioning Content元素都可能包含标题和大纲。当浏览器在文档中的分区元素上运行时,它会自动在文档的大纲中创建一个新项目。<div>
元素用于在页面上创建内容或元素的逻辑分组。它表明它们在某种概念单元中属于一起,或者应该被CSS或JavaScript视为一个单元。 HTML 4.01和HTML5之间存在差异,<aside>
标记是HTML5中的新标记。
每个浏览器的所有版本都支持<div>
元素。
答案 2 :(得分:4)
唯一的实际区别(至少目前为止)是旧版浏览器根本无法识别aside
。他们会将其视为未定义,而不是div
之类的块元素。 IE的旧版本甚至不允许您设置aside
元素的样式,尽管有基于JavaScript的方法来解决这个问题。
理论差异在HTML5草稿中有所解释,例如当前的HTML5 LC。请注意,w3schools.com不是任何形式的权威;见http://w3fools.com。
答案 3 :(得分:2)
div标签没有语义权重,可以包含任何类型的内容。在HTML5中,您可以有利地使用节标签来添加语义权重。旁边标记应该用于与页面主要内容无关的内容
答案 4 :(得分:1)
我看到的主要用途
<aside>
这使得HTML代码更加清晰。您可能会识别主文本和从属文本之间的链接。
答案 5 :(得分:0)
所有HTML5新元素的目的是让您更容易索引数据。
使用<aside>
标记,程序很容易识别它是页面的旁边数据。