4

ASP.Net MVC 5 Web プロジェクトを作成し、Twitter.Bootstrap.Less 3.0.1およびFontAwesome.less 4.0.3 NuGet パッケージをインストールしました。

@fa-font-path: "fonts";を使用するように Content/fontawesome/variables.less を変更しました。

@icon-font-path: "fonts/";を使用するように Content/bootstrap/variables.less を変更しました。 @icon-font-name: "fontawesome-webfont";

Content/bootstrap/bootstrap.less を変更して、グリフィコンのインポートを
@import "../fontawesome/font-awesome";に置き換えました。

ビルド時に RECESS を使用して、LESS ソースを bootstrap.css にコンパイルしました。詳しくは こちら をご覧ください

これらはすべて、デバッグ モードでうまく機能します。ただし、デバッグ属性がweb.config から削除された場合、またはBundleTable.EnableOptimizations = true の場合など、リリース モードでは fontawesome アイコンが表示されません。BundleConfig.cs に追加されます。

アイコンは、Chrome では四角形のボックスとして表示され、IE 10 では空白のスペースとして表示されます。

ここで何が欠けているのでしょうか?

4

1 に答える 1

2

[解決策]スタイル バンドルの仮想パスを「~/bundles/css」ではなく「~/Content/css」を使用するように変更し、問題が修正されました。

バンドル パス "~/bundles/css" は仮想であると想定されており、ファイル システム上に存在してはなりません。物理ファイルへのパスとしてではなく、名前として使用されます。このパスがファイル システムに存在する場合、バンドルはロードされません。コンパイルされた bootstrp.css からすべての Unicode 文字が欠落していることがわかりました。

これは奇妙なドキュメントには記載されていません!

于 2013-11-11T17:15:53.243 に答える