1

@font-face は私の CSS で簡単に設定できるようですが、私の定義したフォントは使用されていません。これは CakePHP 2.2 webapp 内にあり、あらゆる種類の CSS URL パスの組み合わせを試したにもかかわらず、外部 CSS -v- インライン CSS と CSS の一重引用符/引用符なし/二重引用符; 何も機能していません。

CSSは次のとおりです。

<style> 
@font-face {
    font-family:TerminatorTwo;
    src: url(../files/TerminatorTwo.ttf) format('truetype');
}

div {font-family: TerminatorTwo}
</style>

私のアプリにはデフォルトの CakePHP フォルダー構造があるため、CSS は app/webroot/css にあり、フォント (.ttf のみ) は app/webroot/files にあります。

CSS の div 部分の代わりに、特定の div でインライン スタイル定義を試みました。うまくいきませんでした。表示されているコードは機能しません。他の場所の例で見たように、CSS に引用符を追加しようとしても機能しません。これはすべて、最新バージョンの IE8 (はい、8、うん)、Firefox、および Chrome で試してみました。ああ、Android 用の Chrome です。

私もパスをいじりましたが、役に立ちませんでした。

まったくイライラします。それは本質的にとてもシンプルです!

4

1 に答える 1

0

パスが無効なため、フォントファイルがロードされていない可能性があります。このような場合は、 HtmlHelperを使用することをお勧めします。これは、Cakeのインストールで相対パスが混乱するためです。url()このメソッドを使用して、filesディレクトリをポイントします。

@font-face {
  font-family:TerminatorTwo;
  src: url(<?php echo $this->Html->url('/files/TerminatorTwo.ttf'); ?>) format('truetype');
}

Cakeは、URLが常にfilesディレクトリを指していることを確認します。/app/webroot

または、インラインCSSを破棄し、外部スタイルシートを使用して、Cakeの正しいパスの問題を回避することもできます。その場合、CSSファイルがディレクトリにある場合は、表記app/webroot/cssを使用できます。../files/TerminatorTwo.ttf

于 2012-11-07T16:40:45.453 に答える