HTML5 微数据:跨越内容?

2024-02-13

我读过了HTML5 规范 http://www.w3.org/TR/2014/REC-html5-20141028/single-page.html, 微观数据规范 http://www.w3.org/TR/2013/NOTE-microdata-20131029/, and WHATWG HTML5(带有微数据)规范 https://html.spec.whatwg.org/。这些写得很好并且很容易理解。

但现在我读到了schema.org 图书规范 http://schema.org/Book,并遇到如下片段:

<span itemprop="price" content="6.99">$6.99</span>
<span itemprop="inLanguage" content="en">English-language</span>
<span itemprop="name" content="Tolkien, J. R. R. (John Ronald Reuel)">
  J. R. R. Tolkien</span>

显然(与 JSON 版本相比),这些微数据属性的值是content的属性span元素。 (当然,如果没有content属性,其值为textContents of the span元素。)

但我在 HTML 和微数据规范中找不到对这种做法的任何支持。事实上,我什至找不到任何证据表明存在content属性上span元素全都有!

  • 微观数据规范没有提及任何关于span content属性,当它给出规则时values http://www.w3.org/TR/2013/NOTE-microdata-20131029/#values。 [除非“元素的文本内容”被content属性,但我也找不到对此的任何支持。]

  • 甚至完整的 WHATWG HTML5+微数据规范也不支持以下说法:content属性上span (see The span element https://html.spec.whatwg.org/#the-span-element and 全局属性 https://html.spec.whatwg.org/#global-attributes).

所以,我认为 schema.org 示例是不合格的。但这也是完全错误的吗?如果不是,这种做法从何而来?人们的接受程度如何?


是的,这是错误的。 Microdata 和 HTML5 都没有定义content属性为span元素。

有几个人想使用它,例如查看这些问题中的代码:

  • 隐藏“内容”属性中的微数据属性值? https://stackoverflow.com/questions/18873095/hide-microdata-property-value-in-content-attribute
  • schema.org 中的产品类别? https://stackoverflow.com/questions/19031818/categories-for-product-in-schema-org
  • “content”属性对于 标记是否有效 > 如果是,这是一个很好的做法吗? https://stackoverflow.com/questions/25134818/is-the-content-attribute-valid-for-the-span-tag-if-so-is-it-a-good-practic
  • schema.org 产品可用性标签标记 https://stackoverflow.com/questions/25148439/schema-org-product-availability-tags-markup

我不确定这种混乱到底从何而来。

(谷歌的结构化数据测试工具错误地使用了content属性而不是元素内容;但至少所有其他微数据解析器 https://softwarerecs.stackexchange.com/questions/13674/online-microdata-parser似乎做得正确。)

也许有些人感到困惑,因为 RDFa(而不是 Microdata)定义并允许content属性 http://www.w3.org/TR/2013/REC-rdfa-core-20130822/#A-content for span。参见 HTML+RDFaHTML5 语法的扩展 http://www.w3.org/TR/2013/REC-html-rdfa-20130822/#extensions-to-the-html5-syntax:

为避免疑义,HTML5 内容模型中的所有元素都允许使用以下 RDFa 属性:@vocab, @typeof, @property, @resource, @prefix, @content, @about, @rel, @rev, @datatype, and @inlist.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HTML5 微数据:跨越内容? 的相关文章

  • 创建一个简单的 10 秒倒计时

    我想要一行这样写的 Your download will begin in 10 9 8 etc Beginning on page load seconds 我已经设置了 10 秒下载文本 并且我还查看了其他 stackoverflow
  • 将文本大小调整为矩形 在 Canvas HTML5 中调整大小

    我是 Canvas 新手 我正在创建一个网站 以在调整矩形大小时增加文本 我尝试了很多 但没有任何效果 实际上 我希望如果我仅按其宽度调整矩形大小 向左拉伸 向右拉伸 则仅应增加文本宽度而不是字体大小 我已经完成了字体大小 但发现增加孤立文
  • 循环遍历元素并逐步为每个元素应用 CSS 规则

    我有一个网格布局 每个网格布局中都有不同数量的元素 我想动态添加内联grid column通过循环遍历 div 中存在的每个元素的 CSS 规则 ul 与一类 list 所以 HTML 代码的输出需要是 ul class list ul u
  • Django - 提交具有同一字段多个输入的表单

    预警 我对 Django 以及一般的 Web 开发 非常陌生 我使用 Django 托管一个基于 Web 的 UI 该 UI 将从简短的调查中获取用户输入 通过我用 Python 开发的一些分析来提供输入 然后在 UI 中呈现这些分析的可视
  • 即使在包裹后也具有等宽的弹性项目

    是否可以制作一个像这样的纯 CSS 解决方案 物品有一些min width 它们应该动态增长以填充所有容器宽度 然后换行到新行 列表中的所有项目都应具有相同的宽度 现在看起来是这样的 这就是我希望它看起来像的样子 我已经手动管理这些底部项目
  • 如何在表格列标题处垂直旋转文本

    我用过这个数据表 http www datatables net 在我的网页上 这是fiddle http jsfiddle net fxju7 2 链接我放置代码的地方 我想要 第一个数字第二个数字列应该垂直旋转 我已经做到了 但是 问题
  • 如何使用Python保存“完整的网页”而不仅仅是基本的html

    我正在使用以下代码来使用 Python 保存网页 import urllib import sys from bs4 import BeautifulSoup url http www vodafone de privat tarife r
  • 更改

    标签中一个单词的颜色

    我正在处理一份 html 文档 并且只想在我的文档中创建一个单词 p 标记不同的颜色 如果不做完全不同的事情 这可能吗 p p tag p p I want to make only THIS word blue p p style dis
  • 删除圆形图像周围的边框

    我有一个圆形图像 png 文件 中间是透明的 我需要将图像内的背景设置为纯色 为此 我将背景设为纯色 然后将border radius 50 但这会产生一条丑陋的小白线 有没有办法摆脱这个问题 或者我必须在图像编辑器中手动为图像着色 div
  • Angular JS 中的数组

    我是 Angular JS 新手 我正在将元素推送到数组中 然后想使用 ng repeat 在 html 中显示 scope groupedMedia Adding elements through a for loop scope gro
  • 如何使用文件输入在PDFJS中打开本地PDF?

    我想知道是否有办法使用选择pdf文件input type file 并使用打开它PDFJS https github com mozilla pdf js 您应该能够使用 FileReader 来获取文件对象的内容作为类型化数组 pdfjs
  • HTML:如何强制链接在新选项卡而不是新窗口中打开[重复]

    这个问题在这里已经有答案了 I use target blank 在新选项卡中打开链接 但在 IE 中它会打开一个新窗口 这是完全合乎逻辑的 因为这就是 blank应该做的 我不知道如何target blank 在其他浏览器中的行为 有什么
  • 在iOS上,“添加到主页”缓存保存在哪里,如何清除它?

    我正在 iPad iOS v7 上制作一个 html5 游戏 当我将其添加到主页时 它非常顽固地释放缓存 如果我在 Safari 中查看它 这会按照您所期望的方式工作 如果我刷新一次或两次 页面就会以最新状态缓存 但在主页上却是另一回事 它
  • 为什么我的反应路由器链接将我带到页面中间?

    我的网站上有很多链接 但只有一个可以执行此操作 它没有将我带到导航栏的顶部 而是转到内容的中间 知道为什么会这样吗 这是一个页面 其中有一个 map经历一些JSON 这是渲染div页面下方的文本元素 如果重要的话 这是一些可能相关的代码 路
  • 如何在通过 .ajaxForm() 提交表单之前执行一些操作?

    我正在使用 ajaxForm 框架来发送我的数据 而无需重新加载我的页面 ReplayForm ajaxForm success function data alert Success 现在 我想在提交表单之前检查一些条件 如果条件为假 则
  • CSS 无法从带有 php“includes”的相对路径工作

    文件夹结构 index php includes header html css style css 我的主项目文件夹中有 2 个子文件夹 一个是名为 includes 的文件夹 另一个名为 css 我有我的 index php主文件夹中的
  • 将html数据解析成python列表进行操作

    我正在尝试读取 html 网站并提取其数据 例如 我想查看公司过去 5 年的 EPS 每股收益 基本上 我可以读入它 并且可以使用 BeautifulSoup 或 html2text 创建一个巨大的文本块 然后我想搜索该文件 我一直在使用
  • 如何转义 HTML 字符?在.NET中-->“

    如何在 NET 中转义 HTML 字符 我正在从 json 字符串中获取 html 并在标题中得到 amp quot more text 看起来我需要做两次才能得到 amp quot 成为 quot 那么它就是一个 如何转义 NET 中的所
  • 如何使跨度标签不可删除?

    我正在尝试使 contenteditable div 内的跨度标记不可删除 div Editable span Read Only span div 只读范围确实是只读的 但我可以通过单击删除键来删除整个范围 有没有一种属性方法可以告诉sp
  • 如何使整个跨度落入新行?

    这个片段显示了我想要的 http jsfiddle net 945Df 3 http jsfiddle net 945Df 3 div class sup strong a href Rosario Santa Fe Argentina a

随机推荐