Glyphicons显示为空框的问题

17

我正在使用优秀的Twitter Bootstrap库和Glyphicons,但是所有的图标都呈现为空白方块,如下所示:

在此输入图片描述

我已将Glyphicons字体上传到我的Web根目录,并更改了bootstrap.css文件以指向它们的正确位置,我已经验证过,因为它们在Chrome的开发工具中有200 OK请求:

在此输入图片描述

这是我使用的标记:

<a href="http://www.mysite.com/download" class="btn btn-primary"><span class="glyphicon glyphicon-star"></span> Download to Computer</a>

有什么想法可以解决字体呈现为空白方块的问题吗?StackOverflow上以前的答案都指向字体路径不正确,但这里并非如此,因为路径是正确的。


你可以给我们提供你的网站链接吗? - omma2289
这显然是一个错误的路径,可能是Bootstrap的旧版本或者是Glyphicon的旧版本。 - Phillip Burch
1
我认为这个链接会对你有所帮助:https://dev59.com/4GMl5IYBdhLWcg3wqIdh - Faisal Khan Samrat
@PhillipBurch,这不可能是路径错误问题,因为开发工具的网络选项卡没有显示404。我正在使用包含Glyphicons的Bootstrap 3,因此也不存在版本问题。 - John Dorean
我建议您在这里下载最新版本的Bootstrap 3:http://getbootstrap.com/customize/。对我来说它运行良好。 - Phillip Burch
14个回答

0

重新构建项目后,图标现在显示正常。


0

我有一个 glyphicon 作为按钮,实际上是一个 <a>,就像这样:

<a href="#" id="btnPrevious" class="btn btn-default glyphicon-align-center glyphicon glyphicon-arrow-left"></a>

看起来很棒:

Nice glyphicon

然后,有一天,我将所有的<a>标签样式设置为特定字体,就像这样:

.content-panel a {
    font-family: 'Roboto', sans-serif;
    color: #6B6C6F;
    text-decoration: none;
}

这让我的<a>看起来非常漂亮,但是我的箭头按钮看起来像这样:

Ugly glyphicon

在经过一些谷歌搜索和尝试答案后,我注意到我的其他字形图标都很好,所以它不可能是那些答案之一。它必须与这个特定的图标有关。我回滚了一些最新的更改,似乎起作用了。我将其缩小到了CSS样式,并将其更改为:

.content-panel a:not(.glyphicon) {
    font-family: 'Roboto', sans-serif;
    color: #6B6C6F;
    text-decoration: none;
}

现在,无论你的解决方案是什么(也许你选择不像那样在.content-panel上为所有的<a>设置样式),问题在于我给了一个代表glyphicon的元素一个字体家族,这并没有很好地解决问题。希望能有所帮助 :)


-1

我进行了一些比较,结果发现我拥有的bootstrap.css文件包含了这个:

url('../fonts/glyphiconshalflings-regular.svg#glyphiconshalflingsregular')

虽然它应该读作:

url('../fonts/glyphiconshalflings-regular.svg#glyphiconshalflingsregular')

注意我已经添加了一个下划线,现在与 .svg 文件中声明的 <font id="..."> 匹配。


2
Phil,你忘了下划线了...不确定这个问题为什么这么长时间没有被评论! - Hugh Wood
糟糕...我敢打赌那又是Windows出了问题。我经常剪切和粘贴,但发现剪贴板里仍然有旧内容。我已经开始在信任之前按Ctrl+C两次或更多次。好眼力,Hugh! - Phil
21
这两个字符串是完全相同的。我甚至使用 MD5 进行了验证以确保它们相同。 - Polynomial

-2

将bootstrap包中的“fonts”文件夹复制到您的服务器上即可完成。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接