2010-06-28 67 views
1

我有一個asp.net頁面與asp.net菜單。Myriad專業字體不出現在Safari

我將菜單項中的字體定義爲Myriad Pro。

在IE和Firefox中它正常顯示,但在Safari中菜單項顯示爲空白。

當我將字體類型更改爲另一種字體時,它工作正常。

有沒有辦法讓Myriad Pro字體出現在Safari上。

感謝

+1

請顯示一些代碼。 – 2010-06-28 15:15:23

+0

在舊版本(?V2)中,Firefox Myriad Pro不會出現:在那時Firefox(至少在Windows上)不支持帶有Postscript輪廓的字體。 Windows上的Safari可能有類似的限制? – Richard 2011-03-23 18:39:38

回答

3

正如Rup提到的,Myriad Pro不是一個無處不在的Mac字體。但是,如果您有.otf或.eot字體文件的副本,則可以使字體適用於所有符合CSS3的瀏覽器,並在瀏覽器不支持CSS3時提供顯示備份字體。這將是做這樣的語法:

@font-face { 
    font-family: "CustomMyriadPro"; 
    src: url("path/to/myriadpro/font.otf") format("opentype"); 
} 

h2 { 
    font-family: "CustomMyriadPro", Helvetica, Georgia; 
} 
+0

這可能會違反Adobe的[字體許可條款](http://www.adobe.com/products/type/font-licensing/licensing-faq.html) – Twilite 2014-04-16 12:42:35

1

按照codestyle.org font survey,大多數Mac沒有專業安裝無數。 (對於這個問題,也不適用Windows)。您應該爲所有Mac,Windows和Linux選擇類似的後備字體,然後在您的樣式中指定這些字體的列表。

如果您特別需要Myriad Pro,那麼您可以使用圖像,或者使用sIFR(可能不適用於菜單)嵌入字體,或通過@ font-face font-embedding(感謝Olly!)代替。

+0

你的意思是CSS @ font-face嵌入,對不對?因爲HTML5不包含這種東西。 2010-06-28 15:20:43

+0

D'oh,是的。對不起,我認爲這是一個HTML 5的東西,而不是CSS的東西。 – Rup 2010-06-28 15:22:26

3

確保你的CSS指定引號無數的專業,即

font-family: "Myriad Pro", sans-serif; 

其次,要知道,如果它安裝在最終用戶的計算機上的字體纔會出現(除非你使用@font-face),所以你總是需要定義一些倒退字體,例如

font-family: "Myriad Pro", Arial, Helvetica, sans-serif; 
2

自升級這個問題有多個安裝的字體發生在我的Mac到5.1,然後到獅子。我認爲升級會破壞一些東西。其他瀏覽器都很好。它也影響其他字體。爲了讓這個編輯器包含可讀的文本,我必須禁用Inspector中的字體系列CSS,因爲Consolas也受到影響。

問題不在於CSS中的後備或規範。問題出在Safari和特定的字體上。它不會回退到有問題的字體,而是繼續使用它,用正方形中的大寫字母A替換所有字符;所以後備沒有任何幫助。

討論和可能的解釋在這裏:https://discussions.apple.com/thread/3191532?start=0&tstart=0