Π‘ΠΏΡ€Π°ΠΉΡ‚Ρ‹ css ΠΏΡ€ΠΈΠΌΠ΅Ρ€: созданиС, ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ β€” ΡƒΡ‡Π΅Π±Π½ΠΈΠΊ CSS


20.06.2023 Facebook Twitter LinkedIn Google+ Π Π°Π·Π½ΠΎΠ΅


Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ CSS спрайты. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ | Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ вСрстки

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½ ΡΡ‚Π°Ρ‚ΡŒΠΈ.

  1. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ CSS спрайты?
  2. ВСрминология
  3. ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ использования спрайтов
  4. ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

Π‘ΠΏΡ€Π°ΠΉΡ‚Ρ‹ β€” это довольно интСрСсная ΠΈ простая тСхнология. БСйчас я расскаТу ΠΎ Π½Π΅ΠΉ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ CSS спрайты?

Если ΠΊΡ€Π°Ρ‚ΠΊΠΎ, Ρ‚ΠΎ CSS спрайты это нСсколько ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΊ Π² ΠΎΠ΄Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅. Π€Π°ΠΉΠ» ΠΎΠ΄ΠΈΠ½, Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π½Π΅Π³ΠΎ нСсколько. ΠŸΡ€ΠΈ этом для посСтитСля это ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π½Π΅Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎ. Π’ΠΎΠΌΡƒ ΠΊΡ‚ΠΎ просматриваСт сайт каТСтся, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π²ΠΈΠ΄ΠΈΡ‚ нСсколько ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΊ.

Π—Π°Ρ‡Π΅ΠΌ это Π½ΡƒΠΆΠ½ΠΎ? Π‘ΠΏΡ€Π°ΠΉΡ‚Ρ‹ ΡΠ½ΠΈΠΆΠ°ΡŽΡ‚ количСство запросов ΠΊ страницС ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°ΡŽΡ‚ ΠΎΠ±Ρ‰ΠΈΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. Π’ ΠΈΡ‚ΠΎΠ³Π΅ ΠΏΠΎΡΠ΅Ρ‚ΠΈΡ‚Π΅Π»ΡŒ быстрСС ΡƒΠ²ΠΈΠ΄ΠΈΡ‚ сайт.

Как это дСлаСтся? ΠžΠ±Ρ‹Ρ‡Π½Π°Ρ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° увСличиваСтся Π² ΡˆΠΈΡ€ΠΈΠ½Ρƒ ΠΈ высоту, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ просто Π½Π° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ рядом нСсколько ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. ΠŸΠΎΡ‚ΠΎΠΌ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ· этого Π½Π°Π±ΠΎΡ€Π° подставляСтся Π² Π½ΡƒΠΆΠ½Ρ‹ΠΉ Π±Π»ΠΎΠΊ с Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΡˆΠΈΡ€ΠΈΠ½ΠΎΠΉ ΠΈΠ»ΠΈ высотой Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ изобраТСния Π½Π΅ Π±Ρ‹Π»ΠΎ Π²ΠΈΠ΄Π½ΠΎ. Π’Π΅ΡΡŒ Π½Π°Π±ΠΎΡ€ обрСзаСтся ΠΈ остаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ°. Один спрайт. ВсС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ°.

Π§Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»ΠΎ понятнСС ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ аналогию. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ Ρ‡Ρ‚ΠΎ Π²Ρ‹ смотритС Π² Π·Π°ΠΌΠΎΡ‡Π½ΡƒΡŽ скваТину. Π’Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°ΠΊΠΎΠΉ Ρ‚ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ кусок помСщСняи ΠΏΠΎ Ρ‚Ρƒ сторону Π΄Π²Π΅Ρ€ΠΈ. Если Π²Ρ‹ Ρ‡ΡƒΡ‚ΡŒ ΡΠ΄Π²ΠΈΠ½Π΅Ρ‚Π΅ΡΡŒ Π² сторону ΠΈ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π² скаТину ΠΏΠΎΠ΄ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΡƒΠ³Π»ΠΎΠΌ, Ρ‚ΠΎ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΊΠ°ΠΊΠΎΠΉ Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ кусок Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ самого помСщСния.

ВСрминология

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΏΡƒΡ‚Π°Ρ‚ΡŒΡΡ Π΄Π°Π²Π°ΠΉΡ‚Π΅ сразу ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡ΠΈΠΌ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹:
Π‘ΠΏΡ€Π°ΠΉΡ‚ β€” это ΠΎΠ΄Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΈΠ· Ρ„Π°ΠΉΠ»Π° с нСсколькими изобраТСниями.
Набор спрайтов β€” это сам Ρ„Π°ΠΉΠ» с нСсколькими изобраТСниями.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ использования спрайтов

Когда стоит ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ спрайты? ΠžΡ‚Π²Π΅Ρ‚ Π² ΠΎΠ±Ρ‰Π΅ΠΌ Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½ β€” спрайты Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ссли Ρƒ вас Π½Π° страницС ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π»ΠΊΠΈΡ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. НСваТно ΠΊΠ°ΠΊΠΈΠ΅ это изобраТСния. Если Ρƒ вас ΠΌΠ½ΠΎΠ³ΠΎ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚ΠΎΠ² с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ располоТСниСм, ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠ½ΠΎΠΏΠΎΠΊ, ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠΊΠΎΠ½ΠΎΠΊ ΠΈ.Π΄. Если Π½Π° ΠΊΠ°ΠΊΠΎΠΉ Ρ‚ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ страницС ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π»ΠΊΠΈΡ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ Π½Π°Π΄ использованиСм спрайтов.

На страницС ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Π±Ρ‹Π²Π°ΡŽΡ‚ Ρ‚Ρ€ΠΈ Π²ΠΈΠ΄Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΊ β€” jpg, png ΠΈ gif. Π£ всСх этих Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² Π΅ΡΡ‚ΡŒ Π΄Π²Π° Ρ€Π΅ΠΆΠΈΠΌΠ° Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ β€” это ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ ΠΈ Ρ€Π΅ΠΆΠΈΠΌ постСпСнной Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ.

Π€ΠΎΡ€ΠΌΠ°Ρ‚ jpg ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ (Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ) ΠΈ прогрСссивным (progressive). Π’ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ ΠΏΠΎ строкам ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ сразу Π² Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΌ качСствС. Π’ прогрСссивном Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° jpg загруТаСтся сразу Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ, Π½ΠΎ Π² ΠΏΠ»ΠΎΡ…ΠΎΠΌ качСствС ΠΈ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ качСство увСличиваСтся.

Π’Π°ΠΊΠΎΠ΅ ΠΆΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΅ΡΡ‚ΡŒ Ρƒ gif ΠΈ png. GIF ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ ΠΈ чСрСзстрочным (interlaced). PNG ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ ΠΈ чСрСзстрочным (interlaced). ПовСдСниС чСрСзстрочных gif ΠΈ png Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ повСдСнию прогрСссивного jpg. Π’Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π°.

Π˜Ρ‚ΠΎΠ³ΠΎ. Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ Π½Π° страницС сразу, Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ с Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ. ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ спрайтам это Π²Π°ΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ. Π‘ΠΏΡ€Π°ΠΉΡ‚Ρ‹ ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ чСрСзстрочными ΠΈΠ»ΠΈ прогрСссивными. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ быстрСС ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ ΠΏΡƒΡΡ‚ΡŒ ΠΈ Π² ΠΏΠ»ΠΎΡ…ΠΎΠΌ качСствС.

Но! Если Ρ„ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» со всСми спрайтами Π±ΡƒΠ΄Π΅Ρ‚ слишком большой, Ρ‚ΠΎ нСсмотря Π½Π° всю ΠΏΡ€ΠΎΠ³Ρ€Π΅ΡΡΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΈ Ρ‡Π΅Ρ€Π΅Π·ΡΡ‚Ρ€ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎΡΠ΅Ρ‚ΠΈΡ‚Π΅Π»ΡŽ придСтся ΠΆΠ΄Π°Ρ‚ΡŒ Π΄Π°ΠΆΠ΅ Ρ‡Π°ΡΡ‚ΠΈΡ‡Π½ΡƒΡŽ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Ρ„Π°ΠΉΠ»Π°. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ я Π½Π΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ большиС Π½Π°Π±ΠΎΡ€Ρ‹ спрайтов. Если Ρ„Π°ΠΉΠ» большой Ρ‚ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ тСряСтся вСсь смысл спрайтов β€” ΡƒΡΠΊΠΎΡ€ΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ сайта. Π‘ большими Π½Π°Π±ΠΎΡ€Π°ΠΌΠΈ спрайтов ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ придСтся ΠΆΠ΄Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΆΠ΅, Ссли Π½Π΅ большС, ΠΊΠ°ΠΊ ΠΈ ΠΏΡ€ΠΈ использовании ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… Ρ€Π°Π·Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ.

