Facebook按钮在IE7中无法正确显示

时间:2012-08-01 08:14:27

标签: internet-explorer-7 cross-browser facebook-like

我正在使用来自不同社交媒体网站的类似按钮,例如g+, facebook like, xing, and twitterFacebook like button可在除IE7之外的所有浏览器中找到。它显示如下图: enter image description here

根据论坛,我得到了fb:like:width="115"的帮助。但是,它无法解决此浏览器问题。此外,我已尝试将自己的样式与!important一起使用,但它仍然不会覆盖,因为我的样式在页面顶部调用,并且位于页面正文的底部。

有人知道如何在不手动添加其他样式的情况下解决此问题吗?

3 个答案:

答案 0 :(得分:4)

你会发现Facebook没有孤独者支持IE7所以Like按钮永远不会被修复以正确显示在IE7中。它被破坏了,因为它与IE7不兼容(至少不是FB编写Like按钮的方式)。您应该让用户使用兼容的浏览器(理想情况下是IE9,Chrome或FF)。

答案 1 :(得分:2)

为Internet Explorer 7修复Facebook Like按钮(带计数)的3个步骤

此示例使用XFBML,因为所有浏览器尚不支持HTML5。

步骤1或2通常是人们出错的地方

第1步

首先检查您是否在html标记中包含了Facebook名称空间:

<html xmlns:fb="http://ogp.me/ns/fb#">

第2步

现在,在您网页的meta部分添加此head标记:

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />

这是如何运作的?

  • IE=edge强制IE使用最新的渲染引擎(即使在内联网中)
  • chrome=1强制Chrome Frame使用最新的IE呈现引擎
  • 第3步

    最后,包括Facebook XFBML&amp;您网页上的JavaScript SDK:

    XFBML

    <fb:like send="false" layout="button_count" width="450" show_faces="false"></fb:like>
    

    JavaScript SDK

    <div id="fb-root"></div>
    <script>(function(d, s, id) {
      var js, fjs = d.getElementsByTagName(s)[0];
      if (d.getElementById(id)) return;
      js = d.createElement(s); js.id = id;
      js.src = "//connect.facebook.net/en_GB/all.js#xfbml=1";
      fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk'));</script>
    

    答案 2 :(得分:0)

    上述问题已经解决。我只是添加一个喜欢的facebook opengraph,它的工作原理。

    <html xmlns:og="http://opengraphprotocol.org/schema/"
          xmlns:fb="http://www.facebook.com/2008/fbml">