使用Python简单HTTP服务器时Font Awesome无法加载

0 投票
1 回答
852 浏览
提问于 2025-04-18 01:16

我有一个简单的HTML文件,它使用Font Awesome显示了一个“点踩”的图标。

<html>
  <script src="//ajax.googleapis.com/ajax/libs/webfont/1.4.7/webfont.js"></script>
  <script>
    WebFont.load({
      custom: {
      families: ['FontAwesome'],
      urls : ['//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css']
    },
    fontloading: function(familyName, fvd) {},
    fontactive: function(familyName, fvd) {},
    fontinactive: function(familyName, fvd) {
    }});
  </script>
  <style type="text/css">
  html{
    background-color:black;
    color:green;
  }

  .thumb_down:before {
      content:"";
      font-family: FontAwesome;
      color: #ffffff;
  }

  </style>

  <body>
    <div class="thumb_down">I am here! </div>
  </body>
</html>  

可以在这里查看工作示例 这里

现在,当我尝试在本地机器上使用Python的SimpleHTTPServer来运行这个文件时,字体没有正确显示。我得到的结果是这样的:

python -m SimpleHTTPServer

font_awesome_python

但是当我用PHP服务器来运行同样的文件时,结果就和示例中的一样正确。

php -S localhost:9000

有人知道这是不是Python Simple HTTP Server的限制吗?

1 个回答

2

这可能是编码的问题。PHP 可能在添加一个头部信息,而 Python 则没有。如果你在你的 <html> 标签后面加上这个(就像 jsfiddle 那样),它可能就能正常工作了。

<head>
    <meta charset="utf-8"> 
</head>

撰写回答