情况:某些div块被隐藏,具有特定的显示分辨率。例如,有两个价格块。当显示高度较小时,其中一个显示在产品图片上方,反之亦然。
问题:如果有几个具有相同内容的块但是其中一个被显示而另一个被隐藏,那么如何实现微数据? Google和Schema.org说it is not welcomed隐藏了标记的内容。
P上。 S.这种行为是通过css media max-width等实现的。没有JS。
答案 0 :(得分:1)
微数据解析器不关心HTML元素是否在视觉上隐藏;他们会忽略任何CSS。
特定的消费者(如搜索引擎)可能会决定以不同的方式处理来自视觉隐藏的HTML元素的微数据,但是有这么多的消费者(并且他们中的大多数没有记录他们的行为)不能有一般答案.¹由于许多消费者也支持JSON-LD,默认情况下隐藏所有内容,以不同方式处理这两种情况似乎不一致......但谁知道呢。
所以我认为你有三个四个选项:
(我只会标记一个分辨率的元素。)
¹在Stack Overflow上询问SEO建议或搜索引擎服务的行为是偏离主题的。可以在Webmasters SE上询问与搜索引擎优化相关的问题。例如,请参阅问题Can microdata be implemented in meta tags?和How does Google handle <link> elements in the <body>?(可以在meta
中指定微数据,在link
中指定body
元素;默认情况下隐藏这些元素