0

サーバー側の問題に関しては、私は完全に初心者なので、我慢してください。

フォントファイルが1つのサーバーに表示されないのに、別のサーバーに表示されるという問題があります。

html / cssしか扱っていないので、実際のファイルをホストしているサーバーがわかりません。

私のフォント宣言は次のとおりです。

@font-face {
    font-family: 'Pictos';
    src: url("fonts/pictos-web.eot");
    src: local("?"), url("fonts/pictos-web.woff") format("woff"), url("fonts/pictos-web.ttf") format("truetype"), url("fonts/pictos-web.svg#webfontIyfZbseF") format("svg");
    font-weight: normal;
    font-style: normal;
}

.pictos {
    font-family:'Pictos';
    color:#FC6;
}

cssファイルのリンクは次のとおりです。

<link rel="stylesheet" media="screen,handheld" type="text/css" href="css/global.css">

[ネットワーク]タブを確認したところ、ステータスコードは301(永続的に移動)でした。まだ正しく表示されているにもかかわらず、リダイレクトされている画像があります。cssファイルのスタイルと同じです。ただし、サーバーは次の場所でファイルを探しています。

/css/global.css/fonts/pictos-web.woff/

彼らがこのようになるべきとき:

 /css/fonts/pictos-web.woff

最も厄介なのは、フォントがIE 9-7で正しく機能するが、FF、Chrome、Safariでは機能しないことです。

4

1 に答える 1

2

.cssファイルのURLは、cssファイル自体に関連しており、そのcssファイルを使用しているドキュメントではありません。例えば

page: http://example.com/dir/subdir/index.php
css:  http://example.com/css/styles.css
         containing: url('foo/bar/img.jpg')

そのレイアウトを考えると、ブラウザはフェッチしようとします

http://example.com/css/foo/bar/img.jpg
                   ^^^

あなたのcssURLはローカル絶対でなければなりません、例えば

 url('/foo/bar/img.jpg');
      ^---

ブラウザレベルの「リダイレクト」なしで適切なパスが実行されるようにするため。

于 2012-10-11T15:19:25.780 に答える