Π‘ΠΎΠ»ΡŒΡˆΠΈΠΌΠΈ ΠΌΠ½Π΅ каТутся Ρ„Π°ΠΉΠ»Ρ‹ ΡΠ²Ρ‹ΡˆΠ΅ 30 ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ‚. Π­Ρ‚ΠΎ ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π£ вас ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅ Ρ‚ΠΎ свои прСдставлСния ΠΎ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π΅ Ρ„Π°ΠΉΠ»Π°. Π€Π°ΠΉΠ» Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 30 ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒΡΡ ΠΎΠΊΠΎΠ»ΠΎ 7 сСкунд ΠΏΡ€ΠΈ скорости ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° 56,6 ΠΊΠ±ΠΈΡ‚/с.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования спрайтов

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ примСнСния спрайтов. Π― ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ Π΄Π²Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° спрайтов β€” спрайты с малСнькими ΠΈΠΊΠΎΠ½ΠΊΠ°ΠΌΠΈ ΠΈ спрайты с Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ. Π Π°Π±ΠΎΡ‡ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΎΠ±ΠΎΠΈΡ… спрайтов ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ здСсь:
https://verstaem.com/examples/sprites/index.html

Π‘ΠΏΡ€Π°ΠΉΡ‚Ρ‹ с ΠΈΠΊΠΎΠ½ΠΊΠ°ΠΌΠΈ

Π’ ΠΎΠ΄Π½ΠΎΠΌ спрайтС Ρƒ мСня Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠΊΠΎΠ½ΠΊΠΈ для:

  1. Бписка β€” ΠΎΠ΄Π½Π° ΠΈΠΊΠΎΠ½ΠΊΠ°
  2. Бсылок β€” Ρ‚Ρ€ΠΈ ΠΈΠΊΠΎΠ½ΠΊΠΈ
  3. Π€ΠΎΡ€ΠΌΡ‹ поиска β€” ΠΎΠ΄Π½Π° ΠΈΠΊΠΎΠ½ΠΊΠ°

Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ спрайтов Ρƒ мСня Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΏΡΡ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΊ. ВсС ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ Ρƒ мСня Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° β€” 16 Π½Π° 16 пиксСлСй. Π‘ΠΏΡ€Π°ΠΉΡ‚Π°ΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ изобраТСния с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΠΌΠΈ, Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ всСх ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΊ совпдало. ΠŸΡ€ΠΈ Ρ€Π°Π·Π½ΠΎΠΌ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΊ Ρ‡ΡƒΡ‚ΡŒ услоТняСтся объСдинСни этих ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΊ Π² ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ».

Π’ ΠΈΡ‚ΠΎΠ³Π΅ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ:

Π― нашСл ΠΏΡΡ‚ΡŒ ΠΈΠΊΠΎΠ½ΠΎΠΊ. ПослС Ρ‡Π΅Π³ΠΎ просто объСдинил ΠΈΡ… всС Π² ΠΎΠ΄Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅. Π’ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠΉ Π²ΠΎΡ‚ Ρ„Π°ΠΉΠ» Ρƒ мСня получился Π² ΠΈΡ‚ΠΎΠ³Π΅:

ΠžΠ±Ρ€Π°Ρ‰Π°ΡŽ вашС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΈΠΊΠΎΠ½ΠΊΠΈ располоТСны Π½Π΅ Π²ΠΏΠ»ΠΎΡ‚Π½ΡƒΡŽ, ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ Π΅ΡΡ‚ΡŒ нСбольшиС отступы. Как ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒ эти отступы? МоТно ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ всС ΠΏΠΎ пиксСлям, Π½ΠΎ наш случай довольно простой, поэтому здСсь Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒ эти отступы Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΡƒΡ‚Π΅ΠΌ. Π‘Π½Π°Ρ‡Π°Π»Π° объСдиняСм изобраТСния просто Π½Π° Π³Π»Π°Π·, ΠΏΠΎΡ‚ΠΎΠΌ Π±Π΅Ρ€Π΅ΠΌ ΡΠ°ΠΌΡƒΡŽ Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ, ставим Π΅Π΅ Π½Π° Π½ΡƒΠΆΠ½ΠΎΠ΅ мСсто. Если ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° находится Π½Π° своСм мСстС, Π½ΠΎ ΠΏΡ€ΠΈ этом ΠΎΡ‚ΠΊΡƒΠ΄Π° Ρ‚ΠΎ Ρ‚ΠΎΡ€Ρ‡ΠΈΡ‚ кусок Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ изобраТСния, Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚ отступ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ.

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΌΠΎΠΌΠ΅Π½Ρ‚. ПослСднСй Π² спискС ΠΈΠ΄Π΅Ρ‚ ΠΈΠΊΠΎΠ½ΠΊΠ° для списка β€” зСлСная стрСлка. ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½Π° ΠΈΠΌΠ΅Π½Π½ΠΎ послСдняя? РасполоТСниС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠΊΠΎΠ½ΠΎΠΊ Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ Π½Π°ΠΌ Π±Π΅Π·Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎ, Π½ΠΎ Π² спискС любой ΠΏΡƒΠ½ΠΊΡ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ нСсколько строк ΠΈ Ссли зСлСная стрСлка Π±ΡƒΠ΄Π΅Ρ‚ Π³Π΄Π΅-Ρ‚ΠΎ посСрСдинС, Ρ‚ΠΎ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… строках Π±ΡƒΠ΄ΡƒΡ‚ Ρ‚ΠΎΡ€Ρ‡Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ списка Π²Ρ‹ΡˆΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ ΠΎ Ρ‡Π΅ΠΌ я Π³ΠΎΠ²ΠΎΡ€ΡŽ.

И Ρ‚Π°ΠΊ. Π― нашСл ΠΏΡΡ‚ΡŒ ΠΈΠΊΠΎΠ½ΠΎΠΊ, объСдинил ΠΈΡ… Π² ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ». Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅ΠΌ дальшС? РазумССтся пишСм ΠΊΠΎΠ΄:

<ul>
	<li>ΠŸΡƒΠ½ΠΊΡ‚ списка</li> 
	<li>Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡƒΠ½ΠΊΡ‚ списка</li> 
	<li>ΠŸΡƒΠ½ΠΊΡ‚ списка</li> 
	<li>Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡƒΠ½ΠΊΡ‚ списка,<br /> Π½ΠΎ Π² Π΄Π²Π΅ строки</li> 
	<li>ΠŸΡƒΠ½ΠΊΡ‚ списка</li> 
	<li>Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡƒΠ½ΠΊΡ‚ списка</li> 
</ul>

Π­Ρ‚ΠΎ html ΠΊΠΎΠ΄ списка. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌ ΠΊ Π½Π΅ΠΌΡƒ наш спрайт:

ul li{
	padding:0 0 0 21px; 
	background:url('sprites.png') 0 -94px no-repeat;
}

Π§Ρ‚ΠΎ ΠΌΡ‹ Ρ‚ΡƒΡ‚ сдСлали? Π‘Π΄Π΅Π»Π°Π»ΠΈ отступ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ <li> ΠΎΡ‚ Π»Π΅Π²ΠΎΠ³ΠΎ края Π² 21 пиксСль, Ρ‡Ρ‚ΠΎΠ±Ρ‹ тСкст Π½Π΅ заслонял ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ.

=Β»http://verstaem.com/Β»]? ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ сСлСктор заставляСт Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΉ ΡΡ‚ΠΈΠ»ΡŒ ΠΊΠΎ всСм ссылкам, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΅ΡΡ‚ΡŒ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ href, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ начинаСтся со строки http://verstaem.com/. Π‘Π°ΠΌ спрайт примСняСтся ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² случаС со списком. Π― Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€ΡŽ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ ссылку β€” ссылку Π½Π° ΠΌΠΎΠΉ Π±Π»ΠΎΠ³.

  1. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅ΠΌ Π½ΡƒΠΆΠ½ΡƒΡŽ ссылку ΠΏΠΎ href. Π­Ρ‚ΠΎΡ‚ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ Ρƒ рассматриваСмой ссылки Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ со строки http://verstaem.com/. МоТно просто ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ класс Π½ΡƒΠΆΠ½ΠΎΠΉ ссылкС ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ стили Π² Π°Ρ‚Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ style прямо Π² html ΠΊΠΎΠ΄Π΅. Или ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½ΡƒΠΆΠ½ΡƒΡŽ ссылку Π»ΡŽΠ±Ρ‹ΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ.
  2. Π”Π΅Π»Π°Π΅ΠΌ отсуп ΠΎΡ‚ Π»Π΅Π²ΠΎΠ³ΠΎ края Ρƒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ссылки Π² 20 пиксСлСй
  3. Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ Π² качСствС Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ³ΠΎ изобраТСния ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ sprites.png
  4. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π°Π» для своСго Π±Π»ΠΎΠ³Π° находится Π½Π° расстоянии 21 пиксСль ΠΎΡ‚ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ края, это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ„ΠΎΠ½ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠ΄Π²ΠΈΠ½ΡƒΡ‚ΡŒ Π½Π° 21 пиксСль Π²Π½ΠΈΠ·. Π’ css я это прописал Ρ‚Π°ΠΊ Β«0 -21pxΒ»

ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ссылки Π΄Π΅Π»Π°ΡŽΡ‚ΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ.

