2013-08-29 39 views
16

任何人都知道我可以在我的Rails應用中包含Google字體樣式表?我曾嘗試加入將Google字體包含在Rails應用中

<link href='https://fonts.googleapis.com/css?family=Raleway:500,900,200' 
rel='stylesheet' type='text/css'> 

進入我的application.html.erb但是,這並不做任何事情

+0

添加在application.html.erb中的頭部和CSS font-family:'Font Name',cursive之間提供的鏈接; – 2013-08-29 10:57:49

+0

也許你的字體CSS是font-family:'Raleway',sans-serif; – 2013-08-29 11:00:25

+0

對不起 - 不明白你的意思! – tommyd456

回答

0

你確定你是把<link href='https://fonts.googleapis.com/css?family=Raleway:500,900,200' rel='stylesheet' type='text/css'>這對你的願望佈局?

而在你們各自的<layout>.css樣式表中,你有沒有把font-family:Raleway;

請確認。 謝謝。

2

application.html.erb

<!DOCTYPE html> 
<html> 
<head> 
<title>Title</title> 
<%= stylesheet_link_tag "application", :media => "all" %> 
<%= javascript_include_tag "application" %> 
<%= csrf_meta_tags %> 

<!-- Google font --> 
<link href='http://fonts.googleapis.com/css?family=Ubuntu' rel='stylesheet' type='text/css'> 

</head> 
<body> 
............ 

application.css

body { 
font-family: 'Ubuntu', sans-serif; 
} 

我使用這種方式,也許這會澄清。

已更新

試着移除您的scaffold.css.scss!或者只是打開並註釋掉這個文件的所有CSS部分。

+0

嗯 - 由於某些原因,這對我不起作用。我已經看過源代碼,裁判在那裏,但沒有效果! – tommyd456

+0

答案已更新。檢查出來 – 2013-08-29 11:29:21

+3

application.css是一個清單文件,不應包含樣式。 – Andreas

14

對於外部的樣式表添加到您的佈局(application.html.erb)

stylesheet_link_tag 'application', 'put any external link' 

如果您在使用
1) <link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Font+Name">軌道佈局

2)

風格具有請求的Web字體的元素,可以在樣式表中使用:

CSS selector { 
    font-family: 'Font Name', serif; 
} 

或元素本身內嵌樣式:

您的文字

你有字體家族Tangerine

例子: -

<html> 
    <head> 
    <link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Tangerine"> 
    <style> 
    body { 
     font-family: 'Tangerine', serif; 
     font-size: 48px; 
    } 
</style> 
</head> 
<body> 
    <div>Making the Web Beautiful!</div> 
</body> 
</html> 
+0

再一次澄清 - 我的問題不是如何使用谷歌字體 - 這是我如何引用Rails應用程序中的外部樣式表 – tommyd456

+0

看看我更新後的帖子謝謝第一行 –

+0

是啊謝謝 - 它不會使雖然 – tommyd456

1

棒此應用程序的首段內.html.erb

<link href='https://fonts.googleapis.com/css?family=Raleway:500,900,200' 
rel='stylesheet' type='text/css'> 

棒這在你的CSS文件:

body{ 
    font-family: "Raleway", Arial, sans-serif; 
} 
+3

這項工作,但似乎不是很軌道..?我怎麼能重新考慮這個? – Huw

12

我用這一個掙扎,因爲我有這樣一行:

<%= stylesheet_link_tag 'application', 
media: 'all', 'data-turbolinks-track' => true %> 

這很難說在那裏把你的鏈接在一見鍾情。

你想要做的是把你的樣式錶鏈接'application',用逗號分開。就像這樣:

<%= stylesheet_link_tag 'application', 
'https://fonts.googleapis.com/css?family=Open+Sans:400&subset=latin', 
media: 'all', 'data-turbolinks-track' => true %> 

然後在你的樣式與FONT-FAMILY財產使用它像往常一樣。

當然,我們可以@import它在一個SASS,或像平常一樣鏈接標籤,但這只是另一種方式,這裏應該提到。

+0

你的回答應該是被接受的解決方案,因爲這是做到這一點的正確方法。 – Jubl

+0

@Jubl謝謝,Jubl! –

1

我相信最完整的方法是編輯應用程序/資產/視圖/ application.html.erb和變化:如果你通過@import添加的字體

<%= stylesheet_link_tag 'application.css' %> 

<%= stylesheet_link_tag 'https://fonts.googleapis.com/css?family=Catamaran','application.css' %> 
1

如其他註釋中所示,在application.css中的@import Bootstrap下,資產管道將其編譯到應用程序樣式表中。如果將它作爲鏈接放在html的頭部,它會作爲單獨的樣式表添加,從而減慢頁面加載速度。您可以添加@import代碼,就像Google提供的您在Google字體網站上選擇的字體一樣。

+0

這個技巧非常非常重要!感謝分享! –

1

只需將google提供的代碼添加到application.scss文件的頂部。

@import url('https://fonts.googleapis.com/css?family=Quicksand|Rubik');

請注意滑軌將爲您提供application.css文件出與需要聲明的開箱。刪除這些並重命名application.scss

記得添加@import文件名;對於文件夾中的任何其他客戶scssfiles

+1

我認爲這是最好的方法,字體不屬於'application.html.erb'。更好的是,你可以創建一個'fonts.scss',導入你需要的所有字體,然後將它包含在'application.scss'中,這樣你就可以得到一個小字體清單 – ohhh

相關問題