在语义HTML中,class属性在没有CSS或Javascript的情况下有什么意义吗?

在语义HTML中,class属性在没有CSS或Javascript的情况下有什么意义吗?,html,semantic-markup,Html,Semantic Markup,例如,如果没有CSS或Javascript与页面交互,那么类film\u review在中是否意味着任何东西,或者它是否提供语义信息?它提供语义纯粹是因为它在语义上将该元素与同一类的其他元素连接起来 没有规则规定任何东西(在本例中特别是CSS和/或JavaScript)必须使用该类。该类本身只是标记的一部分,并且碰巧被当前样式规则忽略 在film_review类中可能有其他元素,它们在语义上是连接的,因为它们在标记中表示“film reviews”。所有的语义信息都是。。。关于代码中表示的对象的

例如,如果没有CSS或Javascript与页面交互,那么类
film\u review
中是否意味着任何东西,或者它是否提供语义信息?

它提供语义纯粹是因为它在语义上将该元素与同一类的其他元素连接起来

没有规则规定任何东西(在本例中特别是CSS和/或JavaScript)必须使用该类。该类本身只是标记的一部分,并且碰巧被当前样式规则忽略

film_review
类中可能有其他元素,它们在语义上是连接的,因为它们在标记中表示“film reviews”。所有的语义信息都是。。。关于代码中表示的对象的上下文。命名良好的类可以提供这样的附加上下文


但是浏览器对这些信息没有什么特别的作用。它就在那里,以防任何人(样式、代码,甚至只是查看标记的人)想知道这篇
文章属于命名的元素类。

这取决于。还有谁在处理你的HTML


例如,微格式有时使用类向自然不具备丰富语义的元素添加语义信息。在这种情况下,ECMAScript和CSS都不会处理这些信息,但微格式解析器可能会处理这些信息
film_review
不属于任何著名的微格式。

它不提供当代浏览器在没有CSS或Javascript本身的情况下可以解释或使用的信息

但是,它可以携带语义信息-参见例如。例如,您可以放置一张hcard

<div id="hcard-John-Doe" class="vcard">
  <span class="fn">John Doe</span>
  <div class="org">Cool Institute, Inc.</div>
  <div class="adr"><span class="locality">Prague</span></div>
</div>

无名氏
酷学院公司。
布拉格
在您的页面上,它携带语义信息。像谷歌这样的搜索引擎可以推断“John Doe”是位于“布拉格”的一个人的名字。还有其他微格式可以表示地理信息、日历事件等

任何人都可以编写自己的HTML文档处理器来解释
class
属性值,因此答案是肯定的,它提供语义信息

引述自:

根据HTML4.01规范,作者应使用元素表示“文档或文档主要部分的联系信息”

通过将hCard添加到现有的语义XHTML中,您可以显式指示此人的姓名、URL等:



页面上的所有内容都会被搜索引擎解析(读取),因此您的答案是,是的,它确实提供了语义信息,但是不同的HTML标记(元素、属性名称、属性值)有不同的加权值

然而,真正定义HTML标记的权重的是什么,这实际上取决于您声明的文档类型(HTML4/HTML5),页面顶部的
标记向搜索引擎bot/解析器声明它是什么类型的文档,进而控制搜索引擎bot的解析模式(行为)关于如何阅读您的文档


HTML5的全部目的是提供“语义”,允许您使用不同的标记,这样您就可以标记/定义文档,赋予内容更大的重要性,让搜索引擎更好地理解它。这使得搜索引擎能够更好地为最终用户提供服务,最终用户正在搜索与搜索词相关的内容。。。如果您没有使用HTML5和HTML4,那么机器人程序主要依赖HTML属性来定义标记中的内容,例如
,它对其中的内容没有语义意义。

HTML5的语义更倾向于标准化web上最常用的元素。如上所述:

对于HTML4,开发人员使用他们自己喜欢的属性名称来设置页面元素的样式: 页眉,顶部,底部,页脚,菜单,导航,主,容器,内容,文章,侧栏,topnav。。。 这使得搜索引擎无法识别正确的网页内容。 使用HTML5元素,如:
,这将变得更容易

因此,像“电影评论”这样的特定元素不会在HTML5级别提供那么多语义信息