Π Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сСлСктор Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ссылки ΠΈ расстояниС Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ΄Π²ΠΈΠ³Π°Ρ‚ΡŒ Ρ„ΠΎΠ½.

Π”ΠΎΠΌΠ°ΡˆΠ½Π΅Π΅ Π·Π°Π΄Π°Π½ΠΈΠ΅

Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΌΠΎΠΉ Π½Π°Π±ΠΎΡ€ спрайтов. Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ» с ΠΏΡΡ‚ΡŒΡŽ ΠΈΠΊΠΎΠ½ΠΊΠ°ΠΌΠΈ. ПослС Ρ‡Π΅Π³ΠΎ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ поиска с ΠΈΠΊΠΎΠ½ΠΊΠΎΠΉ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ. НуТно ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ слСва ΠΎΡ‚ Ρ„ΠΎΡ€ΠΌΡ‹ поиска отобраТался Π½ΡƒΠΆΠ½Ρ‹ΠΉ спрайт ΠΈΠ· Π½Π°Π±ΠΎΡ€Π°. Π—Π°Π΄Π°Π½ΠΈΠ΅ довольно простоС, Π½ΠΎ Ссли Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ слоТности, Ρ‚ΠΎ Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ здСсь, Π² исходном ΠΊΠΎΠ΄Π΅:
http://verstaem.com/examples/sprites/index.html

Π‘ΠΏΡ€Π°ΠΉΡ‚Ρ‹ с Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ

Π’Π΅ΠΏΠ΅Ρ€ΡŒ посмотрим Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

На этой ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΎ окошко. Π£ ΠΎΠΊΠ½Π° Π΅ΡΡ‚ΡŒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ, Ρ‚Π΅Π»ΠΎ ΠΈ ΠΏΠΎΠ΄Π²Π°Π». Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· этих элСмСнтов Π½Π° Ρ„ΠΎΠ½Π΅ установлСн Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚. ΠŸΡ€ΠΈΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ΡΡŒ Ссли этого сразу Π½Π΅ Π²ΠΈΠ΄Π½ΠΎ, Ρ‚Π°ΠΌ Π΅ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Ρ†Π²Π΅Ρ‚Π° ΠΎΡ‚ Π±Π»Π΅Π΄Π½ΠΎΠ³ΠΎ ΠΊ насыщСнному.

Π― ΠΏΠΎΠΊΠ°ΠΆΡƒ ΠΊΠ°ΠΊ Π³Ρ€Π°Π΄Π΅Π½Ρ‚Ρ‹ Π² этом окошкС ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ спрайтами. Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΈ ΠΏΠΎΠ΄Π²Π°Π» ΠΎΠΊΠ½Π° Π±ΡƒΠ΄ΡƒΡ‚ фиксированной высоты β€” 30 пиксСлСй. Π’Π΅Π»ΠΎ ΠΎΠΊΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΡΠ½ΡƒΡ‚ΡŒΡΡ Π² зависимости ΠΎΡ‚ Π΄Π»ΠΈΠ½Ρ‹ тСкста.

Π˜ΡΡ…ΠΎΠ΄Ρ ΠΈΠ· Ρ‚Π°ΠΊΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΎΠΊΠ½Π° я сдСлал Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π½Ρ‹Ρ… Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π° ΠΏΠΎ 30 пиксСлСй Π² высоту ΠΈ 1 Π² ΡˆΠΈΡ€ΠΈΠ½Ρƒ. ПослС Ρ‡Π΅Π³ΠΎ я объСдинил всС Ρ‚Ρ€ΠΈ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π° Π² ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ». ΠŸΠΎΡΡ‚Π°Π²ΠΈΠ» ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚ΠΎΠ² Π΄Ρ€ΡƒΠ³ Π½Π°Π΄ Π΄Ρ€ΡƒΠ³ΠΎΠΌ. Π’ ΠΈΡ‚ΠΎΠ³Π΅ получился Ρ„Π°ΠΉΠ» высотой 90 пиксСлСй ΠΈ ΡˆΠΈΡ€ΠΈΠ½ΠΎΠΉ Π² 1 пиксСль. Π€Π°ΠΉΠ» слишком ΠΌΠ΅Π»ΠΊΠΈΠΉ, Π² ΡΡ‚Π°Ρ‚Π΅ΡŒΠΉ Π²Ρ‹ Π΅Π³ΠΎ просто Π½Π΅ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅. Π’ΠΎΡ‚ Ρ‚ΡƒΡ‚ Ρ„Π°ΠΉΠ» ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ http://verstaem.com/examples/sprites/gradients.png.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ напишСм html ΠΊΠΎΠ΄ окошка:

<div>
	<div></div>
	<div>
		<div></div>
		<div></div>
	</div>
	<div></div>
</div>

НачинаСм ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ спрайты. НачнСм с Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΎΠΊΠ½Π°:

#window-header{
	height:30px; 
	background:#C0C0FF url('gradients.png') 0 0 repeat-x;
}

Π’ Ρ„Π°ΠΉΠ»Π΅ gradients.png сначала ΠΈΠ΄Π΅Ρ‚ Π³Ρ€Π°Π΄Π΅Π½Ρ‚ для Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°, ΠΏΠΎΡ‚ΠΎΠΌ для Ρ‚Π΅Π»Π° ΠΈ ΠΏΠΎΡ‚ΠΎΠΌ для Π½ΠΈΠΆΠ½Π΅ΠΉ строки. Π’ΠΎ Π΅ΡΡ‚ΡŒ Π³Ρ€Π°Π΄Π΅Π½Ρ‚ для Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° начинаСтся ΠΎΡ‚ самого Π²Π΅Ρ€Ρ…Π°. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ просто ставим Π² качСствС Ρ„ΠΎΠ½Π° сам Ρ„Π°ΠΉΠ» ΠΈ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ ΠΊΠ°ΠΊ Β«0 0Β», Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π½ΠΈΠΊΡƒΠ΄Π° Π½Π΅ ΠΎΡ‚ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ.

Π§Ρ‚ΠΎΠ±Ρ‹ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚ растянулся ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ прописываСм Β«repeat-xΒ».

Π§Ρ‚ΠΎΠ±Ρ‹ Π³Ρ€Π°Π΄Π΅Π½Ρ‚ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ Π²Π»Π΅Π· Π² Π·Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ, ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ высоту Π² 30 пиксСлСй.

Π’ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ поставим Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚ для ΠΏΠΎΠ΄Π²Π°Π»Π°:

#window-footer{
	height:30px;
	background: #C0FFC0 url('gradients.png') 0 -60px repeat-x;
}

Волько Π½Π° этот Ρ€Π°Π· ΠΌΡ‹ сдвинСм ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π²Π½ΠΈΠ· Π½Π° 60 пиксСлСй.

Π‘ Ρ‚Π΅Π»ΠΎΠΌ окошка ситуация слоТнСС. Π’Π΅Π»ΠΎ Ρƒ нас Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°ΡΡ‚ΡΠ³ΠΈΠ²Π°Ρ‚ΡŒΡΡ, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠΈ ΠΎΡ‚ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΈ ΠΏΠΎΠ΄Π²Π°Π»Π°. Π’ΠΎ Π΅ΡΡ‚ΡŒ Ссли ΠΌΡ‹ просто сдСлаСм ΠΎΠ΄ΠΈΠ½ div для Ρ‚Π΅Π»Π° ΠΎΠΊΠ½Π° ΠΈ поставим Ρ‚ΡƒΠ΄Π° Π³Ρ€Π°Π΄Π΅Π½Ρ‚, Ρ‚ΠΎ Π² этом Π΄ΠΈΠ²Π΅ появятся сразу всС Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Ρ‹. Как Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚ для Ρ‚Π΅Π»Π° послСдним ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ, Π½ΠΎ Ρ‡Ρ‚ΠΎ Ссли Ρƒ нас нСсколько Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚ΠΎΠ² для Π±Π»ΠΎΠΊΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ тянутся? ВсС сразу Π½Π΅ сдСлаСшь послСдними. ΠœΡ‹ сдСлаСм Ρ‡ΡƒΡ‚ΡŒ Ρ…ΠΈΡ‚Ρ€Π΅Π΅.

CSS ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ:

