counter-japanese-formal-extended.html (4171B)
1 <!DOCTYPE html> 2 <title>CSS Counter Styles: Longhand East Asian Counter Styles Extended Implementation (optional)</title> 3 <link rel="help" href="https://drafts.csswg.org/css-counter-styles/#extended-range-optional"> 4 <link rel="author" href="mailto:saku@email.sakupi01.com" title="saku"> 5 <link rel="match" href="counter-japanese-formal-extended-ref.html"> 6 <style> 7 div::after { 8 content: counter(n, japanese-formal); 9 } 10 </style> 11 12 <!-- Extended range implementation tests (algorithm step 2: split into 4-digit groups) --> 13 <!-- Test second group marker (萬) - ten-thousands group --> 14 <div style="counter-reset: n 10000;"></div> 15 <div style="counter-reset: n 20000;"></div> 16 <div style="counter-reset: n 50000;"></div> 17 <div style="counter-reset: n 99999;"></div> 18 19 <!-- Test complex patterns within ten-thousands group (algorithm step 4: digit markers) --> 20 <div style="counter-reset: n 12345;"></div> 21 <div style="counter-reset: n 10001;"></div> 22 <div style="counter-reset: n 10010;"></div> 23 <div style="counter-reset: n 10100;"></div> 24 <div style="counter-reset: n 11000;"></div> 25 26 <!-- Test third group marker (億) - hundred-millions group --> 27 <div style="counter-reset: n 100000000;"></div> 28 <div style="counter-reset: n 200000000;"></div> 29 <div style="counter-reset: n 500000000;"></div> 30 <div style="counter-reset: n 999999999;"></div> 31 32 <!-- Test complex patterns within hundred-millions group (algorithm step 6: zero dropping) --> 33 <div style="counter-reset: n 123456789;"></div> 34 <div style="counter-reset: n 100000001;"></div> 35 <div style="counter-reset: n 100010000;"></div> 36 <div style="counter-reset: n 100100000;"></div> 37 <div style="counter-reset: n 101000000;"></div> 38 <div style="counter-reset: n 110000000;"></div> 39 40 <!-- Test fourth group marker (兆) - trillions group --> 41 <div style="counter-reset: n 1000000000000;"></div> 42 <div style="counter-reset: n 2000000000000;"></div> 43 <div style="counter-reset: n 5000000000000;"></div> 44 <div style="counter-reset: n 9999999999999;"></div> 45 46 <!-- Test extended ranges (algorithm step 3: group markers up to 10^16) --> 47 <!-- Test 10^13 range (ten-trillions) --> 48 <div style="counter-reset: n 10000000000000;"></div> 49 <div style="counter-reset: n 50000000000000;"></div> 50 <div style="counter-reset: n 99999999999999;"></div> 51 52 <!-- Test 10^15 range (hundred-trillions) --> 53 <div style="counter-reset: n 100000000000000;"></div> 54 <div style="counter-reset: n 500000000000000;"></div> 55 <div style="counter-reset: n 999999999999999;"></div> 56 57 <!-- Test complex patterns in trillions group (step 5: drop ones, step 6: drop zeros) --> 58 <div style="counter-reset: n 1234567890123;"></div> 59 <div style="counter-reset: n 1000000000001;"></div> 60 <div style="counter-reset: n 1000000010000;"></div> 61 <div style="counter-reset: n 1000001000000;"></div> 62 <div style="counter-reset: n 1000100000000;"></div> 63 <div style="counter-reset: n 1010000000000;"></div> 64 <div style="counter-reset: n 1100000000000;"></div> 65 66 <!-- Test interaction between multiple groups --> 67 <div style="counter-reset: n 1001001001001;"></div> 68 <div style="counter-reset: n 1010101010101;"></div> 69 <div style="counter-reset: n 1000100010001;"></div> 70 <div style="counter-reset: n 5005005005005;"></div> 71 72 <!-- Test zero dropping behavior across different groups --> 73 <div style="counter-reset: n 1000000000000;"></div> 74 <div style="counter-reset: n 1000000000;"></div> 75 <div style="counter-reset: n 1000000;"></div> 76 <div style="counter-reset: n 1000;"></div> 77 <div style="counter-reset: n 10000000000000;"></div> 78 <div style="counter-reset: n 100000000000000;"></div> 79 80 <!-- Test boundary values at the edge of range (-10^16+1 to 10^16-1) --> 81 <div style="counter-reset: n 9999999999999999;"></div> 82 <div style="counter-reset: n 1000000000000000;"></div> 83 84 <!-- Test out-of-range values (should fallback to cjk-decimal) --> 85 <div style="counter-reset: n 10000000000000000;"></div> 86 87 <!-- Test negative numbers (algorithm step 8: negative sign handling) --> 88 <div style="counter-reset: n -10000;"></div> 89 <div style="counter-reset: n -100000000;"></div> 90 <div style="counter-reset: n -1000000000000;"></div> 91 <div style="counter-reset: n -9999999999999999;"></div> 92 93 <div style="counter-reset: n -1;"></div>