92国产精品视频_亚洲a级在线观看_国产精品电影观看_国产精品免费观看在线_精品伊人久久97_亚洲人成在线观_尤物九九久久国产精品的特点_成人激情在线播放_成人黄色大片在线免费观看_亚洲成人精品久久久_久久免费视频在线观看_久久精品国产一区_国产一区二区三区18_亚洲欧美中文字幕在线一区_日韩美女中文字幕_日韩视频免费在线

深入了解font-weight

2016-11-2    藍藍設計的小編


如果您想訂閱本博客內容,每天自動發到您的郵箱中, 請點這里

1.jpg

問題提出

font-weight的屬性值有100、200、300、400、500、600、700、800、900和normal、bold、lighter、bolder,它們的區別是?
另外,在實際開發中,我們應該使用數值表達還是文字表達呢?

認識font-weight

根據W3C Fonts節章的規范標準,可知:

2.jpg

font-weight可取值:100~900和normal、bold、bolder、lighter。

100~900、normal、bold

如果字體使用九階有序數值100~900來劃分其字重(字體的粗細度),那么樣式指定的font-weight屬性值與字體的字重則一一對應。并且normal等價于400,bold等價于700。
但實際上,我們一般遇到的字體很多時候都是使用一些通用的詞描述劃分其字重,如下所示。

常見的字重數值大致對應的字重描述詞語:

  • 100 – Thin
  • 200 – Extra Light (Ultra Light)
  • 300 – Light
  • 400 – Regular (Normal、Book、Roman)
  • 500 – Medium
  • 600 – Semi Bold (Demi Bold)
  • 700 – Bold
  • 800 – Extra Bold (Ultra Bold)
  • 900 – Black (Heavy)

為什么說大致對應呢?在有些字庫下是有差異的,比如在Adobe Typekit字庫中對字重描述的劃分列表中,它列出Heavy指的是800而不是900。另外,在我們日常使用的Photoshop和Sketch里面,Ultra Light是100,而Thin是200。

并且,字體所擁有的字重的數量實際上很少存在滿足有9個字重剛好跟100~900的CSS字重一一對應的情況,通常字體擁有的字重數量為4至6個。
不必擔心,起碼400和700對應的字重至少是每種字體必備的,譬如常見的 Arial、Helvetica、Georgia等等,只有400(normal)和700(bold)。

bolder、lighter

bolder、lighter表示其字重值是基于從其父元素繼承而來的字重計算所得的,與normal、bold所代表的字重并無關系。

其值通常是根據下表計算而得的:

繼承值(Inherited value) bolder所代表的字重 lighter所代表的字重
100 400 100
200 400 100
300 400 100
400 700 100
500 700 100
600 900 400
700 900 400
800 900 700
900 900 700

字體匹配算法

在上面我們已經提到,在很多情況下,字體并不是以九階數值來劃分的,并且其含有的字重數量是不一的,通常情況下為4-6個。

此時,就會出現樣式指定的字重數值在字體中找不到直接對應的字重,那瀏覽器是如何解決的呢?

Bingo!
那就是要靠字體匹配算法來解決。其中關于font-weight部分是這么提及到的:

6.jpg

講人話就是:
如果指定的font-weight數值,即所需的字重,能夠在字體中找到對應的字重,那么就匹配為該對應的字重。否則,使用下面的規則來查找所需的字重并渲染:

  • 如果所需的字重小于400,則首先降序檢查小于所需字重的各個字重,如仍然沒有,則升序檢查大于所需字重的各字重,直到找到匹配的字重。
  • 如果所需的字重大于500,則首先升序檢查大于所需字重的各字重,之后降序檢查小于所需字重的各字重,直到找到匹配的字重。
  • 如果所需的字重是400,那么會優先匹配500對應的字重,如仍沒有,那么執行第一條所需字重小于400的規則。
  • 如果所需的字重是500,則優先匹配400對應的字重,如仍沒有,那么執行第二條所需字重大于500的規則。

理解與運用

下面我們通過官方例子和實際測試來好好理解這個匹配算法規則。

官方例子

W3C規范標準中給出這么一個例子:

3.jpg

注解:灰色標記的是字體中缺少的字重,而黑色則是字體擁有的字重。

