UNPKG

han-css

Version:

The CSS typography framework optimised for Hanzi

870 lines (790 loc) 17.5 kB
/** * Basic correction to CJK punctuation * ‘Biaodian’(zh) and ‘Yakumono’(ja) */ // * 1. Recommended (推薦) // * 2. CNS (適用繁體的舊字形或國字標準字形字體) // * 3. GB (中國國標) /* Fullwidth full stop (.) */ // 1 @font-face { font-family: 'Biaodian Sans'; src: local('Hiragino Sans GB'), local('Heiti SC'), local(STHeiti), local('MS Gothic'), local(SimSun); unicode-range: U+FF0E; } @font-face { font-family: 'Biaodian Serif'; src: local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('Songti SC'), local(STSong), local(SimSun); unicode-range: U+FF0E; } @font-face { font-family: 'Biaodian Pro Sans'; src: local('Hiragino Sans GB'), local('Heiti SC'), local(STHeiti), local('MS Gothic'), local(SimSun); unicode-range: U+FF0E; } @font-face { font-family: 'Biaodian Pro Serif'; src: local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('Songti SC'), local(STSong), local(SimSun); unicode-range: U+FF0E; } // 2 @font-face { font-family: 'Biaodian Pro Sans CNS'; src: local('Hiragino Sans GB'), local('Heiti SC'), local(STHeiti), local('MS Gothic'), local(SimSun); unicode-range: U+FF0E; } @font-face { font-family: 'Biaodian Pro Serif CNS'; src: local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('Songti SC'), local(STSong), local(SimSun); unicode-range: U+FF0E; } // 3 @font-face { font-family: 'Biaodian Pro Sans GB'; src: local('Hiragino Sans GB'), local('Heiti SC'), local(STHeiti), local('MS Gothic'), local(SimSun); unicode-range: U+FF0E; } @font-face { font-family: 'Biaodian Pro Serif GB'; src: local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('Songti SC'), local(STSong), local(SimSun); unicode-range: U+FF0E; } /* Middle dot (·) */ // 1 @font-face { font-family: 'Biaodian Sans'; src: local('Hiragino Sans GB'), local('Heiti SC'), local(STHeiti), local(SimSun); unicode-range: U+00B7; } @font-face { font-family: 'Biaodian Serif'; src: local('Songti SC'), local(STSong), local('Heiti SC'), local(SimSun); unicode-range: U+00B7; } @font-face { font-family: 'Biaodian Pro Sans'; src: local('Hiragino Sans GB'), local('Heiti SC'), local(STHeiti), local(SimSun); unicode-range: U+00B7; } @font-face { font-family: 'Biaodian Pro Serif'; src: local('Songti SC'), local(STSong), local('Heiti SC'), local(SimSun); unicode-range: U+00B7; } // 2 @font-face { font-family: 'Biaodian Pro Sans CNS'; src: local('Hiragino Sans GB'), local('Heiti SC'), local(STHeiti), local(SimSun); unicode-range: U+00B7; } @font-face { font-family: 'Biaodian Pro Serif CNS'; src: local('Songti SC'), local(STSong), local('Heiti SC'), local(SimSun); unicode-range: U+00B7; } // 3 @font-face { font-family: 'Biaodian Pro Sans GB'; src: local('Hiragino Sans GB'), local('Heiti SC'), local(STHeiti), local(SimSun); unicode-range: U+00B7; } @font-face { font-family: 'Biaodian Pro Serif GB'; src: local('Songti SC'), local(STSong), local('Heiti SC'), local(SimSun); unicode-range: U+00B7; } /* Em dash (——) */ // 1 @font-face { font-family: 'Biaodian Sans'; src: $han-webfont, local('Hiragino Sans GB'), local('Hiragino Kaku Gothic ProN'), local('Hiragino Kaku Gothic Pro'), local('Microsoft Yahei'), local(SimSun); unicode-range: U+2014; } @font-face { font-family: 'Biaodian Serif'; src: $han-webfont, local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('Songti SC'), local(STSong), local('Microsoft Yahei'), local(SimSun); unicode-range: U+2014; } @font-face { font-family: 'Yakumono Sans'; src: $han-webfont, local('Hiragino Kaku Gothic ProN'), local('Hiragino Kaku Gothic Pro'), local('Arial Unicode MS'), local('MS Gothic'); unicode-range: U+2014; } @font-face { font-family: 'Yakumono Serif'; src: $han-webfont, local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('MS Mincho'), local('Microsoft Yahei'); unicode-range: U+2014; } @font-face { font-family: 'Biaodian Pro Sans'; src: $han-webfont, local('Hiragino Sans GB'), local('Hiragino Kaku Gothic ProN'), local('Hiragino Kaku Gothic Pro'), local('Microsoft Yahei'), local(SimSun); unicode-range: U+2014; } @font-face { font-family: 'Biaodian Pro Serif'; src: $han-webfont, local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('Songti SC'), local(STSong), local('Microsoft Yahei'), local(SimSun); unicode-range: U+2014; } // 2 @font-face { font-family: 'Biaodian Pro Sans CNS'; src: $han-webfont, local('Hiragino Sans GB'), local('Hiragino Kaku Gothic ProN'), local('Hiragino Kaku Gothic Pro'), local('Microsoft Yahei'), local(SimSun); unicode-range: U+2014; } @font-face { font-family: 'Biaodian Pro Serif CNS'; src: $han-webfont, local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('Songti SC'), local(STSong), local('Microsoft Yahei'), local(SimSun); unicode-range: U+2014; } // 3 @font-face { font-family: 'Biaodian Pro Sans GB'; src: $han-webfont, local('Hiragino Sans GB'), local('Hiragino Kaku Gothic ProN'), local('Hiragino Kaku Gothic Pro'), local('Microsoft Yahei'), local(SimSun); unicode-range: U+2014; } @font-face { font-family: 'Biaodian Pro Serif GB'; src: $han-webfont, local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('Songti SC'), local(STSong), local('Microsoft Yahei'), local(SimSun); unicode-range: U+2014; } /* Ellipsis (……) */ // 1 @font-face { font-family: 'Biaodian Sans'; src: $han-webfont, local('Hiragino Sans GB'), local('Hiragino Kaku Gothic ProN'), local('Hiragino Kaku Gothic Pro'), local(Meiryo), local('MS Gothic'), local(SimSun), local(PMingLiU); unicode-range: U+2026; } @font-face { font-family: 'Biaodian Serif'; src: $han-webfont, local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('Songti SC'), local('MS Mincho'), local(SimSun), local(PMingLiU); unicode-range: U+2026; } @font-face { font-family: 'Yakumono Sans'; src: $han-webfont, local('Hiragino Kaku Gothic ProN'), local('Hiragino Kaku Gothic Pro'), local(Meiryo), local('MS Gothic'); unicode-range: U+2026; } @font-face { font-family: 'Yakumono Serif'; src: $han-webfont, local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('MS Mincho'); unicode-range: U+2026; } @font-face { font-family: 'Biaodian Pro Sans'; src: $han-webfont, local('Hiragino Sans GB'), local('Hiragino Kaku Gothic ProN'), local('Hiragino Kaku Gothic Pro'), local(SimSun), local(PMingLiU); unicode-range: U+2026; } @font-face { font-family: 'Biaodian Pro Serif'; src: $han-webfont, local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('Songti SC'), local(SimSun), local(PMingLiU); unicode-range: U+2026; } // 2 @font-face { font-family: 'Biaodian Pro Sans CNS'; src: $han-webfont, local('Hiragino Sans GB'), local('Hiragino Kaku Gothic ProN'), local('Hiragino Kaku Gothic Pro'), local(SimSun), local(PMingLiU); unicode-range: U+2026; } @font-face { font-family: 'Biaodian Pro Serif CNS'; src: $han-webfont, local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('Songti SC'), local(STSongti), local(SimSun), local(PMingLiU); unicode-range: U+2026; } // 3 @font-face { font-family: 'Biaodian Pro Sans GB'; src: $han-webfont, local('Hiragino Sans GB'), local('Hiragino Kaku Gothic ProN'), local('Hiragino Kaku Gothic Pro'), local(SimSun), local(PMingLiU); unicode-range: U+2026; } @font-face { font-family: 'Biaodian Pro Serif GB'; src: $han-webfont, local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('Songti SC'), local(STSongti), local(SimSun), local(PMingLiU); unicode-range: U+2026; } /* Curve quotes (“‘’”, GB-only) */ // 3 @font-face { font-family: 'Biaodian Pro Sans GB'; src: local('Hiragino Sans GB'), local('Heiti SC'), local(STHeiti), local(SimSun), local(PMingLiU); unicode-range: U+201C-201D, U+2018-2019; } @font-face { font-family: 'Biaodian Pro Sans GB'; font-weight: bold; src: local('Hiragino Sans GB'), local('Heiti SC'), local(STHeiti), local(SimSun), local(PMingLiU); unicode-range: U+201C-201D, U+2018-2019; } @font-face { font-family: 'Biaodian Pro Serif GB'; src: local('Lisong Pro'), local('Heiti SC'), local(STHeiti), local(SimSun), local(PMingLiU); unicode-range: U+201C-201D, U+2018-2019; } @font-face { font-family: 'Biaodian Pro Serif GB'; font-weight: bold; src: local('Lisong Pro'), local('Heiti SC'), local(STHeiti), local(SimSun), local(PMingLiU); unicode-range: U+201C-201D, U+2018-2019; } /* Default emphasis mark (•) */ // 1 @font-face { font-family: 'Biaodian Sans'; src: local(Georgia), local('Times New Roman'), local(Arial), local('Droid Sans Fallback'); unicode-range: U+25CF; } @font-face { font-family: 'Biaodian Serif'; src: local(Georgia), local('Times New Roman'), local(Arial), local('Droid Sans Fallback'); unicode-range: U+25CF; } @font-face { font-family: 'Biaodian Pro Sans'; src: local(Georgia), local('Times New Roman'), local(Arial), local('Droid Sans Fallback'); unicode-range: U+25CF; } @font-face { font-family: 'Biaodian Pro Serif'; src: local(Georgia), local('Times New Roman'), local(Arial), local('Droid Sans Fallback'); unicode-range: U+25CF; } // 2 @font-face { font-family: 'Biaodian Pro Sans CNS'; src: local(Georgia), local('Times New Roman'), local(Arial), local('Droid Sans Fallback'); unicode-range: U+25CF; } @font-face { font-family: 'Biaodian Pro Serif CNS'; src: local(Georgia), local('Times New Roman'), local(Arial), local('Droid Sans Fallback'); unicode-range: U+25CF; } // 3 @font-face { font-family: 'Biaodian Pro Sans GB'; src: local(Georgia), local('Times New Roman'), local(Arial), local('Droid Sans Fallback'); unicode-range: U+25CF; } @font-face { font-family: 'Biaodian Pro Serif GB'; src: local(Georgia), local('Times New Roman'), local(Arial), local('Droid Sans Fallback'); unicode-range: U+25CF; } /** * Advanced correction to Chinese Biaodian */ // * a. Period, comma, paused comma (。,、) // * b. Colon, semicolon, question, exclam- // * ation marks (;:?!) // * c. En dash (fullwidth hyphen-minus), // * division slash, back slash (-/\) // * // 1 @font-face { font-family: 'Biaodian Pro Sans'; src: local('Hiragino Kaku Gothic ProN'), local('Hiragino Kaku Gothic Pro'), local('MS Gothic'); unicode-range: U+3002, U+FF0C, U+3001, // a U+FF1B, U+FF1A, U+FF1F, U+FF01, // b U+FF0D, U+FF0F, U+FF3C // c; } @font-face { font-family: 'Biaodian Pro Serif'; src: local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('MS Mincho'); unicode-range: U+3002, U+FF0C, U+3001, // a U+FF1B, U+FF1A, U+FF1F, U+FF01, // b U+FF0D, U+FF0F, U+FF3C // c; } // 2 @font-face { font-family: 'Biaodian Pro Sans CNS'; src: local('Heiti TC'), local('Lihei Pro'), local('Microsoft Jhenghei'), local(PMingLiU); unicode-range: U+3002, U+FF0C, U+3001 // a; } @font-face { font-family: 'Biaodian Pro Sans CNS'; src: local('Hiragino Kaku Gothic ProN'), local('Hiragino Kaku Gothic Pro'), local('Heiti TC'), local('Lihei Pro'), local('Microsoft Jhenghei'), local(PMingLiU), local('MS Gothic'); unicode-range: U+FF1B, U+FF1A, U+FF1F, U+FF01 // b; } @font-face { font-family: 'Biaodian Pro Sans CNS'; src: local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('MS Mincho'); unicode-range: U+FF0D, U+FF0F, U+FF3C // c; } @font-face { font-family: 'Biaodian Pro Serif CNS'; src: local(STSongti-TC-Regular), local('Lisong Pro'), local('Heiti TC'), local(PMingLiU); unicode-range: U+3002, U+FF0C, U+3001 // a; } @font-face { font-family: 'Biaodian Pro Serif CNS'; src: local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local(PMingLiU), local('MS Mincho'); unicode-range: U+FF1B, U+FF1A, U+FF1F, U+FF01, // b U+FF0D, U+FF0F, U+FF3C // c; } // 3 @font-face { font-family: 'Biaodian Pro Sans GB'; src: local('Hiragino Sans GB'), local('Heiti SC'), local(STHeiti), local('Hiragino Kaku Gothic ProN'), local('Hiragino Kaku Gothic Pro'), local(SimSun), local('MS Gothic'); unicode-range: U+3002, U+FF0C, U+3001, // a U+FF1B, U+FF1A, U+FF1F, U+FF01, // b U+FF0D, U+FF0F, U+FF3C // c; } @font-face { font-family: 'Biaodian Pro Serif GB'; src: local('Songti SC'), local(STSongti), local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('Hiragino Sans GB'), local('Heiti SC'), local(STHeiti), local(SimSun), local('MS Mincho'); unicode-range: U+3002, U+FF0C, U+3001, // a U+FF1B, U+FF1A, U+FF1F, U+FF01 // b; } @font-face { font-family: 'Biaodian Pro Serif GB'; src: local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local(PMingLiU), local('MS Mincho'); unicode-range: U+FF0D, U+FF0F, U+FF3C // c; } // * a. Quotes (「『』」) // * b. Brackets (()《》〈〉〔〕) // * @font-face { font-family: 'Biaodian Pro Sans'; src: local('Hiragino Kaku Gothic ProN'), local('Hiragino Kaku Gothic Pro'), local('Yu Gothic'), local(YuGothic), local(SimSun), local(PMingLiU); unicode-range: U+300C-300F, // a U+300A-300B, U+3008-3009, U+FF08-FF09, U+3014-3015 // b; } @font-face { font-family: 'Biaodian Pro Serif'; src: local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('Yu Mincho'), local(YuMincho), local(SimSun), local(PMingLiU); unicode-range: U+300C-300F, // a U+300A-300B, U+3008-3009, U+FF08-FF09, U+3014-3015 // b; } // 2 @font-face { font-family: 'Biaodian Pro Sans CNS'; src: local('Hiragino Kaku Gothic ProN'), local('Hiragino Kaku Gothic Pro'), local('Yu Gothic'), local(YuGothic), local(SimSun), local(PMingLiU); unicode-range: U+300C-300F, // a U+300A-300B, U+3008-3009, U+FF08-FF09, U+3014-3015 // b; } @font-face { font-family: 'Biaodian Pro Serif CNS'; src: local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('Yu Mincho'), local(YuMincho), local(SimSun), local(PMingLiU); unicode-range: U+300C-300F, // a U+300A-300B, U+3008-3009, U+FF08-FF09, U+3014-3015 // b; } // 3 @font-face { font-family: 'Biaodian Pro Sans GB'; src: local('Hiragino Kaku Gothic ProN'), local('Hiragino Kaku Gothic Pro'), local('Yu Gothic'), local(YuGothic), local(SimSun), local(PMingLiU); unicode-range: U+300C-300F, // a U+300A-300B, U+3008-3009, U+FF08-FF09, U+3014-3015 // b; } @font-face { font-family: 'Biaodian Pro Serif GB'; src: local('Hiragino Mincho ProN'), local('Hiragino Mincho Pro'), local('Yu Mincho'), local(YuMincho), local(SimSun), local(PMingLiU); unicode-range: U+300C-300F, // a U+300A-300B, U+3008-3009, U+FF08-FF09, U+3014-3015 // b; } /* Address solution to `unicode-range` unsupported * issues in Firefox. */ @font-face { font-family: 'Biaodian Basic'; src: $han-webfont; unicode-range: U+2014, U+2026, U+00B7; } @font-face { font-family: 'Biaodian Basic'; font-weight: bold; src: $han-webfont; unicode-range: U+2014, U+2026, U+00B7; } @font-face { font-family: 'Biaodian Sans'; font-weight: bold; src: $han-webfont; unicode-range: U+2014, U+2026, U+00B7; } @font-face { font-family: 'Biaodian Pro Sans'; font-weight: bold; src: $han-webfont; unicode-range: U+2014, U+2026, U+00B7; } @font-face { font-family: 'Biaodian Pro Sans'; font-weight: bold; src: $han-webfont; unicode-range: U+2014, U+2026, U+00B7; } @font-face { font-family: 'Biaodian Pro Sans CNS'; font-weight: bold; src: $han-webfont; unicode-range: U+2014, U+2026, U+00B7; } @font-face { font-family: 'Biaodian Pro Sans GB'; font-weight: bold; src: $han-webfont; unicode-range: U+2014, U+2026, U+00B7; } @font-face { font-family: 'Biaodian Pro Serif'; font-weight: bold; src: $han-webfont; unicode-range: U+2014, U+2026, U+00B7; } @font-face { font-family: 'Biaodian Pro Serif CNS'; font-weight: bold; src: $han-webfont; unicode-range: U+2014, U+2026, U+00B7; } @font-face { font-family: 'Biaodian Pro Serif GB'; font-weight: bold; src: $han-webfont; unicode-range: U+2014, U+2026, U+00B7; }