我下载了引导3.0,但无法让象形文字工作。我得到一些"E003"错误。知道为什么会这样吗?我在本地和网上都试过了,还是遇到同样的问题。
当前回答
注意:下面可能是一个小众场景,但我想分享它,以防其他人可能会发现它有用。
在一个rails项目中,我们通过使用bootstrap-sass的rails引擎gem重用了很多东西。除了象形字体路径分辨率外,主项目中一切都很好。
GET http://0.0.0.0:3000/fonts/bootstrap/glyphicons-halflings-regular.woff 404 (Not Found)
我们发现$bootstrap-sass-asset-helper在解析期间为假,而我们期望它为真,因此路径不同。
我们在引擎gem中初始化了$bootstrap-sass-asset-helper:
// explicit sprockets import to get glyphicon font paths correct
@import 'bootstrap-sprockets';
@import "bootstrap/variables";
例如,这导致路径解析为:
/assets/bootstrap/glyphicons-halflings-regular.woff
同样,这在任何使用bootstrap-sass的正常rails项目中都不应该是必要的,我们只是碰巧重用了很多视图,这对我们来说很有效。希望这能帮助到其他人。
其他回答
我在硬盘里找这些文件
glyphicons-halflings-regular.woff
glyphicons-halflings-regular.woff2
glyphicons-halflings-regular.eot
glyphicons-halflings-regular.svg
glyphicons-halflings-regular.ttf
然后在。net项目中复制它们的字体文件
以下是官方文件中关于字体不渲染的说明。
更改图标字体位置 引导程序假定图标字体文件将位于../fonts/目录,相对于编译的CSS文件。移动或重命名这些字体文件意味着以以下三种方式之一更新CSS: 更改源Less文件中的@icon-font-path和/或@icon-font-name变量。 利用Less编译器提供的相对url选项。 修改编译后的CSS中的url()路径。 使用任何最适合您特定开发设置的选项。
除此之外,它可能是你错过了复制字体文件夹到根目录
例如,如果您希望图标为glyphicon-chevron-left
尝试添加class="glyphicon glyphicon-chevron-left"
读者注意:一定要阅读@user2261073的评论和@Jeff关于定制器中的一个错误的回答。这可能就是你的问题所在。
字体文件没有正确加载。检查文件是否在预期的位置。
@font-face {
font-family: 'Glyphicons Halflings';
src: url('../fonts/glyphicons-halflings-regular.eot');
src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg');
}
正如丹尼尔所指出的,这也可能是一种mimetype问题。Chrome的开发工具显示下载的字体在网络选项卡:
这是一个很长的拍摄,但这是我的案子,既然它已经不在这里了。
如果你从SASS编译Twitter Bootstrap使用gulp-sass或咕哝- SASS ie。node-sass。确保您的节点模块是最新的,特别是如果您正在处理一个相当旧的项目。
事实证明,在一段时间以前,SASS指令@at-root被用于字形中的@font-face的定义中,请参阅https://github.com/twbs/bootstrap-sass/blob/b01ab4942233bd7316a0634472e1243b13fb9f46/assets/stylesheets/bootstrap/_glyphicons.scss。
这里的问题在于。如果@at-root指令太旧,Libsass不支持它。如果是这种情况,您将得到一个@font-face包裹在@at-root中,浏览器不知道该如何处理。这样做的结果是不会下载任何字体,你可能会看到垃圾而不是图标。