【问题标题】:HTML5 meta ValidationHTML5 元验证
【发布时间】:2023-03-19 16:10:01
【问题描述】:

我正在尝试制作我的第一个 HTML5 页面,但我无法对其进行验证 W3C 一直告诉我,我的元标记有一些错误。

有问题的页面是http://www.jmphoto.dk/otus/index.html(它是一个旧的 HTML4 页面,我尝试将其用作 HTML 5 的基础/重做)

我找不到任何解决方案来获取以下元标记来验证或找到将验证它们的 anny 替代品

<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="Expires" content="0" />
<meta last-modified="Thu, 14 Apr 2011 12:17:27 GMT" />
<meta name="distribution" content="Global" />
<meta name="copyright" content="(c) 2012 OTUS" />

我周末大部分时间都在尝试在网上找到解决方案,但没有运气,所以我真的希望聪明的人可以帮助我解决这个问题。

【问题讨论】:

  • 你为什么需要这些?正如其他评论者所说,他们中的大多数都是无效的或什么都不做或两者兼而有之。为什么不直接把版权声明放到评论中,删除所有的元元素,这个页面有什么特殊情况让你需要尝试从页面内部控制http行为?

标签: html validation meta


【解决方案1】:

好的,我们先来个简单的:

<meta last-modified="Thu, 14 Apr 2011 12:17:27 GMT" />

last-modified 不是也从来不是meta 元素的有效属性。不知道这里是什么意思。

<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="Expires" content="0" />

将缓存指令放入元标记不是一个好主意,因为虽然浏览器可以读取它们,但代理不会。因此,它们是无效的,您应该将缓存指令作为真正的 HTTP 标头发送。

<meta name="distribution" content="Global" />
<meta name="copyright" content="(c) 2012 OTUS" />

distributioncopyright 都不是 meta 元素的 name 属性的可识别值。有效名称在https://w3c.github.io/html/document-metadata.html#standard-metadata-nameshttp://wiki.whatwg.org/wiki/MetaExtensions 中进行了描述。

我推荐dcterms.audience 而不是distributiondcterms.rights dcterms.rightsHolder 而不是copyright

【讨论】:

  • 版权使用 dcterms.rightsHolder 代替 dcterms.rights。解释见this answer
【解决方案2】:

您是否阅读过无效标签的验证器消息?它说这些标签包含错误的值,所以我猜它们是不允许的。检查这些链接,阅读验证器消息,看看您是否可以找到已批准的 HTML 5 标记和属性列表。验证器服务似乎是实验性的,因为 HTML 5 不是最终形式。

Is the copyright meta tag valid in HTML5?

http://www.impressivewebs.com/understanding-html5-validation/

【讨论】:

  • 是的,我已经阅读了验证器消息,但我还没有找到任何解决方案。感谢您提供的链接......我会仔细看看它们
【解决方案3】:

meta name="last-modifed" 的这种替代方案已被 W3 Validator 验证为有效的 HTML5,并且可能被现代搜索引擎识别:

<link rel="schema.dcterms" href="http://purl.org/dc/terms/" />
<meta name="dcterms.modified" content="2018-01-26" />

【讨论】:

    【解决方案4】:

    代替

    <meta last-modified="Thu, 14 Apr 2011 12:17:27 GMT" />
    

    你需要放

    <meta http-equiv="last-modified" content="Thu, 14 Apr 2011 12:17:27 GMT" />
    

    【讨论】:

    • OP 正在尝试获取有效的 HTML5,但如果您通过 W3C 验证器运行带有建议标签的页面,您将收到以下消息:“属性 http-equiv 的错误值 last-modified on元素元。”
    猜你喜欢
    • 1970-01-01
    • 2014-06-12
    • 2012-03-15
    • 1970-01-01
    • 2020-10-08
    • 2011-03-30
    • 2012-07-20
    相关资源
    最近更新 更多