Свойство background-clip
Свойството background-clip определя как
фоновото запълване или фоновото изображение ще се
разполага спрямо елемента: под границата,
само вътре в padding или само над съдържанието.
Особености
- При използване на
border-boxс прозрачни граници фонът ще се вижда под тях - Стойността
textизисква вендорни префикси за пълна поддръжка - Свойството работи с градиенти и множествени фонове
- При
border-radiusфонът се изрязва по заоблените ъгли
Поддръжка от браузъри
Всички съвременни браузъри поддържат border-box, padding-box и content-box.
Стойността text изисква префикс -webkit- и се поддържа в Chrome, Safari, Edge.
Синтаксис
селектор {
background-clip: border-box | padding-box | content-box | text;
}
Стойности
| Стойност | Описание |
|---|---|
border-box |
Фонът се разпростира до външния ръб на границата (под границата). |
padding-box |
Фонът се изрязва по вътрешния ръб на границата (не навлиза под border). |
content-box |
Фонът се показва само над съдържанието (изрязва се padding). |
text |
Фонът се изрязва по текста. |
Стойност по подразбиране: border-box.
Пример . Стойност border-box
Фонът навлиза под полупрозрачната граница:
<div id="elem"></div>
#elem {
background-clip: border-box;
background-color: #ffd6d6;
background-repeat: no-repeat;
border: 10px dashed rgba(0,0,0,0.3);
padding: 30px;
width: 250px;
height: 150px;
}
:
Пример .Стойност padding-box
Фонът не навлиза под границата:
<div id="elem"></div>
#elem {
background-clip: padding-box;
background-color: #ffd6d6;
background-repeat: no-repeat;
border: 10px dashed rgba(0,0,0,0.5);
padding: 30px;
width: 250px;
height: 150px;
}
:
Пример . Стойност content-box
Фонът не навлиза върху padding:
<div id="elem">
text text text text text
text text text text text
text text text text text
</div>
#elem {
background-clip: content-box;
background-color: #ffd6d6;
background-repeat: no-repeat;
border: 10px dashed rgba(0,0,0,0.3);
padding: 30px;
width: 250px;
height: 150px;
}
:
Пример . Стойност text
Фонът се изрязва по текста (изисква се -webkit-text-fill-color
в стойност transparent):
<div id="elem">text text text</div>
#elem {
display: inline-block;
background: linear-gradient(to right, red, blue);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
font-size: 40px;
font-weight: bold;
}
:
Вижте също
-
свойство
background,
представляващо свойство-съкращение за фон -
свойство
background-origin,
определящо началната позиция на фона