font-variant-ligatures
åºçº¿
广æ³å¯ç¨
èª 2020å¹´1æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
font-variant-ligatures 屿§æ§å¶çå
¶æåºç¨å
ç´ ææ¬ç ligatures ä¸ contextual forms ãä¼ä½¿æåæç»ç表ç°å½¢å¼æ´å ç»ä¸ã
å°è¯ä¸ä¸
font-variant-ligatures: normal;
font-variant-ligatures: no-common-ligatures;
font-variant-ligatures: common-ligatures;
<section id="default-example">
<div id="example-element">
<p>Difficult waffles</p>
</div>
</section>
@font-face {
font-family: "Fira Sans";
src:
local("FiraSans-Regular"),
url("/shared-assets/fonts/FiraSans-Regular.woff2") format("woff2");
font-weight: normal;
font-style: normal;
}
section {
font-family: "Fira Sans", sans-serif;
margin-top: 10px;
font-size: 1.5em;
}
Syntax
/* Keyword values */
font-variant-ligatures: normal;
font-variant-ligatures: none;
font-variant-ligatures: common-ligatures; /* <common-lig-values> */
font-variant-ligatures: no-common-ligatures; /* <common-lig-values> */
font-variant-ligatures: discretionary-ligatures; /* <discretionary-lig-values> */
font-variant-ligatures: no-discretionary-ligatures; /* <discretionary-lig-values> */
font-variant-ligatures: historical-ligatures; /* <historical-lig-values> */
font-variant-ligatures: no-historical-ligatures; /* <historical-lig-values> */
font-variant-ligatures: contextual; /* <contextual-alt-values> */
font-variant-ligatures: no-contextual; /* <contextual-alt-values> */
/* Global values */
font-variant-ligatures: inherit;
font-variant-ligatures: initial;
font-variant-ligatures: unset;
font-variant-ligaturesåå¼ä¸ºä¸åå
³é®åä¹ä¸ã
Values
normal-
é»è®¤å¼ï¼è¡¨ç¤ºå¨æ¸²ææ¶ä¼ä½¿ç¨å¸¸ç¨çè¿åï¼è¿åçææåå³äºåä½ï¼è¯è¨åèæ¬ã
none-
ä¸ä½¿ç¨ä»»ä½è¿åï¼å æ¬å¸¸è§çå½¢å¼
- <common-lig-values>
-
These values control the most common ligatures, like for
fi,ffi,thor similar. They correspond to the OpenType valuesligaandclig. Two values are possible:common-ligaturesactivating these ligatures. Note that the keywordnormalactivates these ligatures.no-common-ligaturesdeactivating these ligatures.
- <discretionary-lig-values>
-
These values control specific ligatures, specific to the font and defined by the type designer. They correspond to the OpenType values
dlig. Two values are possible:discretionary-ligaturesactivating these ligatures.no-discretionary-ligaturesdeactivating the ligatures. Note that the keywordnormalusually deactivates these ligatures.
- <historical-lig-values>
-
These values control the ligatures used historically, in old books, like the German tz digraph being displayed as ê©. They correspond to the OpenType values
hlig. Two values are possible:historical-ligaturesactivating these ligatures.no-historical-ligaturesdeactivating the ligatures. Note that the keywordnormalusually deactivates these ligatures.
- <contextual-alt-values>
-
These values control whether letters adapt to their contextâthat is, whether they adapt to the surrounding letters. These values correspond to the OpenType values
calt. Two values are possible:contextualspecifies that the contextual alternates are to be used. Note that the keywordnormalusually activates these ligatures too.no-contextualprevents their use.
Formal definition
| åå§å¼ | normal |
|---|---|
| éç¨å ç´ | ææå
ç´ åææ¬. It also applies to ::first-letter and ::first-line. |
| æ¯å¦æ¯ç»§æ¿å±æ§ | æ¯ |
| 计ç®å¼ | as specified |
| å¨ç»ç±»å | 离æ£å¼ |
Formal syntax
font-variant-ligatures =
normal |
none |
[ <common-lig-values> || <discretionary-lig-values> || <historical-lig-values> || <contextual-alt-values> ]
<common-lig-values> =
common-ligatures |
no-common-ligatures
<discretionary-lig-values> =
discretionary-ligatures |
no-discretionary-ligatures
<historical-lig-values> =
historical-ligatures |
no-historical-ligatures
<contextual-alt-values> =
contextual |
no-contextual
示ä¾
>Setting font ligatures and contextual forms
HTML
<link href="//fonts.googleapis.com/css?family=Lora" rel="stylesheet" />
<p class="normal">
normal<br />
if fi ff tf ft jf fj
</p>
<p class="none">
none<br />
if fi ff tf ft jf fj
</p>
<p class="common-ligatures">
common-ligatures<br />
if fi ff tf ft jf fj
</p>
<p class="no-common-ligatures">
no-common-ligatures<br />
if fi ff tf ft jf fj
</p>
<p class="discretionary-ligatures">
discretionary-ligatures<br />
if fi ff tf ft jf fj
</p>
<p class="no-discretionary-ligatures">
no-discretionary-ligatures<br />
if fi ff tf ft jf fj
</p>
<p class="historical-ligatures">
historical-ligatures<br />
if fi ff tf ft jf fj
</p>
<p class="no-historical-ligatures">
no-historical-ligatures<br />
if fi ff tf ft jf fj
</p>
<p class="contextual">
contextual<br />
if fi ff tf ft jf fj
</p>
<p class="no-contextual">
no-contextual<br />
if fi ff tf ft jf fj
</p>
<p class="contextual">
contextual<br />
if fi ff tf ft jf fj
</p>
CSS
p {
font-family: Lora, serif;
}
.normal {
font-variant-ligatures: normal;
}
.none {
font-variant-ligatures: none;
}
.common-ligatures {
font-variant-ligatures: common-ligatures;
}
.no-common-ligatures {
font-variant-ligatures: no-common-ligatures;
}
.discretionary-ligatures {
font-variant-ligatures: discretionary-ligatures;
}
.no-discretionary-ligatures {
font-variant-ligatures: no-discretionary-ligatures;
}
.historical-ligatures {
font-variant-ligatures: historical-ligatures;
}
.no-historical-ligatures {
font-variant-ligatures: no-historical-ligatures;
}
.contextual {
font-variant-ligatures: contextual;
}
.no-contextual {
font-variant-ligatures: no-contextual;
}
.contextual {
font-variant-ligatures: contextual;
}
ç»æ
Specifications
| è§è |
|---|
| CSS Fonts Module Level 4 > # font-variant-ligatures-prop > |