counter-set
CSS svojstvo, sa svojim imenom, postavlja početne vrijednosti za CSS pulta. Znate li kako poredani popisi počinju od 1, a zatim se odatle povećavaju? counter-set
Svojstvo omogućuje nam da skup koji počinje vrijednost na nešto drugo, recimo, -1. Ili 2. Ili 200! Osim što se primjenjuje na CSS brojače umjesto na poredane popise.
Dakle, recimo da imamo prilagođeni brojač za popis poglavlja knjiga, gdje je broj poglavlja dodan imenu poglavlja.
![](1835462/counter-set_css-tricks_2.png.webp)
![](1835462/counter-set_css-tricks_2.png.webp)
Započeli bismo definiranjem brojača sa counter-reset
svojstvom. Nazvat ćemo ga chapter
i definirati u roditeljskoj klasi spremnika za naša poglavlja koja se kreativno nazivaju .chapters
.
.chapters ( counter-reset: chapter; )
Dalje, chapter
brojač bismo dodijelili elementu koji koristi counter-increment
svojstvo. Budući da su ovo poglavlja u knjigama, primijenit ćemo ih na
elementi, pod pretpostavkom da bi naslov knjige bio
. Primijetite da ga zapravo dodjeljujemo :before
pseudo-elementu, jer nam omogućuje da svoj brojač dodamo stvarnom
element.
h2:before ( counter-increment: chapter; )
h2:before ( counter-increment: chapter; )
Super, posljednje što bismo trebali je reći brojaču što bi trebao prikazati. To se radi na content
imanju putem counter()
funkcije. Bacit ćemo malo boje i na pult, jer dizajn to zahtijeva.
h2:before ( color: red; content: "Chapter " counter(chapter) ": "; counter-increment: chapter; )
Hej, izgledamo dobro!
Ali čekaj! Ne bavim se zapravo činjenicom da započinjemo s 1. poglavljem. Mislim, "Naprijed" zapravo nije poglavlje. Ako ništa, to je poput poglavlja 0.
Tu counter-set
dolazi! Postavimo stvari da počnu s nule:
h2:first-of-type::before ( counter-set: chapter; )
Idemo tamo! To je već bolje. Samo postavljanjem vrijednosti svojstva na ime brojača, postavili smo popis poglavlja da započinje u poglavlju 0. Mogli bismo ga jednako lako postaviti da započinje u nečem drugom, poput poglavlja 100.
A ako preglednik ne podržava counter-set
? Ništa, stvarno. To će jednostavno biti zanemaren, a popis će početi u svom zadanom 1
.
Sintaksa
( ? )+ | none
Ovo je u osnovi fancy način da se kaže da svojstvo uzima naziv prilagođenog brojača ( ) i početnu vrijednost (
). Ili ga postaviti na
none
i brojčano će početi u zadanom polazište, 1
.
- Početna vrijednost:
none
- Odnosi se na: sve elemente (uključujući one koji nisu vizualni)
- Naslijeđeno: ne
- Vrsta animacije: prema izračunatoj vrsti vrijednosti
Vrijednosti
/* Set "awesome-counter" to 0 */ counter-set: awesome-counter; /* Set "awesome-counter" to -10 */ counter-set: awesome-counter -10; /* Set "awesome1" to 0, and "awesome2" to 2 */ counter-set: awesome1 awesome2 2; /* Wipe out any other settings that may have been declared elsewhere */ counter-set: none; /* Global values */ counter-set: inherit; counter-set: initial; counter-set: unset;
Imajte na umu da counter-set
će stvoriti novi brojač ako na njemu navedeno ime brojača već nije negdje drugdje definirano.
Podrška preglednika
IE | Rub | Firefox | Krom | Safari | Opera |
---|---|---|---|---|---|
Ne | Ne | 68+ | Ne | Ne | Ne |
Android Chrome | Android Firefox | Android preglednik | iOS Safari | Opera Mini |
---|---|---|---|---|
Ne | 79+ | Ne | Ne | Ne |
Daljnje čitanje
- Specifikacija modula CSS popisa razine 3 (radni nacrt)
- Prikaz trenutnog koraka s CSS brojačima
- Brojanje pomoću CSS brojača i rešetke
- Kako obrnuti CSS prilagođene brojače