Samouczek CSS

Strona główna CSS Wprowadzenie do CSS Składnia CSS Selektory CSS Instrukcje CSS Komentarze CSS Kolory CSS Tła CSS Granice CSS Marginesy CSS Dopełnienie CSS Wysokość/szerokość CSS Model skrzynki CSS Zarys CSS Tekst CSS Czcionki CSS Ikony CSS Linki CSS Listy CSS Tabele CSS Wyświetlanie CSS Maks. szerokość CSS Pozycja CSS CSS Z-indeks Przepełnienie CSS zmiennoprzecinkowy CSS Wbudowany blok CSS Wyrównanie CSS Kombinatory CSS CSS Pseudo-klasa Pseudoelement CSS Krycie CSS Pasek nawigacyjny CSS Listy rozwijane CSS Galeria obrazów CSS Sprite obrazu CSS Selektory atrybutów CSS Formularze CSS Liczniki CSS Układ strony internetowej CSS Jednostki CSS Specyfika CSS CSS !ważne Funkcje matematyczne CSS

Zaawansowane CSS

Zaokrąglone rogi CSS Obrazy obramowania CSS Tła CSS Kolory CSS Słowa kluczowe w kolorze CSS Gradienty CSS Cienie CSS Efekty tekstowe CSS Czcionki internetowe CSS Przekształcenia CSS 2D Przekształcenia CSS 3D Przejścia CSS Animacje CSS Etykietki CSS Obrazy w stylu CSS Odbicie obrazu CSS Dopasowanie obiektu CSS Pozycja obiektu CSS Maskowanie CSS Przyciski CSS Paginacja CSS Wiele kolumn CSS Interfejs użytkownika CSS Zmienne CSS Rozmiar pola CSS Zapytania o media CSS Przykłady CSS MQ Flexbox CSS

CSS Responsywne

Wprowadzenie do RWD Okienko RWD Widok siatki RWD Zapytania dotyczące mediów RWD Obrazy RWD Filmy RWD Ramy RWD Szablony RWD

Siatka CSS

Wprowadzenie do siatki Pojemnik na siatkę Element siatki

CSS SASS

Samouczek SASS

Przykłady CSS

Szablony CSS Przykłady CSS quiz css Ćwiczenia CSS Certyfikat CSS

Odniesienia CSS

Dokumentacja CSS Selektory CSS Funkcje CSS Dźwięk referencyjny CSS Bezpieczne czcionki internetowe CSS Animowalny CSS Jednostki CSS Konwerter CSS PX-EM Kolory CSS Wartości kolorów CSS Domyślne wartości CSS Obsługa przeglądarki CSS

Sprite obrazu CSS


Sprites obrazu

Sprite obrazu to zbiór obrazów umieszczonych w jednym obrazie.

Wczytywanie strony internetowej z wieloma obrazami może zająć dużo czasu i generuje wiele żądań serwera.

Używanie sprite'ów obrazu zmniejszy liczbę żądań serwera i oszczędzi przepustowość.


Obraz Sprites — prosty przykład

Zamiast używać trzech oddzielnych obrazów, używamy tego pojedynczego obrazu ("img_navsprites.gif"):

obrazy nawigacyjne

Dzięki CSS możemy pokazać tylko tę część obrazu, której potrzebujemy.

W poniższym przykładzie CSS określa, którą część obrazu „img_navsprites.gif” należy wyświetlić:

Przykład

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

Przykład wyjaśniony:

  • <img id="home" src="img_trans.gif">- Definiuje tylko mały przezroczysty obrazek, ponieważ atrybut src nie może być pusty. Wyświetlany obraz będzie obrazem tła, który określamy w CSS
  • width: 46px; height: 44px; - Określa część obrazu, którego chcemy użyć
  • background: url(img_navsprites.gif) 0 0; - Definiuje obraz tła i jego położenie (lewy 0px, górny 0px)

To najłatwiejszy sposób na użycie ikonek obrazkowych, teraz chcemy go rozszerzyć za pomocą linków i efektów najechania.


Image Sprites - Utwórz listę nawigacyjną

Chcemy użyć obrazu duszka ("img_navsprites.gif") do stworzenia listy nawigacyjnej.

Użyjemy listy HTML, ponieważ może to być link, a także obsługuje obraz tła:

Przykład

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

Przykład wyjaśniony:

  • #navlist {position:relative;} — pozycja jest ustawiona na relatywną, aby umożliwić bezwzględne pozycjonowanie wewnątrz niej
  • #navlist li {margin:0;padding:0;list-style:none;position:absolute;top:0;} — margines i dopełnienie są ustawione na 0, styl listy jest usuwany, a wszystkie elementy listy są pozycjonowane bezwzględnie
  • #navlist li, #navlist a {height:44px;display:block;} - wysokość wszystkich obrazów to 44px

Teraz zacznij ustalać pozycję i styl dla każdej konkretnej części:

  • #home {left:0px;width:46px;} - Umieszczony maksymalnie w lewo, a szerokość obrazu to 46px
  • #home {background:url(img_navsprites.gif) 0 0;} - Określa obraz tła i jego położenie (lewy 0px, górny 0px)
  • #prev {left:63px;width:43px;} - Umieszczony 63px po prawej (#home szerokość 46px + dodatkowa przestrzeń między elementami), a szerokość to 43px.
  • #prev {background:url('img_navsprites.gif') -47px 0;} - Definiuje obraz tła 47px w prawo (#home szerokość 46px + 1px linia podziału)
  • #next {left:129px;width:43px;}- Umieszczony 129px po prawej (początek #prev to 63px + #prev width 43px + dodatkowa spacja), a szerokość to 43px.
  • #next {background:url('img_navsprites.gif') -91px 0;} - Definiuje obraz tła 91px po prawej (#home szerokość 46px + 1px linia podziału + #prev szerokość 43px + 1px linia podziału )


Sprites obrazu – efekt zawisu

Teraz chcemy dodać efekt najechania do naszej listy nawigacyjnej.

Wskazówka: Selektora :hovermożna używać na wszystkich elementach, nie tylko na linkach.

Nasz nowy obraz („img_navsprites_hover.gif”) zawiera trzy obrazy nawigacyjne i trzy obrazy do użycia w efektach najechania:

obrazy nawigacyjne

Ponieważ jest to jeden obraz, a nie sześć oddzielnych plików, nie będzie opóźnienia ładowania , gdy użytkownik najedzie kursorem na obraz.

Dodajemy tylko trzy wiersze kodu, aby dodać efekt najechania:

Przykład

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

Przykład wyjaśniony:

  • #home a:hover {background: url('img_navsprites_hover.gif') 0 -45px;} - Dla wszystkich trzech obrazów po najechaniu myszą określamy tę samą pozycję tła, tylko 45px dalej w dół