このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

additive-symbols

Baseline 2023
Newly available

Since ⁨September 2023⁩, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

additive-symbols@counter-style アットルールの記述子で、 @counter-stylesystem 記述子の値が additive に設定されている場合に、カウンター記号を指定するために使用されます。加算システムは、ローマ数字などの符号値記数法を構築するために使用されます。

構文

css
/* 単一のタプル */ additive-symbols: 3 "*"; /* カンマで区切られたタプルのリスト */ additive-symbols: 3 "0", 2 "\2E\20", 1 url(symbol.png); /* 2 進カウンター */ additive-symbols: 2 "1", 1 "0"; /* エトルリア(古代イタリアの文明)のカウンター */ additive-symbols: 100 "𐌟", 50 "𐌣", 10 "𐌢", 5 "𐌡", 1 "𐌠"; 

記述子は、カンマで区切られた加算タプルのリストを受け入れます。それぞれのタプルは、空間で区切られた次の 2 つの値で構成されます。

<integer>

タプルの関連付けられた記号値の整数の加重を指定する非負の整数値。

<symbol>

タプルの関連付けられた <integer> 加重値で定義される加重値に使用するカウンター記号を指定します。

メモ: 加算タプルは、加重の降順で指定する必要があります。そうしないと、記述子の宣言は無効となり、無視されます。

解説

additive-symbols 記述子は、カンマで区切られた加算タプルののリストを定義します。それぞれの加算タプルには、空間で区切られた非負の整数とカウンター記号が含まれています。有効であるためには、リストは整数の降順で並んでいる必要があります。整数と記号は連結されて、カウンター記号を形成します。

system 記述子が cyclic, numeric, alphabetic, symbolic, fixed の場合は、 symbols() 記述子を additive-symbols の代わりに使用してください。

公式定義

関連するアット規則@counter-style
初期値n/a (required)
計算値指定通り

形式文法

additive-symbols = 
[ <integer [0,∞]> && <symbol> ]#

<symbol> =
<string> |
<image> |
<custom-ident>

<image> =
<url> |
<image()> |
<image-set()> |
<cross-fade()> |
<element()> |
<gradient>

<image()> =
image( <image-tags>? [ <image-src>? , <color>? ]! )

<image-set()> =
image-set( <image-set-option># )

<cross-fade()> =
cross-fade( <cf-image># )

<element()> =
element( <id-selector> )

<image-tags> =
ltr |
rtl

<image-src> =
<url> |
<string>

<image-set-option> =
[ <image> | <string> ] [ <resolution> || type( <string> ) ]?

<cf-image> =
[ <image> | <color> ] &&
<percentage [0,100]>?

<id-selector> =
<hash-token>

加算的シンボルの指定

HTML

この例では、 system: additiveadditive-symbols 記述子の値が、数値をローマ数字で表す方法を指定しています。リスト内のそれぞれの <li> 要素の値は、 @counter-style で定義されたルールに従ってローマ数字に変換されます。

html
<ul> <li>One</li> <li>Two</li> <li>Three</li> <li>Four</li> <li>Five</li> <li value="109">109</li> <li>110</li> </ul> 

CSS

css
@counter-style uppercase-roman { system: additive; additive-symbols: 1000 M, 900 CM, 500 D, 400 CD, 100 C, 90 XC, 50 L, 40 XL, 10 X, 9 IX, 5 V, 4 IV, 1 I; } ul { list-style: uppercase-roman; padding-left: 5em; } 

結果

109 に対応するリストアイテムの場合、数字 C100 を表し、IX9 を表します。これにより、リストアイテム 109 に対して CIX カウンターが生成されます。次のリストアイテムには、自動的に値 110 が取得されます。ローマ数字 CX は、100 を表す C10 を表す X から派生しています。

仕様書

Specification
CSS Counter Styles Level 3
# counter-style-symbols

ブラウザーの互換性

関連情報