#window-body{
	position:relative; 
}
	#window-body-gradient{
		position:absolute; 
		left:0; 
		top:0; 
		width:100%; 
		height:30px; 
		background:url('gradients.
png') 0 -30px repeat-x; } #window-body-text{ position:relative; }

Π’Π΅ΠΏΠ΅Ρ€ΡŒ расскаТу ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Ρ‚ΡƒΡ‚ сдСлали. Π’ΠΎΡ‚ html ΠΊΠΎΠ΄ Ρ‚Π΅Π»Π° ΠΎΠΊΠ½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ:

<div>
	<div></div>
	<div></div>
</div>

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π² Ρ‚Π΅Π»ΠΎ Ρƒ нас Π²Π»ΠΎΠΆΠ΅Π½ΠΎ Π΅Ρ‰Π΅ Π΄Π²Π° Π΄ΠΈΠ²Π°. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Β«window-body-gradientΒ» Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ Π·Π° Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚. Π’Ρ‚ΠΎΡ€ΠΎΠΉ Β«window-body-textΒ» Π½ΡƒΠΆΠ΅Π½ для тСкста. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ это понятно ΠΈΠ· CSS ΠΊΠΎΠ΄Π° ΠΌΡ‹ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠ»ΠΈ position:relative; для всСго Ρ‚Π΅Π»Π° ΠΎΠΊΠ½Π° Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ.

Для Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ²Π° ΠΌΡ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ position:absolute. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΡ‹ Π²Ρ‹Π±ΠΈΠ»ΠΈ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π½Ρ‹ΠΉ Π΄ΠΈΠ² ΠΈΠ· ΠΎΠ±Ρ‰Π΅Π³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ°. Π’Π΅ΠΏΠ΅Ρ€ΡŒ этот Π΄ΠΈΠ² Π½ΠΈ Π½Π° Ρ‡Ρ‚ΠΎ Π½Π΅ влияСт. Π’Π°ΠΊ ΠΊΠ°ΠΊ для всСго Ρ‚Π΅Π»Π° Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ Ρƒ нас ΡƒΠΊΠ°Π·Π°Π½ΠΎ position:relative, Ρ‚ΠΎ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π½Ρ‹ΠΉ Π΄ΠΈΠ² Π½ΠΈΠΊΡƒΠ΄Π° дальшС родитСля Π½Π΅ ΡƒΠΏΠ»Ρ‹Π²Π°Π΅Ρ‚. ΠŸΡ€ΠΈΠΊΡ€Π΅ΠΏΠ»ΡΠ΅ΠΌ Π΅Π³ΠΎ ΠΊ Π»Π΅Π²ΠΎΠΌΡƒ ΠΈ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌΡƒ ΠΊΡ€Π°ΡŽ Ρ‚Π΅Π»Π° ΠΎΠΊΠ½Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Β«left:0; top:0;Β». Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ высоту Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ²Π° β€” 30 пиксСлСй. Π’ΠΎ Π΅ΡΡ‚ΡŒ Ρ‚ΡƒΡ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ высоту Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠ»ΡΡ‚ΡŒ, Ссли высота Π΄ΠΈΠ²Π° Π±ΡƒΠ΄Π΅Ρ‚ большС высоты Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π°, Ρ‚ΠΎ Π² Π΄ΠΈΠ²Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Ρ‚ΠΎΡ€Ρ‡Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ спрайты.

И Π½Π°ΠΊΠΎΠ½Π΅Ρ† прикрСпляСм ΠΊ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π½ΠΎΠΌΡƒ Π΄ΠΈΠ²Ρƒ наш Ρ„Π°ΠΉΠ» gradients.png. Как ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ сдвигаСм Ρ„ΠΎΠ½ Π²Π²Π΅Ρ€Ρ… Π½Π° Π½ΡƒΠΆΠ½ΠΎΠ΅ расстояниС, Π² Π΄Π°Π½Π½ΠΎΠΌ случаС сдвигаСм Ρ„ΠΎΠ½ Π½Π° 30 пиксСлСй Π²Π²Π΅Ρ€Ρ….

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π² Ρ‚Π΅Π»Π΅ ΠΎΠΊΠ½Π° Ρƒ нас Π΅ΡΡ‚ΡŒ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚. Но ΠΎΠ½ заслоняСт тСкст. Π§Ρ‚ΠΎΠ±Ρ‹ тСкст Π½Π΅ Π·Π°cлонялся ΠΎΠ±Π΅Ρ€Π½Π΅ΠΌ вСсь тСкст Π² Π΄ΠΈΠ² ΠΈ присвоим Π΅ΠΌΡƒ position:relative. ПослС присвоСния тСкст Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ²Π΅Ρ€Ρ… Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π°.

Π’ΠΎΡ‚ Π² ΠΎΠ±Ρ‰Π΅ΠΌ Ρ‚ΠΎ ΠΈ всС. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ расставили всС Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Ρ‹ Π² нашС окошко. И Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ, ΠΈ Π² Ρ‚Π΅Π»ΠΎ, ΠΈ Π² ΠΏΠΎΠ΄Π²Π°Π».

Π’Π°ΠΊΠΈΠ΅ Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ пояснСния я дСлаю, Ρ‡Ρ‚ΠΎΠ±Ρ‹ совсСм всС Π±Ρ‹Π»ΠΎ понятно. Но Π½Π° самом Π΄Π΅Π»Π΅ Ссли Π²Ρ‹ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅Ρ‚Π΅ΡΡŒ Π² вСрсткС, Ρ‚ΠΎ Π²Π°ΠΌ Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ достаточно ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ сами ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

http://verstaem.com/examples/sprites/index.html
Π’ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ Ρ€Π°Π· ΠΏΡ€ΠΎΠ΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π» ссылку.

На самом Π΄Π΅Π»Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΏΠΎ использованию спрайтов. Π― ΠΏΠΎΠΊΠ°Π·Π°Π» Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, Π½ΠΎ этих ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½ΠΎ Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ для понимания ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹ спрайтов. Если ΠΎΡΡ‚Π°Π»ΠΈΡΡŒ ΠΊΠ°ΠΊΠΈΠ΅ Ρ‚ΠΎ вопросы, Ρ‚ΠΎ Π·Π°Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π² коммСнтариях.

CSS спрайты ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ

Π‘ΠΏΡ€Π°ΠΉΡ‚ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ — это Π½Π°Π±ΠΎΡ€ Ρ€Π°Π·Π½Ρ‹Ρ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Ρ‹ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΎΠ±Ρ‰Π΅ΠΌ Ρ„Π°ΠΉΠ»Π΅ изобраТСния.

Для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π²Π΅Π±-страницы с большим количСством ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. ΠŸΡ€ΠΈ этом, такая Π²Π΅Π±-страница Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ мноТСство запросов ΠΊ сСрвСру, занимая ΠΊΠ°Π½Π°Π» связи.

ИспользованиС спрайтов ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ позволяСт ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ количСство запросов ΠΊ сСрвСру ΠΈ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ потрСбляСмыС рСсурсы.

Π‘ΠΏΡ€Π°ΠΉΡ‚Ρ‹ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ — ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€

ВмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π½Ρ‹Ρ… изобраТСния, ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΎΠ΄Π½ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ («img_navsprites.gif») Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°:

ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ CSS ΠΌΡ‹ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Ρƒ Ρ‡Π°ΡΡ‚ΡŒ, которая Π½ΡƒΠΆΠ½Π° ΠΈΠΌΠ΅Π½Π½ΠΎ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚.

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ опрСдСляСтся, какая Ρ‡Π°ΡΡ‚ΡŒ изобраТСния «img_navsprites.gif» Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ:

<style>
#home {
  width: 46px;
  height: 44px;
  background: url('img_navsprites.gif') 0 0;
}
</style>
<img src="img_trans.gif">

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

ОбъяснСниС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°:

  • <img src="img_trans. gif"> — ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ нСбольшоС ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ src Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ пустым. ОсновноС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ„ΠΎΠ½ΠΎΠ²Ρ‹ΠΌ, Π΅Π³ΠΎ ΠΌΡ‹ опрСдСляСм ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ CSS.
  • width: 46px; height: 44px; — ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡƒΡŽ Π½Π°ΠΌΠΈ Ρ‡Π°ΡΡ‚ΡŒ изобраТСния
  • background: url(img_navsprites.gif) 0 0; — ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π΅Π³ΠΎ мСстонахоТдСниС (слСва 0px, свСрху 0px)

Π­Ρ‚ΠΎ самый простой способ использования спрайтов ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π² ссылках ΠΈ для оформлСния эффСкта навСдСния ΠΌΡ‹ΡˆΠΈ.


Π‘ΠΏΡ€Π°ΠΉΡ‚Ρ‹ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ — Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ список ссылок Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ

Для создания списка ссылок Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ спрайт ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ («img_navsprites.gif») ΠΈ HTML список.

HTML список ΡƒΠ΄ΠΎΠ±Π΅Π½ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ссылки ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Π΅ изобраТСния:

