2

您好,我是 Codeigniter 的新手。我正在通过 css 为我的网站使用外部字体文件。这是我的CSS代码:

@font-face {
font-family: 'ElegantIcons';
src:url('http://localhost/findacare/font/ElegantIcons.eot'),
    url('http://localhost/findacare/font/ElegantIcons.eot?#iefix') format('embedded-opentype'),
    url('http://localhost/findacare/font/ElegantIcons.woff') format('woff'),
    url('http://localhost/findacare/font/ElegantIcons.svg#ElegantIcons') format('svg'),
    url('http://localhost/findacare/font/ElegantIcons.ttf') format('truetype');
font-weight: normal;
font-style: normal;
}

但是我在加载文件时收到以下错误文件

GET http://localhost/findacare/font/ElegantIcons.woff 404 (Not Found) manage_profile:1
GET http://localhost/findacare/font/ElegantIcons.svg 404 (Not Found) /findacare/font/ElegantIcons.svg#ElegantIcons:1
GET http://localhost/findacare/font/ElegantIcons.ttf 404 (Not Found) /findacare/font/ElegantIcons.ttf:1

我的文件结构是:

findacare-
          -application
          -css
          -font
          -images

即使给出绝对路径,我也检查了很多次。任何人都可以帮助我。

4

3 回答 3

2

如果你查看你的.htaccess文件,你很可能有一行看起来像这样的代码:

RewriteCond $1 !^(index\.php|robots\.txt|css/|js/|images/)

这是不会通过您的应用程序 index.php 传递的文件夹/文件的白名单。所有其他 url 将被传递到应用程序中。

因为您的字体文件夹在 webroot 中,所以您需要将此文件夹添加到白名单中,以便您的 css 规则可以访问它。

RewriteCond $1 !^(index\.php|robots\.txt|css/|js/|images/|font/)

于 2013-11-01T13:56:39.343 回答
0

我在我的一个项目中使用过它,如果您在css文件夹内的文件中有这些行,css那么试试这可能会有所帮助:

@font-face {
    font-family: 'ElegantIcons';
    src:url('../font/ElegantIcons.eot'),
        url('../font/ElegantIcons.eot?#iefix') format('embedded-opentype'),
        url('../font/ElegantIcons.woff') format('woff'),
        url('../font/ElegantIcons.svg#ElegantIcons') format('svg'),
        url('../font/ElegantIcons.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
于 2013-11-01T13:46:05.190 回答
0

正如您在文件结构文件夹中提到的那样,文件夹名称是“fonts”,并且在您的css源路径中您使用的是“font”。

于 2013-11-01T13:37:35.790 回答