font-variant-valid.html (5377B)
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>CSS Fonts Module Level 4: parsing font-variant with valid values</title> 6 <link rel="help" href="https://drafts.csswg.org/css-fonts-4/#propdef-font-variant"> 7 <meta name="assert" content="font-variant supports the full grammar 'normal | none | [ <common-lig-values> || <discretionary-lig-values> || <historical-lig-values> || <contextual-alt-values> || [ small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps ] || [ stylistic(<feature-value-name>) || historical-forms || styleset(<feature-value-name>#) || character-variant(<feature-value-name>#) || swash(<feature-value-name>) || ornaments(<feature-value-name>) || annotation(<feature-value-name>) ] || <numeric-figure-values> || <numeric-spacing-values> || <numeric-fraction-values> || ordinal || slashed-zero || <east-asian-variant-values> || <east-asian-width-values> || ruby || [ sub | super ] ]'."> 8 <script src="/resources/testharness.js"></script> 9 <script src="/resources/testharnessreport.js"></script> 10 <script src="/css/support/parsing-testcommon.js"></script> 11 </head> 12 <body> 13 <script> 14 test_valid_value('font-variant', 'normal'); 15 test_valid_value('font-variant', 'none'); 16 17 // <common-lig-values> 18 test_valid_value('font-variant', 'common-ligatures'); 19 test_valid_value('font-variant', 'no-common-ligatures'); 20 21 // <discretionary-lig-values> 22 test_valid_value('font-variant', 'discretionary-ligatures'); 23 test_valid_value('font-variant', 'no-discretionary-ligatures'); 24 25 // <historical-lig-values> 26 test_valid_value('font-variant', 'historical-ligatures'); 27 test_valid_value('font-variant', 'no-historical-ligatures'); 28 29 // <contextual-alt-values> 30 test_valid_value('font-variant', 'contextual'); 31 test_valid_value('font-variant', 'no-contextual'); 32 33 // [ small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps ] 34 test_valid_value('font-variant', 'small-caps'); 35 test_valid_value('font-variant', 'all-small-caps'); 36 test_valid_value('font-variant', 'petite-caps'); 37 test_valid_value('font-variant', 'all-petite-caps'); 38 test_valid_value('font-variant', 'unicase'); 39 test_valid_value('font-variant', 'titling-caps'); 40 41 // [ stylistic(<feature-value-name>) || historical-forms || styleset(<feature-value-name>#) || character-variant(<feature-value-name>#) || swash(<feature-value-name>) || ornaments(<feature-value-name>) || annotation(<feature-value-name>) ] 42 test_valid_value('font-variant', 'stylistic(flowing)'); 43 test_valid_value('font-variant', 'historical-forms'); 44 test_valid_value('font-variant', 'styleset(flowing)'); 45 test_valid_value('font-variant', 'character-variant(flowing)'); 46 test_valid_value('font-variant', 'swash(flowing)'); 47 test_valid_value('font-variant', 'ornaments(flowing)'); 48 test_valid_value('font-variant', 'annotation(flowing)'); 49 50 test_valid_value('font-variant', 'stylistic(flowing) historical-forms styleset(flowing) character-variant(flowing) swash(flowing) ornaments(flowing) annotation(flowing)'); 51 52 test_valid_value('font-variant', 'annotation(flowing) ornaments(flowing) swash(flowing) character-variant(flowing) styleset(flowing) historical-forms stylistic(flowing)', 'stylistic(flowing) historical-forms styleset(flowing) character-variant(flowing) swash(flowing) ornaments(flowing) annotation(flowing)'); 53 54 // <numeric-figure-values> 55 test_valid_value('font-variant', 'lining-nums'); 56 test_valid_value('font-variant', 'oldstyle-nums'); 57 58 // <numeric-spacing-values> 59 test_valid_value('font-variant', 'proportional-nums'); 60 test_valid_value('font-variant', 'tabular-nums'); 61 62 // <numeric-fraction-values> 63 test_valid_value('font-variant', 'diagonal-fractions'); 64 test_valid_value('font-variant', 'stacked-fractions'); 65 66 // ordinal 67 test_valid_value('font-variant', 'ordinal'); 68 69 // slashed-zero 70 test_valid_value('font-variant', 'slashed-zero'); 71 72 // <east-asian-variant-values> 73 test_valid_value('font-variant', 'jis78'); 74 test_valid_value('font-variant', 'jis83'); 75 test_valid_value('font-variant', 'jis90'); 76 test_valid_value('font-variant', 'jis04'); 77 test_valid_value('font-variant', 'simplified'); 78 test_valid_value('font-variant', 'traditional'); 79 80 // <east-asian-width-values> 81 test_valid_value('font-variant', 'full-width'); 82 test_valid_value('font-variant', 'proportional-width'); 83 84 // ruby 85 test_valid_value('font-variant', 'ruby'); 86 87 // [ sub | super ] 88 test_valid_value('font-variant', 'sub'); 89 test_valid_value('font-variant', 'super'); 90 91 92 test_valid_value('font-variant', 93 'common-ligatures discretionary-ligatures historical-ligatures contextual' + 94 ' small-caps stylistic(flowing) lining-nums proportional-nums diagonal-fractions' + 95 ' ordinal slashed-zero jis78 full-width ruby sub'); 96 97 test_valid_value('font-variant', 98 'super proportional-width jis83 stacked-fractions tabular-nums oldstyle-nums historical-forms all-small-caps no-contextual no-historical-ligatures no-discretionary-ligatures no-common-ligatures', 99 [ 100 'no-common-ligatures no-discretionary-ligatures no-historical-ligatures no-contextual all-small-caps historical-forms oldstyle-nums tabular-nums stacked-fractions jis83 proportional-width super', 101 'no-contextual no-historical-ligatures no-discretionary-ligatures no-common-ligatures all-small-caps historical-forms stacked-fractions tabular-nums oldstyle-nums jis83 proportional-width super' 102 ] 103 ); 104 </script> 105 </body> 106 </html>