Własność CSS background-clip

> Dodaj do ulubionych

Własność CSS background-clip określa obszar elementu, do którego ma zostać przycięty obraz ustawiony w tle.

W modelu polowym CSS wyróżnione są trzy obszary zawartości elementu: obszar obramowania, obszar dopełnienia i obszar treści. Własność background-clip pozwala przyciąć obraz ustawiony w tle do jednego z tych obszarów lub tylko do obszaru pokrytego tekstem.

Wartości i składnia

Własność background-clip jako wartość przyjmuje jedno z następujących słów kluczowych: border-box, content-box, padding-box i text.

border-box

Ta wartość powoduje, że obraz w tle jest przycinany do granic pola obramowania elementu:
border: 10px dashed lightpink;
background-clip: border-box;
padding: 20px;

Przykładowy efekt:

Własność background-clip ustawiona na border-box

Zgodnie z ustawieniem własności background-clip na border-box obraz w tle powinien być widoczny pod obramowaniem z wszystkich stron, a w tym przypadku nie jest.

Jest to spowodowane tym, że nie zdefiniowaliśmy własności background-origin, więc przyjęła ona wartość domyślną padding-box, która powoduje, że obraz tła zaczyna się od krawędzi dopełnienia. Aby to naprawić (jeśli nie to było naszą intencją), wystarczy nadać własności background-origin wartość border-box:

border: 10px dashed lightpink;
background-clip: border-box;
background-origin: border-box;
padding: 20px;

Efekt:

Własność background-clip ustawiona na border-box i background-origin ustawiona na border-box

padding-box

Ta wartość powoduje, że obraz w tle jest przycinany do obszaru pola dopełnienia elementu, np.:

border: 5px dashed lightpink;
background-clip: padding-box;
padding: 20px;

Przykładowy efekt:

Własność background-clip ustawiona na padding-box

Należy pamiętać, że tak jak w przypadku wartości border-box, na działanie tej własności ma wpływ ustawienie własności background-origin. Jeśli ma ona wartość content-box, to obraz tła będzie zaczynał się w obszarze treści, a nie w obszarze dopełnienia:

background-clip: padding-box;
background-origin: content-box;

Efekt:

Własność background-clip ustawiona na padding-box i background-origin ustawiona na content-box

content-box

Ta wartość powoduje, że obraz w tle jest przycinany do obszaru pola treści elementu, np.:

border: 5px dashed lightpink;
background-clip: content-box;
padding: 20px;

Efekt:

Własność background-clip ustawiona na content-box

text

Ta wartość powoduje, że obraz tła elementu jest widoczny tylko w obszarze zajmowanym przez tekst znajdujący się w treści tego elementu. To oznacza, że można go zobaczyć tylko wtedy, gdy ten tekst jest przynajmniej częściowo przezroczysty. Ta wartość pozwala osiągnąć bardzo ciekawe efekty wizualne, np. dzięki użyciu gradientów:

border: 5px dashed lightpink;
background-image: linear-gradient(to right, red, green, blue, pink, yellow);
color: transparent;
background-clip: text;

Efekt:

Własność background-clip ustawiona na text

Zastosowanie

Własność CSS background-clip ma zastosowanie do wszystkich elementów HTML.

Podsumowanie

ZastosowanieWszystkie elementy HTML
Obsługiwane wartościSłowa kluczowe: border-box, content-box, padding-box, text.
Wartość początkowaborder-box
DziedziczenieNie
SpecyfikacjaCSS Backgrounds and Borders Module Level 3, własność background-clip