css – Bootstrap图标在本地加载,但在线时不加载

前端之家收集整理的这篇文章主要介绍了css – Bootstrap图标在本地加载,但在线时不加载前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
基本上我得到以下 HTML
<button class="disabled btn-primary btn" type="submit" disabled="">
   <i class="glyphicon glyphicon-ban-circle"></i>
   Log in
</button>

在本地,图标在按钮上显示正常,但是当我在Windows Azure上运行时,我得到以下按钮,其中包含一个奇怪的外观前缀而不是图标:

考虑到这一点,我意识到当在本地访问我的网站时,浏览器会尝试加载文件
/Content/fonts/glyphicons-halflings-regular.woff(它成功完成)
当在线(在天蓝色)时,它会尝试加载:
/fonts/glyphicons-halflings-regular.woff

为什么它没有放置它在本地执行的/ Content前缀.

我正在使用标准的bootstrap文件,它是在本地和在线运行的完全相同的网站.

另外,我通过以下方式捆绑内容

bundles.Add(new StyleBundle("~/Content/bootstrapcss").Include(
                "~/Content/bootstrap/bootstrap.css"));

文件结构如下所示:

另外bootstrap正在寻找这样的文件

url('../fonts/glyphicons-halflings-regular.woff')

所以我认为它会在Content文件夹中查找而不是root文件,因为它当前位于Content / bootstrapcss文件夹中.

解决方法

我们最近有类似的问题(虽然我们使用的是metroUI- http://metroui.org.ua/).基本上我们发现我们正在捆绑css文件,因此当我们在Windows Azure中部署应用程序时,没有加载任何字体.

在我们的例子中,我们有以下目录结构:

而modern.css引用的字体就像

../fonts/iconFont.eot

我们正在捆绑css文件,如下所示:

bundles.Add(new StyleBundle("~/Content/css").Include(
                "~/Content/css/modern.css","~/Content/css/modern-responsive.css"));

由于捆绑,应用程序在应用程序根目录中的/ fonts目录中查找字体,这显然不存在.

长话短说,我们最终改变了包名:

bundles.Add(new StyleBundle("~/Content/css/metroUI").Include(
                "~/Content/css/modern.css","~/Content/css/modern-responsive.css"));

更改包名称后,事情就开始正常运行了.

猜你在找的CSS相关文章