基于匹配算法規則,看圖理解所得:
Figure 15.圖指的是

字體庫內直接匹配的字重 填空值(即通過算法間接匹配所得字重)
400 300、200、100、500
700 600
900 800

font-weight: 300;來說,字體中沒有可以直接匹配的字重,那么300小于400,則根據第一條規則,先降序查找匹配,但是都沒有可匹配的200、100,那么升序查找為400,結果可匹配。

Figure 16.圖指的是

字體庫內直接映射的字重 填空值
300 200、100、400、500
600 700、800、900

這里需要注意的是,填空值500表現的是300的字重,而不是600的字重。
為什么呢?根據結果表現,我們可以反推出,字重在瀏覽器去渲染時早已經按照算法去一一匹配好。也就是,400匹配的字重在500匹配之前已經匹配好了(說起來有點拗口,大家可以根據Figure.16的例子體會下)。

其余的,我就不多解釋了,大家可以根據結果檢查自己是否理解到位。

實際測試——Droid Sans

4.jpg

根據Google Fonts API – Droid Sans提供的Droid Sans字體,我們可以知道該字體擁有兩種字重。

根據字體匹配算法規則,我們可以預測其字重匹配應該如下表所示:

字體庫內直接映射的字重 填空值
400 300、200、100、500
700 600、800、900

也就是100、200、300、500會表現為跟400同一種字重,600、800、900會表現為跟700同一種字重。

利用Google Fonts提供的Droid Sans,我們進行了實例測試-(DroidSans.html)來驗證。
結果如下圖,證明我們的預測結果正確,該字體匹配算法規則運行有效。

5.jpg

總結

根據以上的研究,可以總結出三點:

  1. 通常情況下,一個特定的字體僅會包含少數的可用字重。若所指定的字重不存在直接匹配,則會通過字體匹配算法規則匹配使用鄰近的可用字重。這也就是為什么我們有時候使用特定字重時沒有“生效”,看起來跟其它字重差不多的原因所在。
  2. 在實際中,最為常用的字重是normal和bold。我個人認為400、700是等效于normal、bold的,無論哪一種表示方法都沒有關系,主要是個人習慣問題。
  3. 但是,推薦使用數值替代lighter、bolder,因為這涉及到繼承計算的問題,用數值的話則會更為清晰明了。



藍藍設計m.skdbbs.com )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 、平面設計服務


日歷

鏈接

個人資料

藍藍設計的小編 http://m.skdbbs.com

存檔

