2

简而言之,有一个全局样式表:

a { font-family: Arial; }

我想为特定链接使用不同的字体系列:

<a href="..." style="font-family: Helvetica;">...</a>

或者

<span style="font-family: Helvetica;"><a href="...">...</a></span>

但没有任何效果。是否有捷径可寻?

PS我动态地(通过PHP)为不同的链接分配不同的字体,所以创建一个特殊的类不是一个选项。

4

4 回答 4

12

除非您有一个名为 Helvetica 的特定字体,否则您应该意识到在某些平台上(例如 Windows,通过FontSubstitutes),Helvetica 是 Arial 的别名。这可能是问题的根源。试试另一种字体看看。

于 2008-10-08T04:13:12.277 回答
6

你的第一次尝试

  <a href="..." style="font-family: Helvetica;">...</a>

应该工作。同意您可能缺少字体。内联样式优先于用户定义样式表之外的任何其他样式。以下是样式定义的优先顺序:

  1. 用户定义样式
  2. 嵌入式或内联样式表
  3. 内部样式表
  4. 外部样式表
  5. 浏览器默认样式

在样式表中,优先级如下:

  1. 任何标记为 !important 的内容
  2. ID

  3. 。班级
  4. 元素

此外,您还有更具体的规则:div aoverrides a

这是一篇很好的文章,其中包含有关该主题的更多详细信息

@Kip 的建议是您最好的选择。

于 2008-10-08T04:36:51.213 回答
5

你写的应该可以工作,除非问题是克里斯指出的,

当您获得一对可以正常工作的字体时,您可能会认为这样做的更好方法是为特殊链接声明一个类,以某种方式提醒您为什么它们需要单独的字体(可能是因为您想要它们要特别注意?)

a { font-family: Arial; }
a .noticed { font-family: Helvetica; }

然后在 HTML 中:

<a class="noticed" href="...">...</a>

通过在链接周围创建一个跨度标签来更改字体,或者向链接添加内联样式只是旧时代<font>标签的味道。

于 2008-10-08T04:27:03.077 回答
1

元素样式会覆盖全局样式,因此 Chris Jester-Young 可能是对的,而您实际上并没有 Helvetica 字体;尝试其他字体,例如您确定存在的 Courier 或 Times New Roman

于 2008-10-08T04:19:13.607 回答