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 回答