92国产精品视频_亚洲a级在线观看_国产精品电影观看_国产精品免费观看在线_精品伊人久久97_亚洲人成在线观_尤物九九久久国产精品的特点_成人激情在线播放_成人黄色大片在线免费观看_亚洲成人精品久久久_久久免费视频在线观看_久久精品国产一区_国产一区二区三区18_亚洲欧美中文字幕在线一区_日韩美女中文字幕_日韩视频免费在线
精品国产一区二区三区久久久久久| 黑人中文字幕一区二区三区| 青青草一区二区| 亚洲狠狠婷婷综合久久久| 国产a视频精品免费观看| 欧美久久成人| 国产一区视频观看| 久久国产88| 视频小说一区二区| 国产乱码精品一区二区三区中文| 色先锋资源久久综合| 国产亚洲精品久久久久久牛牛| 成av人电影在线观看| 欧美精品一区二| 国产精品视频网| www欧美日韩| 九九热hot精品视频在线播放| 久久精品免费观看| 精品动漫3d一区二区三区免费版| 久久免费电影网| 欧洲精品一区二区三区| 国产福利在线视频| 精品国产一区二区三区免费| 欧美另类变人与禽xxxxx| 喷白浆一区二区| 色婷婷激情一区二区三区| 日韩视频免费大全中文字幕| 欧美一区二区三区免费大片| 99在线视频影院| h网站视频在线观看| 99精品视频一区二区| 日韩高清中文字幕一区| 亚洲性图久久| 久久人人爽人人爽爽久久| 26uuu国产电影一区二区| 国产精品一区电影| 秋霞欧美视频| 天美av一区二区三区久久| 岛国av在线播放| 久久裸体网站| 无遮挡亚洲一区| 国产亚洲欧美一区二区三区| 国产精品综合| 日韩欧中文字幕| 在线播放国产精品二区一二区四区| 狂野欧美性猛交xxxx巴西| 99久久久久国产精品| 欧美日韩精品一区二区三区在线观看| 国产亚洲综合av| 狠狠干一区二区| 久久精品人人做人人爽97| 国产在线不卡一卡二卡三卡四卡| 中文字幕亚洲一区| 日韩av图片| 亚洲精品久久久久国产| 日韩一区二区三区观看| 天堂地址在线www| wwww在线观看免费视频| 一二三四区在线观看| 97视频人免费观看| 欧美人与性动交α欧美精品济南到| 国产清纯美女被跳蛋高潮一区二区久久w| 国产精选久久久久久| 日本免费一区二区三区等视频| 欧美三区免费完整视频在线观看| 日韩影院在线| 亚洲精品黄色| 亚洲一区二区影院| 99中文字幕一区| 欧美日韩网址| 欧美天天视频| 亚洲女厕所小便bbb| 欧美激情女人20p| 国产黑人绿帽在线第一区| 欧美一二三区| 欧美激情视频网站| 国产主播一区二区| 日韩免费在线电影| 2019中文字幕在线视频| 欧美一区二区三区视频在线观看| 日韩大陆av| 亚洲bt欧美bt精品777| 亚洲精品视频免费| 日韩不卡av| 欧美另类69xxxxx| 性做久久久久久免费观看欧美| 51xtv成人影院| 欧亚精品在线观看| 欧美亚洲日本国产| 91麻豆精品91久久久久同性| 在线精品国产欧美| 91成人免费电影| 欧美色涩在线第一页| 日韩精品视频中文字幕| 久久av网址| 中文字幕一区二区三区在线观看| 欧美在线播放| 一个色妞综合视频在线观看| 午夜精品久久久久久久白皮肤| 国产精品1区2区在线观看| 欧美午夜在线一二页| 欧洲一区二区av| 老汉av免费一区二区三区| 深夜福利一区二区三区| 国产99久久精品一区二区 夜夜躁日日躁| 久久av在线看| 91资源在线观看| 国产精品亚洲аv天堂网| 精品一区视频| 精品72久久久久中文字幕| 欧美亚洲精品在线| av男人的天堂在线观看| 成人福利视频| 国新精品乱码一区二区三区18| 免费成人美女在线观看.| 国产精品久久久久aaaa| 81精品国产乱码久久久久久| 精品免费一区二区三区| 久久精品成人一区二区三区蜜臀| 欧美在线视频免费观看| 欧美mv日韩mv国产网站| 日韩欧美精品久久| 巨大黑人极品videos精品| 精品国产亚洲一区二区三区大结局| 中文字幕在线观看不卡视频| 日本不卡不码高清免费观看| 91成人伦理在线电影| 怡红院在线观看| 国产欧美一区二区三区视频| 亚洲精品免费看| 精品一区二区久久久久久久网站| 亚洲午夜久久久影院| 亚洲线精品一区二区三区| 日韩美女天天操| 亚洲黄网站在线观看| 日韩限制级电影在线观看| 日韩电影免费观| 久久99国产精品99久久| 亚洲成人av一区二区三区| 亚洲国产另类久久久精品极度| 国产国产精品人在线视| 国产精品久久久久久久久免费樱桃| 国产精品啊啊啊| 国产欧洲精品视频| 精品国产老师黑色丝袜高跟鞋| 日本高清免费不卡视频| 五月婷婷另类国产| jlzzjlzz亚洲女人| 国产精品爱啪在线线免费观看| 亚洲狼人综合| 一区二区中文字幕在线| 国产欧美韩国高清| 亚洲人成电影网站色mp4| 久久婷婷激情| 老司机在线精品视频| 国产不卡网站| 国产亚洲欧洲997久久综合| 午夜在线观看免费一区| 国产麻豆一区二区三区精品视频| 国产一区91精品张津瑜| 麻豆视频在线免费观看| 精品国产一区二区三区不卡| 国产剧情一区二区| 99九九热只有国产精品|