<style>
#navlist {
  position: relative;
}
#navlist li {
  margin: 0;
  padding: 0;
  list-style: none;
  position: absolute;
  top: 0;
}
#navlist li, #navlist a {
  height: 44px;
  display: block;
}
#home {
  left: 0px;
  width: 46px;
  background: url('img_navsprites. gif') 0 0;
}
#prev {
  left: 63px;
  width: 43px;
  background: url('img_navsprites.gif') -47px 0;
}
#next {
  left: 129px;
  width: 43px;
  background: url('img_navsprites.gif') -91px 0;
}
</style>
<ul>
  <li><a href="default.asp"></a></li>
  <li><a href="css_intro.asp"></a></li>
  <li><a href="css_syntax.asp"></a></li>
</ul>

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:


ОбъяснСниС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°:

  • #navlist {position:relative;} — устанавливаСм ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΡ‚ΠΎΠΌ Π²Π½ΡƒΡ‚Ρ€ΠΈ этого элСмСнта ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
  • #navlist li {margin:0;padding:0;list-style:none;position:absolute;top:0;} — отступы (margin) ΠΈ поля (padding) устанавливаСм Π² 0, ΡΡ‚ΠΈΠ»ΡŒ списка (list-style) удаляСм, Π° всС элСмСнты списка Π΄Π΅Π»Π°Π΅ΠΌ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ
  • #navlist li, #navlist a {height:44px;display:block;} — Π·Π°Π΄Π°Π΅ΠΌ высоту всСх ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ 44px

Π’Π΅ΠΏΠ΅Ρ€ΡŒ опрСдСляСм ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΈ ΡΡ‚ΠΈΠ»ΡŒ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ части:

  • #home {left:0px;width:46px;} — элСмСнт располоТСн ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ слСва ΠΈ Π΅Π³ΠΎ ΡˆΠΈΡ€ΠΈΠ½Π° 46px
  • #home {background:url(img_navsprites. gif) 0 0;} — опрСдСляСм Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π΅Π³ΠΎ мСстонахоТдСниС (слСва 0px, свСрху 0px)
  • #prev {left:63px;width:43px;} — элСмСнт сдвинут Π½Π° 63px Π²ΠΏΡ€Π°Π²ΠΎ (46px ΡˆΠΈΡ€ΠΈΠ½Ρ‹ #home + Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ мСсто ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами списка), Π΅Π³ΠΎ ΡˆΠΈΡ€ΠΈΠ½Π° 43px
  • #prev {background:url('img_navsprites.gif') -47px 0;} — опрСдСляСм Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² 47px справа (46px ΠΎΡ‚ изобраТСния для #home + 1px ΠΎΡ‚ раздСлитСля)
  • #next {left:129px;width:43px;} — элСмСнт сдвинут Π½Π° 129px Π²ΠΏΡ€Π°Π²ΠΎ (#prev начинаСтся Π½Π° 63px + 43px ΠΎΡ‚ #prev + Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ мСсто), ΠΈ Π΅Π³ΠΎ ΡˆΠΈΡ€ΠΈΠ½Π° 43px
  • #next {background:url('img_navsprites.gif') -91px 0;} — опрСдСляСм Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² 91px справа (46px ΠΎΡ‚ изобраТСния для #home + 1px ΠΎΡ‚ раздСлитСля + 43px ΠΎΡ‚ изобраТСния для #prev + 1px ΠΎΡ‚ раздСлитСля)

Π‘ΠΏΡ€Π°ΠΉΡ‚Ρ‹ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ — Π­Ρ„Ρ„Π΅ΠΊΡ‚ ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΌΡ‹ΡˆΠΈ

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΊ Π½Π°ΡˆΠ΅ΠΌΡƒ списку ссылок Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ эффСкт ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΌΡ‹ΡˆΠΈ.

Π‘Ρ‚ΠΎΠΈΡ‚ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ псСвдокласс :hover ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ с Π»ΡŽΠ±Ρ‹ΠΌΠΈ элСмСнтами, Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ссылками.

НашС Π½ΠΎΠ²ΠΎΠ΅ спрайтовоС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ («img_navsprites_hover.gif») содСрТит Ρ‚Ρ€ΠΈ изобраТСния для Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΈ Ρ‚Ρ€ΠΈ изобраТСния для создания Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ эффСкта:

Π’Π°ΠΊ ΠΊΠ°ΠΊ это ΠΎΠ΄Π½ΠΎ Π΅Π΄ΠΈΠ½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Π° Π½Π΅ ΡˆΠ΅ΡΡ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ², Ρ‚ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½ΠΎΠΉ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ΠΌΡ‹ΡˆΠΈ Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΡƒΠΆΠ½Ρ‹ΠΉ эффСкт, достаточно ΠΊ ΠΊΠΎΠ΄Ρƒ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ всСго Ρ‚Ρ€ΠΈ строчки, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ img_navsprites.gif Π½Π° img_navsprites_hover.gif:

#home a:hover {
  background: url('img_navsprites_hover.gif') 0 -45px;
}
#prev a:hover {
  background: url('img_navsprites_hover.gif') -47px -45px;
}
#next a:hover {
  background: url('img_navsprites_hover.gif') -91px -45px;
}

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:


ОбъяснСниС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°:

  • #home a:hover {background: url('img_navsprites_hover.gif') 0 -45px;} — для всСх Ρ‚Ρ€Π΅Ρ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ для эффСкта, ΠΌΡ‹ опрСдСляСм Ρ‚Π΅ ΠΆΠ΅ самыС Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Π΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ смСщСнныС Π½Π° 45px Π²Π½ΠΈΠ·.

Как ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ спрайты ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ CSS

Π Π΅ΠΊΠ»Π°ΠΌΠ°

Π’Π΅Ρ…Π½ΠΈΠΊΠ° спрайтов CSS β€” это способ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ количСство HTTP-запросов ΠΊ рСсурсам ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΏΡƒΡ‚Π΅ΠΌ объСдинСния ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π² ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ».

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ спрайт

Π‘ΠΏΡ€Π°ΠΉΡ‚Ρ‹ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ изобраТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ состоят ΠΈΠ· объСдинСния Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π² ΠΎΠ΄Π½ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΊΡ€ΡƒΠΏΠ½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ X ΠΈ Y.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΎΠ΄Π½ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ· ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ изобраТСния, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ CSS background-position , ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰Π΅Π΅ Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ изобраТСния.

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²ΠΎ использования CSS Image Sprite

Π’Π΅Π±-страница с большим количСством ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, особСнно с большим количСством Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Π·Π½Π°Ρ‡ΠΊΠΈ, ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ Ρ‚. Π΄., ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ нСсколько запросов ΠΊ сСрвСру.

ИспользованиС спрайтов ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ вмСсто ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ количСство HTTP-запросов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ отправляСт Π½Π° сСрвСр, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ эффСктивным для ускорСния Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π²Π΅Π±-страниц ΠΈ ΠΎΠ±Ρ‰Π΅ΠΉ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ сайта.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: УмСньшСниС количСства HTTP-запросов ΠΈΠΌΠ΅Π΅Ρ‚ большоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для сокращСния Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ°, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π²Π΅Π±-страницу Π±ΠΎΠ»Π΅Π΅ ΠΎΡ‚Π·Ρ‹Π²Ρ‡ΠΈΠ²ΠΎΠΉ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

ΠžΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ, ΠΈ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΎΠ΄Π½ΠΎ Π²ΠΈΠ΄ΠΈΠΌΠΎΠ΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅; ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ указатСля ΠΌΡ‹ΡˆΠΈ Π½Π° ΠΈΠΊΠΎΠ½ΠΊΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° Π² нСспрайтовой вСрсии Π² ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ€Π°Π· Ρ‡Π΅Ρ€Π΅Π· ΠΊΠ°ΠΊΠΎΠ΅-Ρ‚ΠΎ врСмя появится ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ, это происходит ΠΈΠ·-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ загруТаСтся с сСрвСра ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΌΡ‹ΡˆΠΈ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ΅ ΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π΄Π²Π° Ρ€Π°Π·Π½Ρ‹Ρ… изобраТСния.

ΠŸΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ Π²ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π² спрайтовой вСрсии, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ всС изобраТСния ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Ρ‹ Π² ΠΎΠ΄Π½ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ отобраТаСтся сразу ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΌΡ‹ΡˆΠΈ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ эффСкту ΠΏΠ»Π°Π²Π½ΠΎΠ³ΠΎ навСдСния.

ИспользованиС Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ спрайтов CSS продСмонстрировано Π²: [ΠŸΠ Π˜ΠœΠ•Π  — B]; Π½Π°ΠΌ ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ количСство HTTP-запросов Π½Π° 9 ΠΈ ΠΎΠ±Ρ‰ΠΈΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π½Π° 38,2 ΠšΠ‘ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с [ΠŸΠ Π˜ΠœΠ•Π  — A];. Π­Ρ‚ΠΎ довольно большоС ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ для Ρ‚Π°ΠΊΠΎΠ³ΠΎ малСнького ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½Π° Π³ΠΎΡ‚ΠΎΠ²ΠΎΠΌ Π²Π΅Π±-сайтС.

