我下载了引导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中,浏览器不知道该如何处理。这样做的结果是不会下载任何字体,你可能会看到垃圾而不是图标。
推荐文章
- Bootstrap抛出Uncaught错误:Bootstrap的JavaScript需要jQuery
- Twitter Bootstrap 3 Sticky Footer
- 大Glyphicons
- 引导3导航栏崩溃
- 改变引导弹窗的宽度
- 推特引导3.0我如何“徽章徽章重要”现在
- IE8问题推特引导3
- 多模态叠加
- 我如何使象形文字更大?(改变大小?)
- 如何增加列之间的间距?
- ' aria- labels by '和' aria-hidden '是什么属性
- 用Bootstrap 3在AngularJS中表示网格或表格的最佳方法?
- 引导3 jquery事件的活动标签更改
- 引导下拉子菜单缺失
- 引导4 -字形迁移?