本地Bootstrap文件字体图标引入却无法显示问题的解决方法


Posted in Javascript onApril 18, 2020

你在使用bootstrap字体图标的时候,是否遇到引用本地Bootstrap文件无法显示字体图标,而使用CDN服务器上bootstrap却能正常显示的问题。

在不能正常显示的时候,比如我要在一个按钮中使用一个√的字体图标,我的代码是这样子的:

<!doctype html> 
<html lang="en"> 
<head> 
 <meta charset="UTF-8"> 
 <title>bootstrap字体图标</title> 
 <link rel="stylesheet" href="../libs/bootstrap.css"> 
</head> 
<body> 
 <div class="container"> 
 <button class="btn"> <span class="glyphicon glyphicon-ok"></span></button> 
 </div> 
</body> 
</html>

但是他的显示却是这个样子的:

本地Bootstrap文件字体图标引入却无法显示问题的解决方法

网上查找了很多解决办法,说法不一。下面来看看我是如何解决的。

发现不能显示之后我使用了goole cdn上的地址引入bootstrap文件,发现可以正常显示。所以问题应该出现在引入文件这里。
ctrl+左键进入glyphyicon,发现实现的代码是这样的:

@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.woff2') format('woff2'), 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');
}
.glyphicon {
 position: relative;
 top: 1px;
 display: inline-block;
 font-family: 'Glyphicons Halflings';
 font-style: normal;
 font-weight: normal;
 line-height: 1;

 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
}

在idea中就会发现@font-face这部分报红,提示can not resolve file glyphicons-halflings-regular.eot和glyphicons-halflings-regular.eot,意思是找不到文件。
所以glyphyicon这个样式,是关联着这些文件的,进入到下载的整个的压缩包,进入这个文件bootstrap-3.3.7-dist\fonts,就会发现如下文件:

本地Bootstrap文件字体图标引入却无法显示问题的解决方法

所以glyphyicon这个样式,必须要关联到glyphicons-halflings-regular.eot等文件才能正常使用。
而在我的引用bootstrap文件中,我是这样引用的,可能你也正在犯跟我一样的错误:
<link rel="stylesheet" href="../libs/bootstrap.css">

在webstrom中看到我的libs目录是这样的:

本地Bootstrap文件字体图标引入却无法显示问题的解决方法

是的,在使用bootstrap的大多样式的时候,单单是bootstrap.css这个文件就够了,不必引入全部的,这样可以让我们的项目没那么臃肿。但是在我们使用字体图标的时候,是需要关联到字体图标相关的文件才得以实现的,所以当我引入整个bootstrap-3.3.7(您也可以部分引入,只要将你想要的功能的相关文件全部引入且目录无误即可),然后再在我的html中这样引入:
<link rel="stylesheet" href="../libs/bootstrap-3.3.7/css/bootstrap.css">

这样就能够正常显示字体图标:

本地Bootstrap文件字体图标引入却无法显示问题的解决方法

总结:分析了那么多,意思就是字体图标这个样式的实现,需要关联到glyphyicon相关文件,你在引入bootstrap.css文件时,你要确保在与bootstrap.css的相对路径下,能够让他找到这些关联文件,而CDN服务器上的正式如此,如此才能让图标正常显示。