Π’Π΅ΡΡŒ процСсс создания этого ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° описан Π½ΠΈΠΆΠ΅.


Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ спрайта изобраТСния

ΠœΡ‹ создали этот спрайт, объСдинив 10 ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π² ΠΎΠ΄Π½ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ (mySprite.png). Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ свой собствСнный спрайт, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ любой инструмСнт рСдактирования ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Π°ΠΌ нравится.

Π‘ΠΎΠ²Π΅Ρ‚: Для простоты ΠΌΡ‹ использовали всС Π·Π½Π°Ρ‡ΠΊΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΈ размСстили ΠΈΡ… Π±Π»ΠΈΠ·ΠΊΠΎ Π΄Ρ€ΡƒΠ³ ΠΊ Π΄Ρ€ΡƒΠ³Ρƒ для облСгчСния расчСта смСщСния.


ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π·Π½Π°Ρ‡ΠΊΠ° ΠΈΠ· спрайта изобраТСния

НаконСц, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ CSS, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Ρƒ Ρ‡Π°ΡΡ‚ΡŒ спрайта изобраТСния, которая Π½Π°ΠΌ Π½ΡƒΠΆΠ½Π°.

ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго, ΠΌΡ‹ создадим класс .sprite , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ нашС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ спрайта. Π­Ρ‚ΠΎ дСлаСтся для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ повторСния, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ всС элСмСнты ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎ ΠΆΠ΅ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€
ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ этот ΠΊΠΎΠ΄ Β»
 .sprite {
    background: url("images/mySprite.png") Π±Π΅Π· ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΎΠ²;
} 

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ класс для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ. НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡ΠΎΠΊ Internet Explorer Π² Π²ΠΈΠ΄Π΅ спрайта изобраТСния, ΠΊΠΎΠ΄ CSS Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠΌ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€
ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ этот ΠΊΠΎΠ΄ Β»
 .ie {
    ΡˆΠΈΡ€ΠΈΠ½Π°: 50 пиксСлСй; /* Π¨ΠΈΡ€ΠΈΠ½Π° Π·Π½Π°Ρ‡ΠΊΠ° */
    высота: 50 пиксСлСй; /* Высота Π·Π½Π°Ρ‡ΠΊΠ° */
    ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅: встроСнный Π±Π»ΠΎΠΊ; /* ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π·Π½Π°Ρ‡ΠΎΠΊ ΠΊΠ°ΠΊ встроСнный Π±Π»ΠΎΠΊ */
    фоновая позиция: 0-200px; /* ПолоТСниС Ρ„ΠΎΠ½Π° ΠΈΠΊΠΎΠ½ΠΊΠΈ Π² спрайтС */
} 

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ вопрос, ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ эти значСния пиксСлСй для background-position ? Π”Π°Π²Π°ΠΉ выясним. ΠŸΠ΅Ρ€Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ β€” это Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ , Π° Π²Ρ‚ΠΎΡ€ΠΎΠ΅ β€” Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ„ΠΎΠ½Π°. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ Π»Π΅Π²Ρ‹ΠΉ ΡƒΠ³ΠΎΠ» Π·Π½Π°Ρ‡ΠΊΠ° Internet Explorer касаСтся Π»Π΅Π²ΠΎΠ³ΠΎ края, Π΅Π³ΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ расстояниС ΠΎΡ‚ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ, Ρ‚.Π΅. Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡƒΠ³Π»Π° спрайта изобраТСния, Ρ€Π°Π²Π½ΠΎ 0 , ΠΈ ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ располоТСн Π½Π° 5-ΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ , Π΅Π³ΠΎ расстояниС ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ ΠΎΡ‚ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ спрайта изобраТСния составляСт 4 X 50 пиксСлСй = 200 пиксСлСй , ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ высота ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π·Π½Π°Ρ‡ΠΊΠ° составляСт 50 пиксСлСй .

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡ΠΎΠΊ Internet Explorer, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π»Π΅Π²Ρ‹ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΡƒΠ³ΠΎΠ» Π² Π½Π°Ρ‡Π°Π»ΡŒΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² Π»Π΅Π²Ρ‹ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΡƒΠ³ΠΎΠ» спрайта изобраТСния (mySprite.png). ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ эта ΠΈΠΊΠΎΠ½ΠΊΠ° располоТСна Π½Π° расстоянии 200px ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ всС Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ (mySprite.png) Π²Π²Π΅Ρ€Ρ… Π½Π° 200px , Ρ‡Ρ‚ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΡ‹ примСняли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ число, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ -200px , ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ заставляСт Π΅Π³ΠΎ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ Π²Π²Π΅Ρ€Ρ…, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ Π΅Π³ΠΎ Π²Π½ΠΈΠ·. Однако смСщСниС ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ Π½Π΅ трСбуСтся, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅Π΄ Π»Π΅Π²Ρ‹ΠΌ Π²Π΅Ρ€Ρ…Π½ΠΈΠΌ ΡƒΠ³Π»ΠΎΠΌ Π·Π½Π°Ρ‡ΠΊΠ° Internet Explorer Π½Π΅Ρ‚ пиксСлСй.

Π‘ΠΎΠ²Π΅Ρ‚: ΠŸΡ€ΠΎΡΡ‚ΠΎ поэкспСримСнтируйтС со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ свойства background-position Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ…, ΠΈ Π²Ρ‹ быстро ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ смСщСния.


Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ мСню Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ с использованиСм спрайта изобраТСния CSS

Π’ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΌΡ‹ ΡƒΠ·Π½Π°Π»ΠΈ, ΠΊΠ°ΠΊ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π·Π½Π°Ρ‡ΠΎΠΊ ΠΈΠ· спрайта изобраТСния. Π­Ρ‚ΠΎ самый простой способ использования спрайтов ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ Π΄Π΅Π»Π°Π΅ΠΌ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ шаг Π²ΠΏΠ΅Ρ€Π΅Π΄, создавая мСню Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ с эффСктом ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ , ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² [ΠŸΠ Π˜ΠœΠ•Π  — B].

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎ ΠΆΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ спрайта (mySprite.png) для создания нашСго Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ мСню.

Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ HTML для Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ

ΠœΡ‹ Π½Π°Ρ‡Π½Π΅ΠΌ с создания нашСго Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ мСню с нСупорядочСнным списком HTML.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€
ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ этот ΠΊΠΎΠ΄ Β»
  

ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ CSS для Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Π΄Π΅Π»Π°Ρ… описано, ΠΊΠ°ΠΊ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ простой нСупорядочСнный список, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ΡˆΠ΅, Π² Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΡŽ Π½Π° основС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ CSS.

Π¨Π°Π³ 1. Бброс структуры списка

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ нСупорядочСнныС списки HTML ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ с ΠΌΠ°Ρ€ΠΊΠ΅Ρ€Π°ΠΌΠΈ. Нам Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΌΠ°Ρ€ΠΊΠ΅Ρ€Ρ‹ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, установив для Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° list-style-type Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ none .

ΠŸΡ€ΠΈΠΌΠ΅Ρ€
ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ этот ΠΊΠΎΠ΄ Β»
 ul.menu {
    Ρ‚ΠΈΠΏ стиля списка: Π½Π΅Ρ‚;
}
ΡƒΠ».мСню Π»ΠΈ {
    отступ: 5px;
    Ρ€Π°Π·ΠΌΠ΅Ρ€ ΡˆΡ€ΠΈΡ„Ρ‚Π°: 16px;
    сСмСйство ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ²: "Trebuchet MS", Arial, Π±Π΅Π· засСчСк;
} 

Π¨Π°Π³ 2: Настройка ΠΎΠ±Ρ‰ΠΈΡ… свойств для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ссылки

На этом шагС ΠΌΡ‹ установим всС ΠΎΠ±Ρ‰ΠΈΠ΅ свойства CSS, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ±Ρ‰ΠΈΠΌΠΈ для всСх ссылок. НапримСр, color , background-image , display , padding ΠΈ Ρ‚. Π΄.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€
ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ этот ΠΊΠΎΠ΄ Β»
 ul.menu li a {
    высота: 50 пиксСлСй;
    высота строки: 50px;
    ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅: встроСнный Π±Π»ΠΎΠΊ;
    отступ слСва: 60px; /* Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚Π΄Π΅Π»ΠΈΡ‚ΡŒ тСкст ΠΎΡ‚ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ³ΠΎ изобраТСния */
    Ρ†Π²Π΅Ρ‚: #3E789Π€;
    background: url("images/mySprite.png") Π±Π΅Π· ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΎΠ²; /* ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ всС ссылки ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎ ΠΆΠ΅ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ */
} 

