Latest web development tutorials

Technologia CSS obraz mozaiki

Podział obrazu

Spłaszczyć obraz jest zbiorem pojedynczych obrazów.

Istnieje wiele obrazów na stronie może zająć dużo czasu, aby załadować i generuje wiele żądań serwera.

Użyj serwera podział obrazu zmniejszy liczbę żądań i zapisać przepustowości.


Podział obrazu - Prosty przykład

Zamiast korzystać z trzech oddzielnych obrazów, jak korzystać z tego jeden obraz ( "img_navsprites.gif"):

Obrazy nawigacyjne

Z CSS, możemy pokazać tylko część obrazu potrzebujemy.

W poniższym przykładzie pokazano część określonej CSS "img_navsprites.gif" obraz:

Przykłady

img.home
{
width:46px;
height:44px;
background:url(img_navsprites.gif) 0 0;
}

Spróbuj »

Przykłady analizy:

  • <Img class = "home" src = "img_trans.gif" /> - ponieważ nie mogą być puste, atrybut src definiuje jedynie mały przezroczysty obraz. Obraz wyświetlany będzie nam określić w CSS obrazów tła
  • Width: 46px; height: 44px; - określona część obrazu, którego używamy
  • background: url (img_navsprites.gif) 0 0, - niestandardowy obraz tła, a jego położenie (lewy 0px, top 0px)

Odbywa się to za pomocą obraz podzielony najprostszy sposób, a teraz używamy linków i unoszą się efektów.


Spłaszczyć obraz - aby utworzyć listę nawigację

Chcemy korzystać z podzielonego obrazu ( "img_navsprites.gif"), aby utworzyć listę nawigacji.

Użyjemy listę HTML, ponieważ może to być związane, a także obsługuje obraz tła:

Przykłady

#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;}
#home{background:url('img_navsprites.gif') 0 0;}

#prev{left:63px;width:43px;}
#prev{background:url('img_navsprites.gif') -47px 0;}

#next{left:129px;width:43px;}
#next{background:url('img_navsprites.gif') -91px 0;}

Spróbuj »

Przykłady analizy:

  • #navlist {position: relative;} - pozycja jest ustawiona względnego położenia umożliwiają pozycjonowanie bezwzględne wewnątrz
  • #navlist li {margin: 0; padding: 0; list-style: none; position: absolute; top: 0;} - marża i wyściółka jest ustawiony na 0, styl lista zostanie usunięte, wszystkie elementy listy są absolutne pozycjonowanie
  • #navlist li, #navlist się {height: 44px; display: block;} - wysokość wszystkich obrazów jest 44px

Teraz każdy specyficzny element pozycjonowania i styl:

  • #home {left: 0px; width: 46px;} - umieszczone po lewej stronie, a sposób szerokość obrazu jest 46px
  • #home {background: url (img_navsprites.gif) 0 0;} - niestandardowy obraz tła, a jego położenie (lewy 0px, top 0px)
  • #prev {left: 63px; width: 43px;} - po prawej 63px pozycjonowania (#home szerokość 46px + jakiejś dodatkowej przestrzeni między elementami), szerokości 43px.
  • #prev {background: url ( "img_navsprites.gif ') -47px 0;} - niestandardowy obraz tła po prawej 47px (#home dzielniki szerokość 46px + 1px)
  • #next {left: 129px; width: 43px;} - do prawego 129px pozycjonowania (#prev 63px + szerokość #prev jest 43px + pozostała przestrzeń), szerokość wynosi 43px.
  • #next {background: url ( "img_navsprites.gif") no-repeat -91px 0;} - niestandardowy obraz tła po prawej 91px (#home 46px + 1px podziału linii + # prev szerokość 43px + 1px dzielniki)

Spłaszczenie obrazu s - unoszą się efekt

Teraz chcemy, aby nasza lista nawigacji dodać efekt hover.

lampa : Selektor efekt aktywowania dla Najedź kursorem na ekranie elementu

Selektor Tip :: aktywowania mogą być stosowane do wszystkich elementów.

Nasz nowy obraz ( "img_navsprites_hover.gif") zawiera trzy obrazy nawigacyjnych i trzy obrazy:

Obrazy nawigacyjne

Ponieważ jest to pojedynczy obraz, zamiast sześciu oddzielny plik obrazu, gdy użytkownik przebywa na obrazie nie opóźni załadunek.

Dodajmy efektów hover p dodawać tylko trzy wiersze kodu:

Przykłady

#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;}

Spróbuj »

Przykłady analizy:

  • Ponieważ element listy zawiera link, możemy użyć: hover Pseudo-klasa
  • #home a: hover {background: transparent url (img_navsprites_hover.gif) 0 -45px;} - Dla wszystkich trzech obrazów unoszą się określić tę samą pozycję w tle, ale potem w dół na 45 każdego