我下载了引导3.0,但无法让象形文字工作。我得到一些"E003"错误。知道为什么会这样吗?我在本地和网上都试过了,还是遇到同样的问题。


当前回答

我在Eclipse中使用web片段时遇到了这个问题。字体文件被损坏时,包装在web片段jar。 将字体文件复制到使用片段的项目中就可以解决这个问题。

其他回答

如果其他解决方案不起作用,您可能希望尝试从外部源导入Glyphicons,而不是依赖Bootstrap为您完成所有工作。这样做:

你可以在HTML中这样做:

<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap-glyphicons.css" rel="stylesheet">

或CSS:

@import url("//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap-glyphicons.css")

来自这个线程的信用edsiofi: Bootstrap 3 Glyphicons CDN

我遇到了这个问题,它是由变量引起的。更少的文件。重写它以设置icon-font-path值解决了这个问题。

文件结构如下所示:

\Content
        \Bootstrap
        \Fonts
 styles.less
 variables.less

添加我自己的变量。在Content的根目录中添加less文件,并在样式中引用它。Less解决了404错误。

变量。不包含:

@icon-font-path:          "fonts/";

我也遇到了同样的问题,浏览器无法找到字体文件,我的问题是由于我的.htaccess文件中排除了不应该发送到index.php进行处理的白名单文件。由于字体文件无法加载,字符被BLOB替换。

RewriteCond %{REQUEST_URI} !\.(jpg|png|gif|svg|css|js|ico|rss|xml|json)$
RewriteCond %{REQUEST_URI} !-d
RewriteRule ^ index.php [L,QSA]

如您所见,像图像、rss和xml这样的文件被排除在重写之外,但是字体文件是.woff和.woff2文件,因此这些文件也需要添加到白名单中。

RewriteCond %{REQUEST_URI} !\.(jpg|png|gif|svg|css|js|ico|rss|xml|json|woff|woff2)$
RewriteCond %{REQUEST_URI} !-d
RewriteRule ^ index.php [L,QSA]

将woff和woff2添加到白名单中可以加载字体文件,并且字形应该正确显示。

注意:下面可能是一个小众场景,但我想分享它,以防其他人可能会发现它有用。

在一个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项目中都不应该是必要的,我们只是碰巧重用了很多视图,这对我们来说很有效。希望这能帮助到其他人。

这是一个很长的拍摄,但这是我的案子,既然它已经不在这里了。

如果你从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中,浏览器不知道该如何处理。这样做的结果是不会下载任何字体,你可能会看到垃圾而不是图标。