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

Maskowanie CSS


Dzięki maskowaniu CSS tworzysz warstwę maski, którą umieszczasz nad elementem, aby częściowo lub całkowicie ukryć części elementu.


Właściwość CSS mask-image

Właściwość CSS mask-imageokreśla obraz warstwy maski.

Obraz warstwy maski może być obrazem PNG, obrazem SVG, gradientem CSS lub elementem SVG <mask> .


Obsługa przeglądarki

Uwaga: większość przeglądarek ma tylko częściową obsługę maskowania CSS. Będziesz musiał użyć prefiksu -webkit- oprócz standardowej właściwości w większości przeglądarek.

Liczby w poniższej tabeli określają pierwszą wersję przeglądarki, która w pełni obsługuje tę właściwość. Liczby, po których następuje -webkit- określają pierwszą wersję, która działała z przedrostkiem.

Property
mask-image 4.0 -webkit- 79.0 -webkit- 53.0 4.0 -webkit- 15.0 -webkit-

Użyj obrazu jako warstwy maski

Aby użyć obrazu PNG lub SVG jako warstwy maski, użyj wartości url() do przekazania obrazu warstwy maski.

Obraz maski musi mieć przezroczysty lub półprzezroczysty obszar. Czarny oznacza w pełni przezroczysty.

Oto obraz maski (obraz PNG), którego użyjemy:

W3Schools.com

Oto zdjęcie z Cinque Terre we Włoszech:

Pięć krain

Teraz zastosujemy obraz maski (obraz PNG powyżej) jako warstwę maski dla obrazu z Cinque Terre we Włoszech:

Pięć krain

Przykład

Oto kod źródłowy:

.mask1 {
  -webkit-mask-image: url(w3logo.png);
  mask-image: url(w3logo.png);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

Przykład wyjaśniony

Właściwość mask-imageokreśla obraz, który ma być używany jako warstwa maskująca dla elementu.

Właściwość mask-repeatokreśla, czy lub w jaki sposób będzie powtarzany obraz maski. Wartość no-repeat wskazuje, że obraz maski nie zostanie powtórzony (obraz maski zostanie wyświetlony tylko raz).

Inny przykład

Jeśli pominiemy mask-repeatwłaściwość, obraz maski zostanie powtórzony na całym obrazie z Cinque Terre we Włoszech:

Pięć krain

Przykład

Oto kod źródłowy:

.mask1 {
  -webkit-mask-image: url(w3logo.png);
  mask-image: url(w3logo.png);
}


Użyj gradientów jako warstwy maski

Gradienty liniowe i radialne CSS mogą być również używane jako obrazy maski.

Przykłady gradientów liniowych

Tutaj używamy gradientu liniowego jako warstwy maski dla naszego obrazu. Ten liniowy gradient biegnie od góry (czarny) do dołu (przezroczysty):

Pięć krain
 

Przykład

Użyj gradientu liniowego jako warstwy maski:

.mask1 {
  -webkit-mask-image: linear-gradient(black, transparent);
  mask-image: linear-gradient(black, transparent);
}

Tutaj używamy gradientu liniowego wraz z maskowaniem tekstu jako warstwy maski dla naszego obrazu:

Cinque Terre to obszar przybrzeżny w Ligurii, w północno-zachodnich Włoszech. Leży w zachodniej części prowincji La Spezia i obejmuje pięć wiosek: Monterosso al Mare, Vernazza, Corniglia, Manarola i Riomaggiore.

Cinque Terre to obszar przybrzeżny w Ligurii, w północno-zachodnich Włoszech. Leży w zachodniej części prowincji La Spezia i obejmuje pięć wiosek: Monterosso al Mare, Vernazza, Corniglia, Manarola i Riomaggiore.

Cinque Terre to obszar przybrzeżny w Ligurii, w północno-zachodnich Włoszech. Leży w zachodniej części prowincji La Spezia i obejmuje pięć wiosek: Monterosso al Mare, Vernazza, Corniglia, Manarola i Riomaggiore.

Przykład

Użyj gradientu liniowego wraz z maskowaniem tekstu jako warstwy maski:

.mask1 {
  max-width: 600px;
  height: 350px;
  overflow-y: scroll;
  background: url(img_5terre.jpg) no-repeat;
  -webkit-mask-image: linear-gradient(black, transparent);
  mask-image: linear-gradient (black, transparent);
}

Przykłady gradientów promieniowych

Tutaj używamy gradientu radialnego (w kształcie koła) jako warstwy maski dla naszego obrazu:

Pięć krain

Przykład

Użyj gradientu promieniowego jako warstwy maskującej (koła):

.mask2 {
  -webkit-mask-image: radial-gradient(circle, black 50%, rgba(0, 0, 0, 0.5) 50%);
  mask-image: radial-gradient(circle, black 50%, rgba(0, 0, 0, 0.5) 50%);
}

Tutaj używamy gradientu radialnego (w kształcie elipsy) jako warstwy maskującej dla naszego obrazu:

Pięć krain

Przykład

Użyj innego gradientu promieniowego jako warstwy maskującej (elipsy):

.mask3 {
  -webkit-mask-image: radial-gradient(ellipse, black 50%, rgba(0, 0, 0, 0.5) 50%);
  mask-image: radial-gradient(ellipse, black 50%, rgba(0, 0, 0, 0.5));
}

Użyj SVG jako warstwy maski

Element SVG <mask>może być używany wewnątrz grafiki SVG do tworzenia efektów maskowania.

Tutaj używamy <mask>elementu SVG do tworzenia różnych warstw maski dla naszego obrazu:

Sorry, your browser does not support inline SVG.

Przykład

Warstwa maski SVG (utworzona jako trójkąt):

<svg width="600" height="400">
  <mask id="svgmask1">
    <polygon fill="#ffffff" points="200 0, 400 400, 0 400"></polygon>
  </mask>
  <image xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="img_5terre.jpg" mask="url(#svgmask1)"></image>
</svg>
Sorry, your browser does not support inline SVG.

Przykład

Warstwa maski SVG (utworzona jako gwiazda):

<svg width="600" height="400">
  <mask id="svgmask2">
    <polygon fill="#ffffff" points="100,10 40,198 190,78 10,78 160,198"></polygon>
  </mask>
  <image xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="img_5terre.jpg" mask="url(#svgmask2)"></image>
</svg>
Sorry, your browser does not support inline SVG.

Przykład

Warstwa maski SVG (utworzona jako koła):

<svg width="600" height="400">
  <mask id="svgmask3">
    <circle fill="#ffffff" cx="75" cy="75" r="75"></circle>
    <circle fill="#ffffff" cx="80" cy="260" r="75"></circle>
    <circle fill="#ffffff" cx="270" cy="160" r="75"></circle>
  </mask>
  <image xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="img_5terre.jpg" mask="url(#svgmask3)"></image>
</svg>

Właściwości maskowania CSS

W poniższej tabeli wymieniono wszystkie właściwości maskowania CSS:

Property Description
mask-image Specifies an image to be used as a mask layer for an element
mask-mode Specifies whether the mask layer image is treated as a luminance mask or as an alpha mask
mask-origin Specifies the origin position (the mask position area) of a mask layer image
mask-position Sets the starting position of a mask layer image (relative to the mask position area)
mask-repeat Specifies how the mask layer image is repeated
mask-size Specifies the size of a mask layer image