Π Π°Π±ΠΎΡΠ°Ρ Π³ΡΡΠΏΠΏΠ° CSS Π²ΡΠΏΡΡΡΠΈΠ»Π° Π½ΠΎΠ²ΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ Values and Units Level 5: ΠΌΠ΅Π½ΡΡΠ΅ ΠΊΠΎΠ΄Π°, Π±ΠΎΠ»ΡΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ β Π·Π²ΡΡΠΈΡ ΠΊΠ°ΠΊ ΠΌΠ΅ΡΡΠ°? ΠΠ°Π²Π°ΠΉΡΠ΅ Π²ΠΌΠ΅ΡΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ, ΠΊΠ°ΠΊ ΡΡΠΈ Π½ΠΎΠ²ΡΠ΅ΡΡΠ²Π° ΠΈΠ·ΠΌΠ΅Π½ΡΡ Π½Π°ΡΡ ΡΠ°Π±ΠΎΡΡ ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ Π²Π΅Π± ΠΊΡΠ°ΡΠΈΠ²Π΅Π΅.
ΠΡΠΈΠ²Π΅Ρ, Π΄ΡΡΠ·ΡΡ! Π― ΠΠΈΡΠΈΠ»Π» ΠΡΠ»ΡΠ½ΠΈΠΊΠΎΠ², frontend-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Usetech. Π Π°Π±ΠΎΡΠ°Ρ Π³ΡΡΠΏΠΏΠ° CSS Π²ΡΠΏΡΡΡΠΈΠ»Π° ΠΏΡΠ±Π»ΠΈΡΠ½ΡΡ Π²Π΅ΡΡΠΈΡ ΠΌΠΎΠ΄ΡΠ»Ρ Values and Units Module Level 5, Π²ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ CSS Π΄Π»Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΈ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ΄Π°. ΠΠΎΠ²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΡΠΈΠ»ΡΠ½ΡΠ΅ ΠΈ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π²Π΅Π±-ΡΠ°ΠΉΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΈ ΠΊΡΠ΅Π°ΡΠΈΠ²Π½ΠΎ. ΠΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ, ΠΏΡΠΎΠΉΠ΄Π΅ΠΌ ΡΠ½Π°ΡΠ°Π»Π° ΡΠ΅ΠΎΡΠΈΡ, Π²ΡΠΏΠΎΠΌΠ½ΠΈΠΌ ΠΈ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ ΠΊ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅
Π’Π΅ΠΌΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌ:
- attr()
- toggle()
- sibling-count(), sibling-index()
- first-valid()
- -*mix, -*progress
- calc-size()
- random(), random-item()
attr()
ΠΠ°, ΡΡΠ½ΠΊΡΠΈΡ attr Π² CSS Π±ΡΠ»Π° Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΠΎΠ²Π°Π½Π°! Π’Π΅ΠΏΠ΅ΡΡ Π°ΡΡΠΈΠ±ΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° Ρ ΠΏΡΠ΅ΡΠΈΠΊΡΠΎΠΌ data-, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΠΈΡ ΡΠΈΠΏΠ°, ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ Π² Π»ΡΠ±ΠΎΠΌ ΡΠ²ΠΎΠΉΡΡΠ²Π΅ CSS. ΠΡΠΎ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ Π½ΠΎΠ²ΡΠ΅ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΡ Π΄Π»Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡΠΈΠ»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ Π³ΠΈΠ±ΠΊΠΎΡΡΡ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ. Π£ΠΊΠ°Π·Π°Π² ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π·Π°Π΄Π°Π² Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ.
ΠΡΠΈΠΌΠ΅Ρ
toggle()
ΠΠ΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠ½ΠΊΡΠΈΡ toggle Π² CSS ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ΄ΠΎΠ±Π½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΈΠΊΠ»ΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ»ΠΈ ΠΈΡ ΠΏΠΎΡΠΎΠΌΠΊΠΎΠ², ΡΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΠΊΠΎΠ΄ ΠΈ Π΄Π΅Π»Π°Π΅Ρ ΡΡΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΌΠΈ. ΠΠΎΠ·Π²ΠΎΠ»ΡΡΠ΅ ΠΌΠ½Π΅ Π΄Π°ΡΡ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ: ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π·Π°Π΄Π°ΡΡ ΡΡΠΈΠ»Ρ "disc" Π΄Π»Ρ Π½Π΅ΡΠ΅ΡΠ½ΡΡ ΡΡΠΎΠ²Π½Π΅ΠΉ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΠΈ ΠΈ "square" Π΄Π»Ρ ΡΠ΅ΡΠ½ΡΡ ΡΡΠΎΠ²Π½Π΅ΠΉ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΠΈ Π² ΡΠΏΠΈΡΠΊΠ΅ ul > li > ul > li. ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ²Π½ΠΎ Π·Π°Π΄Π°Π²Π°ΡΡ ΡΡΠΈΠ»ΠΈ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ { list-style-type: disc, square; } ΠΈ ΡΡΠ½ΠΊΡΠΈΡ toggle Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡ ΡΡΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΈΠΊΠ»ΠΈΡΠ΅ΡΠΊΠΈ Π΄Π»Ρ ΠΏΠΎΡΠΎΠΌΠΊΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΠΈΠ·Π±Π΅Π³Π°ΡΡ Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π° ΠΈ Π΄Π΅Π»Π°Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΡΠΈΠ»ΡΠΌΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ»Π΅Π³Π°Π½ΡΠ½ΡΠΌ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌ.
ΠΡΠΈΠΌΠ΅Ρ
Π‘ΡΠ°ΡΡΡ ΠΏΠΎ ΡΠ΅ΠΌΠ΅
π€Ή 25 CSS-ΡΡΡΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π½Π°ΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ
sibling-count(), sibling-index()
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π½ΠΎΠ²ΡΠΌ ΡΡΠ½ΠΊΡΠΈΡΠΌ Π² CSS, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΎΠΏΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈ ΠΈΡ ΠΏΠΎΡΡΠ΄ΠΊΠΎΠΌ, ΡΠ΅ΠΏΠ΅ΡΡ Π½Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΠΊΠ°ΡΡΠΎΠΌΠ½ΡΠ΅ ΡΡΠΈΠ»ΠΈ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΈ ΠΏΠΈΡΠ°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΠ΅Π»Π΅ΠΊΡΠΎΡΡ Ρ nth-child. ΠΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ ΡΡΠΈΠ»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈ Π΄Π΅Π»Π°Π΅Ρ ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΡΠΌ ΠΈ ΠΏΠΎΠ½ΡΡΠ½ΡΠΌ. Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ Π·Π°Π΄Π°Π²Π°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΡΠΈΠ»ΠΈ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΏΠΎΡΡΠ΄ΠΊΠ° ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ΅ Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠ²Π½ΠΎΠ³ΠΎ ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°.
- sibling-count β Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΠ΄ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²
- sibling-index β Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠΎΠ·ΠΈΡΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° Π² ΡΠΏΠΈΡΠΊΠ΅
ΠΡΠΈΠΌΠ΅Ρ
first-valid()
ΠΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΠ΅ΡΠ²ΠΎΠ΅ Π²Π°Π»ΠΈΠ΄Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΏΡΠΎΡΡΠΈΡΡ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ CSS. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ½ΠΈ ΡΡΠΈΡΠ°ΡΡΡΡ Π²ΡΠ΅Π³Π΄Π° Π²Π°Π»ΠΈΠ΄Π½ΡΠΌΠΈ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΡΡΠΎ Π½Π΅ ΡΠ°ΠΊ, ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°Π½Π°. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π° first-valid ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π²ΡΠ΅ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² ΠΎΠ΄Π½ΠΎ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ Π±ΠΎΠ»Π΅Π΅ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ ΠΈ ΡΠ΄ΠΎΠ±Π½ΠΎΠΉ. Π’Π΅ΠΏΠ΅ΡΡ, Π² ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π²Π°Π»ΠΈΠ΄Π½ΡΠΌ, Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ, ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡΠ΄Π΅Ρ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ Π²Π°Π»ΠΈΠ΄Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
ΠΡΠΈΠΌΠ΅Ρ
*-mix()
Π‘ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ mix() Π² CSS, Π±ΡΠ»ΠΎ ΡΠΏΡΠΎΡΠ΅Π½ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ *-mix(). Π’Π΅ΠΏΠ΅ΡΡ, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΌΠ΅ΡΠ°ΡΡ ΡΠ²Π΅ΡΠ°, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ color(green, 50%, blue), Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΌΠ΅ΡΠΈΠ²Π°ΡΡ ΠΈ Π΄Π»ΠΈΠ½Ρ. ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΠ° ΠΊ ΡΡΠ½ΠΊΡΠΈΡΠΌ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ°Π±ΠΎΡΡ Ρ CSS Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΌ ΠΈ ΡΠ΄ΠΎΠ±Π½ΡΠΌ. Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΡΠΎΠ²ΠΌΠ΅ΡΠ°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΆΠ΅Π»Π°Π΅ΠΌΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ, Π½Π΅ ΡΡΠ»ΠΎΠΆΠ½ΡΡ ΠΊΠΎΠ΄ ΠΈ ΡΠ»ΡΡΡΠ°Ρ Π΅Π³ΠΎ ΡΠΈΡΠ°Π΅ΠΌΠΎΡΡΡ.
- calc-mix()
- color-mix()
- cross-fade()
- palette-mix()
ΠΡΠΈΠΌΠ΅Ρ
Π‘ΡΠ°ΡΡΡ ΠΏΠΎ ΡΠ΅ΠΌΠ΅
π¨ 11 ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ CSS
*-progress()
ΠΠ°Π½Π½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠΏΠΎΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ΅ΡΡΠ° Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΎΡ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌΡ. Π ΠΈΡΠΎΠ³Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠΈΡΠ»ΠΎ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ 0 Π΄ΠΎ 1, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΡ . ΠΡΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ ΡΠΎΡΠ΅ΡΠ°Π΅ΡΡΡ Ρ ΡΠ°Π½Π΅Π΅ ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠΌ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎΠΌ ΡΡΠ½ΠΊΡΠΈΠΉ *-mix(), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΡΠΊΠΎ ΠΈ Π³ΠΈΠ±ΠΊΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠΌΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΡΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ.
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠΏΠΎΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ΅ΡΡΠ° Π² ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠΈ Ρ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ *-mix():
Π’ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ΄Π΅Π»ΠΈΡΡ ΡΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ:
- progress()
- media-progress()
- content-progress()
ΠΡΠΈΠΌΠ΅Ρ
calc-size()
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ, ΡΠ°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ auto, max-content, fit-content. ΠΠ½Π° ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΡΠ΄ΠΎΠ±Π½Π° ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠ² ΠΈ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ, Π³Π΄Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΡΠ½ΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΠΌΠΈ.
Π‘Π²ΠΎΠΉΡΡΠ²ΠΎ size ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π±ΠΎΠ»ΡΡΡΡ Π³ΠΈΠ±ΠΊΠΎΡΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ ΠΈ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ Π½Π°Π΄Π΅ΠΆΠ½ΠΎ ΠΎΠΏΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ.
Π₯ΠΎΡΡ ΡΡΠ½ΠΊΡΠΈΡ calc() ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ, ΠΎΠ½Π° Π½Π΅ ΡΠΏΠΎΡΠΎΠ±Π½Π° ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ fit-content ΠΈΠ»ΠΈ auto. Π ΡΠ°ΠΊΠΈΡ ΡΠ»ΡΡΠ°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ size ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΠΌΠΈ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ ΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠ².
ΠΡΠΈΠΌΠ΅Ρ
π¨βπ»π¨ ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΡΠΎΠ½ΡΠ΅Π½Π΄Π΅ΡΠ°
ΠΠΎΠ»ΡΡΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠ² Π²Ρ Π½Π°ΠΉΠ΄Π΅ΡΠ΅ Π½Π° Π½Π°ΡΠ΅ΠΌ ΡΠ΅Π»Π΅Π³ΡΠ°ΠΌ-ΠΊΠ°Π½Π°Π»Π΅ Β«ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΡΠΎΠ½ΡΠ΅Π½Π΄Π΅ΡΠ°Β»
random(), random-item()
Π CSS ΡΠ°Π½Π΅Π΅ Π½Π΅ Ρ Π²Π°ΡΠ°Π»ΠΎ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ, Π½ΠΎ Π² ΡΡΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅ ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ Π΄Π²Π΅ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ: random-item(), Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠ°Ρ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°, ΠΈ random(), Π²ΡΠ΄Π°ΡΡΠ°Ρ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅.
ΠΡΠΎΡ ΠΌΠΎΡΠ½ΡΠΉ ΠΈ ΠΏΡΠΎΡΡΠΎΠΉ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ Π»Π΅Π³ΠΊΠΎ Π²Π½Π΅Π΄ΡΡΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² CSS Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ΅Π»Π΅ΠΊΡΠΎΡΠΎΠ² ΠΈΠ»ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°ΡΡΠΈΡΡΠ΅Ρ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΡ ΡΡΠΈΠ»ΠΈΠ·Π°ΡΠΈΠΈ, Π΄ΠΎΠ±Π°Π²Π»ΡΡ ΡΠ»Π΅Π³Π°Π½ΡΠ½ΡΠ΅ ΠΈ ΡΠ²Π»Π΅ΠΊΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ Π΄Π΅ΡΠ°Π»ΠΈ ΠΊ Π΄ΠΈΠ·Π°ΠΉΠ½Ρ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡ. ΠΡΠ΄Π΅Ρ Π·Π΄ΠΎΡΠΎΠ²ΠΎ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ Ρ ΡΡΠΈΠΌΠΈ Π½ΠΎΠ²ΡΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΈ Π·Π°Ρ Π²Π°ΡΡΠ²Π°ΡΡΠΈΠ΅ Π΄ΠΈΠ·Π°ΠΉΠ½Ρ!
ΠΡΠΈΠΌΠ΅Ρ
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΡΠΈ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π·Π²ΡΡΠ°Ρ Π·Π°Ρ Π²Π°ΡΡΠ²Π°ΡΡΠ΅ ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠ±Π΅ΡΠ°ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠ΅.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π»ΡΠ±ΠΎΠ³ΠΎ Π°ΡΡΠΈΠ±ΡΡΠ° Ρ Π»ΡΠ±ΡΠΌ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎΠΌ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ Π½ΠΎΠ²ΡΠ΅ ΠΏΠ΅ΡΡΠΏΠ΅ΠΊΡΠΈΠ²Ρ ΠΈ ΠΏΡΡΡ ΠΊ Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΎΠΌΡ ΠΈ ΠΈΠ½Π½ΠΎΠ²Π°ΡΠΈΠΎΠ½Π½ΠΎΠΌΡ Π΄ΠΈΠ·Π°ΠΉΠ½Ρ. ΠΡΠΎ Π΄Π°Π²Π½ΠΎ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅, Π½Π°ΠΊΠΎΠ½Π΅Ρ, ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ°Π΅ΡΡΡ ΠΊ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ. ΠΠ°Π΄Π΅ΡΡΡ, ΡΡΠΎ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² CSS Π±ΡΠ΄ΡΡ ΡΠ΅ΠΌ ΡΠΎΠ»ΡΠΊΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΠΌ Π½ΡΠΆΠ΅Π½, ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Ρ Π»Π΅Π³ΠΊΠΎΡΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΊΡΠ΅Π°ΡΠΈΠ²Π½ΡΠ΅ Π²Π΅Π±-ΡΠ°ΠΉΡΡ.
ΠΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ
W3C β https://www.w3.org/TR/css-values-5/
ΠΠΎΠΊΠ° β https://doka.guide/css/
***
ΠΡΠ»ΠΈ Π±Ρ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΅ΡΠ΅ ΠΎΠ΄Π½Ρ ΡΡΠ½ΠΊΡΠΈΡ Π² CSS, ΡΡΠΎ Π±Ρ ΡΡΠΎ Π±ΡΠ»ΠΎ ΠΈ ΠΊΠ°ΠΊ Π±Ρ ΠΎΠ½Π° ΡΠ°Π±ΠΎΡΠ°Π»Π°?