【问题标题】:google crawl -- display:none & display:block [closed]谷歌抓取——显示:无和显示:块[关闭]
【发布时间】:2012-09-19 02:23:19
【问题描述】:

当 google 抓取网页时,做 google bot 抓取

  1. 带有style="display:none"之类代码的内容

  2. 带有style="display:block"之类代码的内容

我问这个问题是因为我有一个 F&Q 网站。

  1. 对于用户,我希望仅在他单击“答案/解决方案”链接时才显示答案。

  2. 对于 google bot,我希望抓取解决方案部分,否则我的页面内容会变得太少。

【问题讨论】:

标签: javascript jquery html


【解决方案1】:

是的,谷歌会看到既不显示又显示块的内容

您的常见问题解答部分将被 Google 机器人看到。

查看这些文章:

网站管理员指南:http://support.google.com/webmasters/bin/answer.py?hl=en&answer=35769

使用文本浏览器(例如 Lynx)来检查您的网站,因为大多数搜索引擎蜘蛛看到您的网站的方式与 Lynx 一样。如果 JavaScript、cookie、会话 ID、框架、DHTML 或 Flash 等花哨的功能使您无法在文本浏览器中查看您的所有网站,那么搜索引擎蜘蛛可能无法抓取您的网站。

隐藏文字和链接:http://support.google.com/webmasters/bin/answer.py?hl=en&answer=66353

在您的内容中隐藏文本或链接可能会导致您的网站被视为不可信,因为它向搜索引擎提供的信息与向访问者提供的信息不同。 ... 如果您确实在您的网站上发现了隐藏的文字或链接,请将其删除,或者,如果它们与您网站的访问者相关,则使其易于查看

【讨论】:

    【解决方案2】:

    Google 是否会抓取隐藏元素值得商榷;您会发现会以一种或另一种方式争论的“专家”,但大多数都是纯粹的猜想。在这些情况下,我喜欢做的是通过 JavaScript / jQuery 在 $(document).ready() 上应用 display: none,这样用户就可以获得您正在寻找的体验,而 Google 会像这样索引页面:

    <div class="question">Does Google see this?</div>
    <div class="answer">Yes is JS is used!</div>
    
    $(document).ready(function(){
        $('.answer').hide();
    });
    

    值得注意的是,这种方法也值得商榷,因为有些人表示 Google 已经开始执行 JS 作为抓取的一部分。话虽如此,我使用这种技术已经取得了很好的效果。

    我希望这会有所帮助!

    【讨论】:

    • javascript 需要在最后加载,所以用户可能会先看到隐藏的文本,然后才会隐藏。似乎用户界面不好?
    • @Sparky672 与所有 AJAX 构建的网站完美契合。我想知道处理 JS 是否也意味着它会查看它应用的 CSS 样式。
    • @chicharito 好点;我通常将所有内容保留在原位,然后将其关闭以使其具有良好的效果,如下所示:jsfiddle.net/DARqs/1 尽管 Sparkty672 提出了一个很好的观点。
    • 关于 Googlebot “查看” CSS:我认为这并不重要。如果它忽略 CSS,那么它只会在 HTML 中公开地看到 CSS 隐藏的内容。如果它关注 CSS 隐藏内容,那么它就知道它的存在,因此仍然可以看到 HTML 中的内容。
    猜你喜欢
    • 2021-01-18
    • 1970-01-01
    • 1970-01-01
    • 2012-08-05
    • 2020-05-29
    • 1970-01-01
    • 1970-01-01
    • 2019-09-17
    • 2012-06-13
    相关资源
    最近更新 更多