如何使用divs&跨越HTML5

时间:2016-09-21 01:31:04

标签: html html5 css-tables

HTML标记用于表示结构,而CSS用于定义表示。

根据我的理解,元素应该赋予网页的一部分代表的语义含义。 HTML4中使用了<div>语义,通过id&amp;添加了人工添加的语义。 class。这就是为什么在HTML5中新的块元素,例如<nav><main><header><footer>等 - 其语义含义是内置的&amp;隐式 - 引入用于常见用途。这引出了两个问题。

我知道<div>仍可用于网页的部分,其语义含义未由新引入的元素表示。 <span>继续使用而没有更改,因为没有引入新的内联元素(afaik)来替换它们<div>

另一个特别用途是CSS表。考虑到HTML元素应该传达语义含义,并且display属性修改元素的布局,使用<div><span>表示表之间有区别吗?如果是,我该如何决定使用哪个?

除了前面提到的,HTML5中这两个元素还有其他任何用途作为最佳实践,同样最好不要将<table>用于非表格数据吗?

1 个答案:

答案 0 :(得分:3)

  

考虑到HTML元素应该传达语义含义,并且display属性修改了元素的布局,使用<div><span>来表示表格会有区别吗?

不同之处在于未应用CSS时的渲染(因为它无法加载,或者涉及语音浏览器,或者用户正在使用lynx或其他)。

如果您有表格数据。使用表格。否则使用任何最有意义的元素。

  

除了前面提到的,HTML5中这两个元素还有其他任何用途作为最佳实践,同样最好不要将<table>用于非表格数据吗?

通过引入HTML 5来改变最佳实践元素选择的经验法则:选择具有最能描述数据的语义的元素。如果没有元素具有正确描述数据的语义,那么使用div或span,因为它们没有任何与它们相关的语义(并且没有语义信息比错误的语义信息更好)。