2013-03-05 7 views
7

CSS 'font-family'の値にはいつ引用符を付ける必要がありますか?CSSフォントファミリの値はいつ引用符を使用する必要がありますか?

私はfont-family: arialfont-family: "arial"の両方を見ました。

具体的な例として、私はフォントをこのように宣言します。

@font-face { 
    font-family: 'entypo'; 
    font-style: normal; 
    font-weight: 400; 
    src: url('/css/fonts/entypo.woff') format('woff'); 
} 

要素は、このフォントファミリを使用できるようにするにはどのような正しいCSSでしょうか?

+1

ですから、基本的にあなたの質問は、「このCSS規格が指定されていますか?」です。 –

+0

私はTimes New Romanのような空白で囲まれていない値でもうまくいくと説明した記事を読んでいましたが、残念ながらURLは手元にありません。その上の内部がかなり複雑で、フォントファミリの実際の名前と関係があることを知ってください。 –

+0

@GeorgeKatsanos:ええと、記事がなくても簡単に確認できます。(http:// jsfiddle.net/HMVHr/) –

答えて

7

フォント自体のスペースが"Times New Roman"の場合にのみ引用符が必要です。

Arialは引用符を必要としませんが、より一貫性を持たせるために、"Arial"のような引用符を使用する人もいます。それは単に個人的な好みです。

コメントは次のとおりです。font-family: times new roman;はスペースなしで使用できます(jsFiddle)。

font-family: 'entypo';を使用して新しい@font-faceを呼び出すことができます。 (link

+0

1つの単語でも引用符を追加すると、CSS全体に一貫性があるという利点があります。 –

+2

TIL名前の前後に引用符を付けると、名前がより正確になります。 ':P' –

+1

ああ?あなたは[Times New Romanについての引用が必要です](http://jsfiddle.net/HMVHr/)? –

1

ただ、このことから答えるために行く:エスケープでのミスを避けるために

http://www.w3.org/TR/CSS2/fonts.html#font-family-prop

、空白、数字、またはハイフン以外の句読点文字を含むフォントファミリ名を引用することをお勧めします:

体{フォントファミリ:「新世紀Schoolbookが」、セリフ}キーワードvalのと同じことが起こる

フォントファミリ名同じ名前のキーワードとの混同を避けるために、ue( '継承'、 'セリフ'、 'サンセリフ'、 'モノスペース'、 'ファンタジー'、および '筆記体')を引用する必要があります。 CSS 2.1 specことで

0

、それは、スペース(単に「のASCII文字と数字」よりも広い概念である)identifier characters以外の文字が含まれている場合、引用符であることをを必要フォント名。したがって、font-family: foo barは正しいです。もちろんfont-family: entypoです。

コーディングスタイルは別の問題です。特定のフォントファミリ名を(sans-serifのような一般名とは反対に)引用するのは常に正しいので、font-family: "entypo"も正しいです。

非常に理論的には、特定のフォントファミリ名が一般的な名前と一致する場合(またはそのようなフォントを作成したことがないと思われる場合)、またはその名前に先頭または末尾のスペースや連続(ただし、その意味で彼のフォントにそのような名前を付ける人はいない)。

+0

'foo bar'がフォントの名前であれば、' font-family:foo bar'は**正しくありません**です。引用符で囲む必要があります。 「Serif」と「Monospace」の両方がフォントファミリ名として使用されているのを見てきました。 – 0b10011

+0

@bfrohsについては、引用した仕様書を参照してください。また、http://jigsaw.w3.org/css-validator/を使用することもできます。また、引用された "" Serif ""をフォント名として使用できます。構文上有効です。そのようなフォントファミリがないので意味がありません。 –

+0

具体的には、「空白を含むフォントファミリ名を引用する」というスペックがあります。 Ergo、あなたの例( 'font-family:foo bar')は' font-family: "foo bar" 'でなければなりません。 '' Serif''を引用することができます - 前に '' Serif'と 'Monospace'の両方の名前のフォントを見たことを指摘していました。 – 0b10011

関連する問題