css中的font-weight屬性執行個體用法詳解

來源:互聯網
上載者:User
為理解使用者代理程式怎樣決定字型變形的粗細,得先從關鍵字100到900談起,然後我們再來看它是如何繼承的。

font-weight允許值 normal | bold | bolder | lighter | l00 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900

這些數字關鍵字用於定義與字型的相關特徵的映射關係,即字型的粗細被分成九個等級。例如,OpenType就使用了九個值的數字級。字型有了這 層級之後,這些數字就直接映射到各個級,如100映射到最輕的字型變形,而900對應最重的字型變形。

事實上,在這些數字中並不存在本質的字型粗細的約定。CSS指出,每個數字對應的字型粗細不得小於它前面的數字所對應的字型粗細。

這樣,100,200,300和400或許都對應同樣粗細的字型變形,而500和600可能對應到一個更粗的字型變形,700,800和900則對應下另一種更粗的字型變形。

這數字被定義為同某些普通的,而700對應於bold。

字型變形名等價。400等價丁normal

其他數字不對應任何

font-weight屬性的關鍵字,但它們可以對應於普通的字型變形名。如果某種字型變形標記為“Normal”、“Regular”、“Roman”或“Book”,那麼它便被分配給400,而且任何標記為“Medium”的字型變形就對應於500。

然而,如果標記為“Medium”的字型變形是唯一可用的字型,那麼它就不能同500相對應。

如果在某個給定的字型系列裡少於九個字型粗細級,則使用者代理程式需要做更多的工作。在這種情況下,它必須用一種預先定義的方式來填充其間的空隙:

如果值500未分配,它就被賦予同400一樣的字型粗細。

如果300未分配,它就同比400稍輕的字型變形對應。如果沒有更輕的字型可用,300就同400一樣對應於某個級。這通常是在“Normal”和“Medium”情況下。同樣的方法用於100和200。

如果600未分配,它便同比400稍重的字型變形對應。如果沒有這樣的字型可用,600就同500一樣對應於某種字型變形。這種方法也用於700,800和900。

為了便於理解,讓我們來看三個

字型粗細分配的例子,首先假設字型系列Karrank%是OpenType字型,而且已經定義了9個相應的粗細級。

在這裡,這些數字分別對應於各個級,而關鍵字normal和bold各自分配給400和700。在第二個例子裡,我們考慮字型系列Zurich,它在本內容的開始提到過。假設其字型變形也被分配了下面的粗細值。

字型形式:Zurich Light 分配的關鍵字:空 分配的數字:100,200,300

字型形式:Zurich Regular 分配的關鍵字:normal 分配的數字:400

字型形式:Zurich Medium 分配的關鍵字:空 分配的數字:500

字型形式:Zurich Bold 分配的關鍵字:bold 分配的數字:600,700

字型形式:Zurich Black 分配的關鍵字:空 分配的數字:800

字型形式:Zurich UltraBlack 分配的關鍵字:空 分配的數字:900

頭三個數字分配給最輕的字型。普通字型對應關鍵字400和normal。

Medium字型分配給數字500。沒有字型變形分配給600,因此將600和700一起對應於同一字型變形Bold字型。最後800和900分別分配給Black和UltraBlack字型變形。

也只有當最上面的兩個粗細級已經分配後,才會出現這樣的情況。

否則使用者代理程式可能會忽略它們,並且將800和900分配給Bold字型,或者將它們分配給兩個Black字型變形之一。最後,讓我們來看看Times宇體,它只有兩種字型變形,TimesRegulal和TimesBold,如下所示。

字型形式:TimesRegular 分配的關鍵字:normal 分配的數字:100,200,300,400,500

字型形式:TimesBold 分配的關鍵字:bold 分配的數字:600,700,800,900

關鍵宇normal和bold的分配相當直接。對於這些數字,100到300分配給Regular字型,但500怎麼辦呢?它被分配給Regular字型了,因為沒有Medium字型;這樣它就同400一樣了。

餘下的,700總是分配給bold字型,而800和900,由於缺乏更粗的字型,也分配給Bold字型。最後,600被分配給下一個

更粗的字型,當然,也只有bold字型了。

字型粗細可被繼承,如果將段落設定為bold,則所有的子項目都會繼承粗體,如下:

p.one {  font-weight:bold; }
相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.