Π¨Π°Π³ 3: Установка состояния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ссылки

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ класс для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт спрайта изобраТСния ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Π°Π·Π½ΠΎΠ΅ background-position . НапримСр, Π·Π½Π°Ρ‡ΠΎΠΊ Firefox помСщаСтся Π² Π½Π°Ρ‡Π°Π»ΡŒΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ Π»Π΅Π²Ρ‹ΠΉ ΡƒΠ³ΠΎΠ» спрайта изобраТСния, поэтому Π½Π΅Ρ‚ нСобходимости ΡΠ΄Π²ΠΈΠ³Π°Ρ‚ΡŒ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ„ΠΎΠ½Π° Π² этом случаС Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π½ΠΎ 0. Π’ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ„ΠΎΠ½Π° для Π΄Ρ€ΡƒΠ³ΠΈΡ… Π·Π½Π°Ρ‡ΠΊΠΎΠ² Π² спрайтС изобраТСния.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€
ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ этот ΠΊΠΎΠ΄ Β»
 ul.menu li.firefox a {
    фоновая позиция: 0 0;
}
ul.menu li.chrome {
    фоновая позиция: 0-100px;
}
ul.menu li.ie a {
    фоновая позиция: 0-200px;
}
ul.menu li.safari {
    фоновая позиция: 0-300px;
}
ul.menu li.opera {
    фоновая позиция: 0-400px;
} 

Π¨Π°Π³ 4. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ состояний навСдСния для ссылок

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ состояний навСдСния основано Π½Π° Ρ‚ΠΎΠΌ ΠΆΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅, Ρ‡Ρ‚ΠΎ ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Π²Ρ‹ΡˆΠ΅ ссылок. ΠŸΡ€ΠΎΡΡ‚ΠΎ пСрСмСститС ΠΈΡ… Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ Π»Π΅Π²Ρ‹ΠΉ ΡƒΠ³ΠΎΠ» Π² Π½Π°Ρ‡Π°Π»ΡŒΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ Π»Π΅Π²Ρ‹ΠΉ ΡƒΠ³ΠΎΠ») спрайта изобраТСния, ΠΊΠ°ΠΊ ΠΌΡ‹ сдСлали Π²Ρ‹ΡˆΠ΅. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ просто Ρ€Π°ΡΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ background-position , ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρƒ:

Π’Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ состояния навСдСния = Π’Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ состояния - 50px

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€ΠΎΠ»Π»ΠΎΠ²Π΅Ρ€Π½Ρ‹Π΅ изобраТСния находятся Ρ‡ΡƒΡ‚ΡŒ Π½ΠΈΠΆΠ΅ состояния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Π° высота ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π·Π½Π°Ρ‡ΠΊΠ° Ρ€Π°Π²Π½Π° 50px. БостояниС Π·Π½Π°Ρ‡ΠΊΠΎΠ² ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ смСщСния ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΡ… Π»Π΅Π²Ρ‹ΠΌ Π²Π΅Ρ€Ρ…Π½ΠΈΠΌ ΡƒΠ³Π»ΠΎΠΌ Π½Π΅Ρ‚ пиксСлСй.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€
ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ этот ΠΊΠΎΠ΄ Β»
 ul.menu li.firefox a:hover {
    фоновая позиция: 0-50px;
}
ul.menu li.chrome a: hover {
    фоновая позиция: 0-150px;
}
ul.menu li.ie a:hover {
    фоновая позиция: 0-250px;
}
ul.menu li.safari a:hover {
    фоновая позиция: 0-350px;
}
ul.menu li.opera a:hover {
    фоновая позиция: 0-450px;
} 

Π“ΠΎΡ‚ΠΎΠ²ΠΎ! Π’ΠΎΡ‚ наш ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ HTML ΠΈ CSS послС объСдинСния всСго процСсса:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€
ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ этот ΠΊΠΎΠ΄ Β»
 

<Π³ΠΎΠ»ΠΎΠ²Π°>
<ΠΌΠ΅Ρ‚Π°-ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ°="utf-8">
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ мСню Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ спрайта
<ΡΡ‚ΠΈΠ»ΡŒ>
    ΡƒΠ».мСню {
        Ρ‚ΠΈΠΏ стиля списка: Π½Π΅Ρ‚;
    }
    ΡƒΠ».мСню Π»ΠΈ {
        отступ: 5px;
        Ρ€Π°Π·ΠΌΠ΅Ρ€ ΡˆΡ€ΠΈΡ„Ρ‚Π°: 16px;
        сСмСйство ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ²: "Trebuchet MS", Arial, Π±Π΅Π· засСчСк;
    }
    ul.menu li a {
        высота: 50 пиксСлСй;
        высота строки: 50px;
        ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅: встроСнный Π±Π»ΠΎΠΊ;
        отступ слСва: 60px; /* Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚Π΄Π΅Π»ΠΈΡ‚ΡŒ тСкст ΠΎΡ‚ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ³ΠΎ изобраТСния */
        Ρ†Π²Π΅Ρ‚: #3E789Π€;
        background: url("images/mySprite. png") Π±Π΅Π· ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΎΠ²; /* ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ всС ссылки ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎ ΠΆΠ΅ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ */
    }
    ul.menu li.firefox a {
        фоновая позиция: 0 0;
    }
    ul.menu li.chrome {
        фоновая позиция: 0-100px;
    }
    ul.menu li.ie a {
        фоновая позиция: 0-200px;
    }
    ul.menu li.safari {
        фоновая позиция: 0-300px;
    }
    ul.menu li.opera {
        фоновая позиция: 0-400px;
    }
    ul.menu li.firefox a:hover {
        фоновая позиция: 0-50px;
    }
    ul.menu li.chrome a: hover {
        фоновая позиция: 0-150px;
    }
    ul.menu li.ie a:hover {
        фоновая позиция: 0-250px;
    }
    ul.menu li.safari a:hover {
        фоновая позиция: 0-350px;
    }
    ul.menu li.opera a:hover {
        фоновая позиция: 0-450px;
    }


