簡體   English   中英

如何覆蓋全局樣式表

[英]How to override global stylesheet

簡而言之,有一個全局樣式表:

a { font-family: Arial; }

我想為特定鏈接使用不同的字體系列:

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

要么

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

但沒有任何作用。 是否有捷徑可尋?

PS我是動態的(通過PHP)為不同的鏈接分配不同的字體,因此創建一個特殊的類不是一個選項。

除非你有一個名為Helvetica的特定字體,否則你應該意識到在某些平台上(例如Windows,通過FontSubstitutes ),Helvetica是別名的Arial。 這可能是問題的根源。 嘗試另一種字體,看看。

你的第一次嘗試

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

應該有用。 同意你可能錯過了一種字體。 內聯樣式優先於用戶定義樣式表旁邊的任何其他樣式。 以下是樣式定義的優先順序:

  1. 用戶定義的樣式
  2. 嵌入式或內聯樣式表
  3. 內部樣式表
  4. 外部樣式表
  5. 瀏覽器默認樣式

在樣式表中,優先級如下:

  1. 任何標記的東西!重要的
  2. ID

  3. 。類
  4. 元件

此外,你有更大的特殊性規則: div a覆蓋a

這是一篇很好的文章,詳細介紹了這個主題

@Kip的建議是你最好的選擇。

除非問題是克里斯指出的,否則你所寫的內容應該有效。

當你得到一對正常工作的字體時,你可能會認為更好的方法是為特殊鏈接聲明一個類,以某種方式提醒自己為什么需要一個單獨的字體(也許是因為你想要它們)要特別注意?)

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

然后在HTML中:

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

通過在鏈接周圍創建一個span標簽來更改字體,或者為鏈接添加內聯樣式只是過去的<font>標簽。

元素樣式覆蓋全局樣式,所以Chris Jester-Young可能是正確的,你實際上並沒有Helvetica字體; 嘗試不同的字體,例如Courier或Times New Roman,你肯定存在

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM