无法复制的ie11 css /字体加载错误

时间:2016-10-21 09:05:18

标签: css fonts position icons internet-explorer-11

我一直在使用Drupal制作的网站。该网站有一个博客部分,已在Hubspot中制作。 (我不认为这太重要了,只是要注意普通网站和博客是分开的。)

我已经在虚拟机上测试了google chrome,safari,firefox和ie11中的博客部分(http://blog.aurelium.be/)(我在Mac上工作)。现在问题似乎是客户在ie11中遇到了我们无法重建的问题。字体和图标以及某些项目定位未正确完成。

我在这里有几个人正在测试它,但在这里看起来应该是这样的。

外观如何:enter image description here

它对客户的看法(不要介意丢失的博客项目,这是正常的)。正如您可以看到社交媒体图标一样,侧边栏中的字体和导航的一部分未显示如何显示: enter image description here

我能想到的唯一区别是他们在其他地方的事实,所以也许他们的wifi或其他东西都很糟糕,导致css无法加载。我只是在猜测,因为在我看来,一切都很好看。 (我还没能在他们的位置或真正的Windows机器上测试它)。我最大的猜测是某种css加载问题。

任何帮助将不胜感激:)

4 个答案:

答案 0 :(得分:1)

问题出现与外部字体加载有关(我想在外部cdn源上)。详细地说,如果浏览器布局定位在加载字体之前,您将使用默认的内部字体看到第二个布局,其中包含不同的空格和不良结果。
我可以说的唯一提示是在按钮的box / div容器上强制使用空格:white-space: nowrap或使用position: absolute和显式定位,在容器div上使用position: relative

答案 1 :(得分:1)

可能与IE11的客户端安全设置有关 - 他们可能禁用了字体下载。告诉他们确保在你开始拔头之前启用它 - 在安全设置下转到下载,并确保启用字体下载。

请参阅https://stackoverflow.com/a/30174845/5040893

答案 2 :(得分:1)

由于您认为实际下载css和字体文件存在问题,您是否尝试让客户端使用像Fiddler这样的Web请求调试工具?我们在极少数情况下要求我们的客户安装它并将日志寄回给我们(通常可以节省我们发送开发人员的费用)。

该跟踪至少应该向您显示是否正在请求css文件以及它是否成功。我认为那将是你最快的下一步。

IE中一个恼人的设置是安全区域设置(Internet选项 - >安全选项卡)。根据此安全设置所处的级别,IE甚至无法尝试请求,因为CDN上的这些文件的URL不是来自用户请求的服务主机名。如果在Fiddler中找不到这些网址,这也应该是显而易见的。

要解决此问题,您可以让您的客户端添加特定的URL以允许通过IE,但更好的选择是,如果您对cdn的原始请求失败,只需对服务器上的文件执行辅助请求。

希望它是其中之一!

答案 3 :(得分:1)

这看起来像字体问题。如果你看一下这个类的定义:

//assuming $array is your array...
$score = 0;
foreach($array[1] as $element)
{
    foreach($element as $key=>$val)
    {
        if('vote'==$key)
        {
             $score+=$val;
        }
    }
}

你可以看到唯一没有正确加载的是字体。检查安全设置。

如果这是一个政府机构,我已经体验过他们的安全协议,不允许任何外部字体。您可能需要为ie11定义特定的替代字体和大小。并非浏览器无法处理此问题,但我相信您的客户尤其无法通过其安全设置来处理此问题。

出于调试和复制的目的,我能够通过剥离所有字体的网站来复制您的许多问题:Site