<Ρ‚Π΅Π»ΠΎ>
    <ΡƒΠ»>
        
  • Firefox
  • Chrome
  • ΠŸΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊ
  • ΠžΠΏΠ΅Ρ€Π°
  • Π‘Π°Ρ„Π°Ρ€ΠΈ
  • ΠŸΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π°Ρ страница Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ страница

    Π‘ΠΏΡ€Π°ΠΉΡ‚Ρ‹ CSS | Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ спрайты изобраТСния

    Поиск

    ИспользованиС спрайтов CSS β€” это способ объСдинСния Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π² ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ» изобраТСния для использования Π½Π° вашСм Π²Π΅Π±-сайтС с Ρ†Π΅Π»ΡŒΡŽ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

    Учитывая, Ρ‡Ρ‚ΠΎ Π²Ρ‹ создадитС ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, спрайт ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ, Π½ΠΎ спрайты Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΏΡ€ΠΎΡΡΠ½ΠΈΡ‚ΡŒ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ. Π’Π΅Ρ€ΠΌΠΈΠ½ «спрайты» происходит ΠΎΡ‚ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ, часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ Π² Π²ΠΈΠ΄Π΅ΠΎΠΈΠ³Ρ€Π°Ρ…. ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ Π² памяти, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ части изобраТСния Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

    Sprite β€” это, ΠΏΠΎ сути, комбинированная Π³Ρ€Π°Ρ„ΠΈΠΊΠ°. CSS-спрайты ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Π²Π°ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π΅Π³ΠΎ части. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ сниТаСт Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ расходы Π½Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ большСго количСства ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, спрайт β€” это Π½Π°Π±ΠΎΡ€ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, собранных Π² Π΅Π΄ΠΈΠ½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. Π’Π΅Π±-страница с нСсколькими изобраТСниями ΠΌΠΎΠΆΠ΅Ρ‚ дольшС Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒΡΡ ΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ большС запросов ΠΊ сСрвСру. ИспользованиС спрайтов ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ количСство запросов ΠΊ сСрвСру ΠΈ сэкономит Ρ‚Ρ€Π°Ρ„ΠΈΠΊ.

    Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, вмСсто Ρ‚Ρ€Π΅Ρ… ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ CSS ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Ρƒ Ρ‡Π°ΡΡ‚ΡŒ изобраТСния, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ. НиТС прСдставлСны Ρ‚Ρ€ΠΈ изобраТСния спрайтов, созданныС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π“Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ спрайтов CSS . Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… (sprites.gif) Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 132×43 пиксСля:

    Π’ строках Π½ΠΈΠΆΠ΅ ΠΌΡ‹ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ нашС CSS-ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ sprites.gif:

    .

     
    
    <Π³ΠΎΠ»ΠΎΠ²Π°>
    <ΡΡ‚ΠΈΠ»ΡŒ>
    #Π΄ΠΎΠΌ {
      ΡˆΠΈΡ€ΠΈΠ½Π°: 43 пиксСля;
      высота: 43 пиксСля;
      Ρ„ΠΎΠ½: url(sprites.gif) 0 0 Π±Π΅Π· ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π°;
    }
    #ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ {
      ΡˆΠΈΡ€ΠΈΠ½Π°: 43 пиксСля;
      высота: 43 пиксСля;
      Ρ„ΠΎΠ½: url(sprites.gif) -89px 0 Π±Π΅Π· ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π°;
    }
    #Π½Π°Π·Π°Π΄ {
      ΡˆΠΈΡ€ΠΈΠ½Π°: 43 пиксСля;
      высота: 43 пиксСля;
      Ρ„ΠΎΠ½: url(sprites.gif) -43px 0 Π±Π΅Π· ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π°;
    }
    
    
    <Ρ‚Π΅Π»ΠΎ>
    



    gif">

    ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ„ΠΎΠ½ΠΎΠ²Ρ‹ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ Π² CSS. Π¨ΠΈΡ€ΠΈΠ½Π°: 43 пиксСля, соотвСтствСнно высота 43 пиксСля β€” опрСдСляСт Ρ‡Π°ΡΡ‚ΡŒ изобраТСния, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ; background: url (sprites.gif) 0 0 Π±Π΅Π· ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π°; β€” опрСдСляСт Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π΅Π³ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ (слСва 0px, свСрху 0px) со свойством no-repeat. Атрибут img опрСдСляСт нСбольшой ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΉ gif, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ свойство src нСльзя ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ пустым. Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²Ρ‹ΡˆΠ΅, рядом с ΠΊΠΎΠ΄ΠΎΠΌ.

    Π”Π°Π»Π΅Π΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ спрайта (Β«sprites.gifΒ») для создания списка Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ. Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ список HTML, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ссылкой ΠΈ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

     
    
    <Π³ΠΎΠ»ΠΎΠ²Π°>
    <ΡΡ‚ΠΈΠ»ΡŒ>
    #навлист {
      ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: родствСнник;
    }
    #навлист Π»ΠΈ {
      ΠΌΠ°Ρ€ΠΆΠ°: 0;
      Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅: 0;
      ΡΡ‚ΠΈΠ»ΡŒ списка: Π½Π΅Ρ‚;
      ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅;
      свСрху: 0;
    }
    #navlist li, #navlist a {
      высота: 43 пиксСля;
      дисплСй: блок;
    }
    #Π΄ΠΎΠΌ {
      слСва: 0px;
      ΡˆΠΈΡ€ΠΈΠ½Π°: 43 пиксСля;
      Ρ„ΠΎΠ½: url('sprites. gif') 0 0;
    }
    #ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ {
      слСва: 63px;
      ΡˆΠΈΡ€ΠΈΠ½Π°: 43 пиксСля;
      Ρ„ΠΎΠ½: url('sprites.gif') -46px 0;
    }
    #ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ {
      ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ: 129пкс;
      ΡˆΠΈΡ€ΠΈΠ½Π°: 43 пиксСля;
      Ρ„ΠΎΠ½: url('sprites.gif') -89px 0;
    }
    
    
    <Ρ‚Π΅Π»ΠΎ>
      <ΡƒΠ»>
      
  • Π’ строках Π½ΠΈΠΆΠ΅ ΠΌΡ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ эффСкт прохоТдСния Π² наш список Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» создан Π²Ρ‹ΡˆΠ΅. ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эффСкт навСдСния Π½Π° спрайты ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. Для этого Π½Π°ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ понадобится спрайт изобраТСния ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ, Π² нашСм случаС sprites_hover.gif, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚Π΅ ΠΆΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹, Ρ‡Ρ‚ΠΎ ΠΈ исходноС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, sprites.gif. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ любой эффСкт Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, содСрТит Ρ‚Ρ€ΠΈ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… изобраТСния ΠΈ Ρ‚Ρ€ΠΈ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… изобраТСния для эффСкта, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ для эффСктов Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ. Учитывая, Ρ‡Ρ‚ΠΎ это Π΅Π΄ΠΈΠ½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Π° Π½Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, Π² основном ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ изобраТСния Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ. ΠœΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ нСсколько строк ΠΊΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ эффСкт навСдСния:

     #Π΄ΠΎΠΌΠ°:Π½Π°Π²Π΅Π΄ΠΈΡ‚Π΅ {
      Ρ„ΠΎΠ½: url('sprites_hover.gif') 0-43px;
    } 

    ΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π½ΠΈΠΆΠ΅:

      <Π³ΠΎΠ»ΠΎΠ²Π°> <ΡΡ‚ΠΈΠ»ΡŒ> /*position установлСно ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π½Π΅Π³ΠΎ*/
    #навлист {
     ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: родствСнник;
    }
    /*ΠΏΠΎΠ»Π΅ установлСно Π½Π° 10 пиксСлСй, ΡΡ‚ΠΈΠ»ΡŒ списка ΡƒΠ΄Π°Π»Π΅Π½, всС элСмСнты списка ΠΈΠΌΠ΅ΡŽΡ‚ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Π²Π΅Ρ€Ρ…Π½Π΅Π΅ ΠΏΠΎΠ»Π΅ установлСно Π½Π° 20 пиксСлСй */
    #навлист Π»ΠΈ {
     полС: 10 пиксСлСй;
     ΡΡ‚ΠΈΠ»ΡŒ списка: Π½Π΅Ρ‚;
     ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅;
     Π²Π΅Ρ€Ρ…: 20 пиксСлСй;
     отступ слСва: 2px;
    }  /*высота всСх ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ 43px*/
    #navlist li, #navlist a {
     высота: 43 пиксСля;
     дисплСй: блок;
    }  /*ΠŸΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π²Π»Π΅Π²ΠΎ, ΡˆΠΈΡ€ΠΈΠ½Π° изобраТСния 43 пиксСля, Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ sprites.gif ΠΈ Π΅Π³ΠΎ позиция слСва 0 пиксСлСй, свСрху 0 пиксСлСй ΠΈ Π±Π΅Π· ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π°*/
    #Π΄ΠΎΠΌ {
     слСва: 0px;
     ΡˆΠΈΡ€ΠΈΠ½Π°: 43 пиксСля;
     background: url('sprites. gif') 0 0 Π±Π΅Π· ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π°; 
    }
    /*РасполагаСтся Π½Π° 63 пиксСля Π²Π»Π΅Π²ΠΎ, ΡˆΠΈΡ€ΠΈΠ½Π° изобраТСния составляСт 43 пиксСля, Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ β€” sprites.gif, Π° Π΅Π³ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ β€” Π½Π° 44 пиксСля справа ΠΎΡ‚ исходного изобраТСния*/
    #ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ {
     слСва: 63px;
     ΡˆΠΈΡ€ΠΈΠ½Π°: 43 пиксСля;
     background: url('sprites.gif') -44px 0 Π±Π΅Π· ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π°;
    }
    /*ΠŸΠΎΠ·ΠΈΡ†ΠΈΡ 129px Π²Π»Π΅Π²ΠΎ, Π° ΡˆΠΈΡ€ΠΈΠ½Π° изобраТСния β€” 43 пиксСля, Π° Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ β€” sprites.gif, Π° Π΅Π³ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ β€” 89 пиксСлов справа ΠΎΡ‚ исходного изобраТСния*/
    #Π½Π°Π·Π°Π΄ {
     слСва: 129 пиксСлСй;
     ΡˆΠΈΡ€ΠΈΠ½Π°: 43 пиксСля;
     background: url('sprites.gif') -89px 0 Π±Π΅Π· ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π°;
    }
    /*ΠŸΠΎΠ·ΠΈΡ†ΠΈΡ 0, ΡˆΠΈΡ€ΠΈΠ½Π° изобраТСния 43 пиксСля, Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ sprites_hover.gif */
    #Π΄ΠΎΠΌΠ°:Π½Π°Π²Π΅Π΄ΠΈΡ‚Π΅ {
     Ρ„ΠΎΠ½: url('sprites_hover.gif') 0-43px;
     полС слСва: 1px;
    }
    /*РасполагаСтся Π½Π° расстоянии 44 пиксСля справа ΠΎΡ‚ исходного изобраТСния ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ курсора, ΡˆΠΈΡ€ΠΈΠ½Π° изобраТСния составляСт 43 пиксСля, Π° Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ β€” sprites_hover.gif */  #Π΄Π°Π»Π΅Π΅:Π½Π°Π²Π΅Π΄ΠΈΡ‚Π΅ {
     Ρ„ΠΎΠ½: url('sprites_hover.gif') -44px -43px;
     ΠΏΠΎΠ»Π΅ справа: 5px;
     отступ: 1px;
    }
    /*РасполоТСниС Π½Π° 89px прямо ΠΈΠ· исходного изобраТСния ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ курсора, ΡˆΠΈΡ€ΠΈΠ½Π° изобраТСния составляСт 43 пиксСля, Π° Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ β€” sprites_hover.
    Comments