如果大家还想深入学习,可以点击这里进行学习,再为大家附3个精彩的专题:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js 绑定带参数的事件以及手动触发事件
Apr 27 Javascript
加速IE的Javascript document输出的方法
Dec 02 Javascript
js实现图片放大缩小功能后进行复杂排序的方法
Nov 08 Javascript
js showModalDialog 弹出对话框的简单实例(子窗体)
Jan 07 Javascript
json属性名为什么要双引号(个人猜测)
Jul 31 Javascript
浅谈Javascript实现继承的方法
Jul 06 Javascript
jQuery实现腾讯信用界面(自制刻度尺)样式
Aug 15 jQuery
微信小程序登录按钮遮罩浮层效果的实现方法
Dec 16 Javascript
vuex如何重置所有state(可定制)
Jan 17 Javascript
JS实现判断有效的数独算法示例
Feb 25 Javascript
JavaScript 作用域实例分析
Oct 02 Javascript
基于JavaScript实现简单的轮播图
Mar 03 Javascript
微信小程序中使元素占满整个屏幕高度实现方法
Dec 14 #Javascript
AngularJS基于ngInfiniteScroll实现下拉滚动加载的方法
Dec 14 #Javascript
bootstrap modal弹出框的垂直居中
Dec 14 #Javascript
微信小程序 免费SSL证书https、TLS版本问题的解决办法
Dec 14 #Javascript
微信小程序 wx.uploadFile在安卓手机上面the same task is working问题解决
Dec 14 #Javascript
bootstrap模态框实现拖拽效果
Dec 14 #Javascript
AngularJS基于ui-route实现深层路由的方法【路由嵌套】
Dec 14 #Javascript
You might like
新版PHP将向Java靠拢
2006/10/09 PHP
用PHP的超级变量$_GET获取HTML表单(Form) 数据
2011/05/07 PHP
php 伪造本地文件包含漏洞的代码
2011/11/03 PHP
在Mac OS上编译安装Nginx+PHP+MariaDB开发环境的教程
2016/02/23 PHP
10款非常有用的 Ajax 插件分享
2012/03/14 Javascript
nodejs实现黑名单中间件设计
2014/06/17 NodeJs
javascript引用赋值(地址传值)用法实例
2015/01/13 Javascript
Javascript进制转换实例分析
2015/05/14 Javascript
jQuery实现可高亮显示的二级CSS菜单效果
2015/09/01 Javascript
js停止冒泡和阻止浏览器默认行为的简单方法
2016/05/15 Javascript
JS 实现计算器详解及实例代码(一)
2017/01/08 Javascript
jQuery日程管理控件glDatePicker用法详解
2017/03/29 jQuery
在一个页面实现两个zTree联动的方法
2017/12/20 Javascript
jQuery EasyUI 选项卡面板tabs的使用实例讲解
2017/12/25 jQuery
vue+axios+mock.js环境搭建的方法步骤
2018/08/28 Javascript
jQuery实现上下滚动公告栏详细代码
2018/11/21 jQuery
jQuery实现简易聊天框
2020/02/08 jQuery
vue点击标签切换选中及互相排斥操作
2020/07/17 Javascript
[04:19]DOTA2亚洲邀请赛 现场花絮
2015/03/11 DOTA
[19:26]TNC vs EG (BO3)
2018/06/07 DOTA
[01:03:56]Mineski vs TNC 2018国际邀请赛淘汰赛BO1 8.21
2018/08/22 DOTA
使用Python的Treq on Twisted来进行HTTP压力测试
2015/04/16 Python
Python实现的远程登录windows系统功能示例
2018/06/21 Python
Python中pandas dataframe删除一行或一列:drop函数详解
2018/07/03 Python
python3 中文乱码与默认编码格式设定方法
2018/10/31 Python
python可视化爬虫界面之天气查询
2019/07/03 Python
pyinstaller参数介绍以及总结详解
2019/07/12 Python
解决Pycharm 包已经下载,但是运行代码提示找不到模块的问题
2019/08/31 Python
世界上最大的二手相机店:KEN
2017/05/17 全球购物
兰蔻俄罗斯官方网站:Lancome俄罗斯
2019/12/09 全球购物
本科毕业生自我鉴定
2013/11/02 职场文书
大四自我鉴定
2014/02/08 职场文书
推荐信怎么写
2014/05/09 职场文书
义诊活动总结
2015/02/04 职场文书
2015年卫生局工作总结
2015/07/24 职场文书
python opencv将多个图放在一个窗口的实例详解
2022/02/28 Python