Propiedad background-clip
La propiedad background-clip define cómo
el relleno de fondo o la imagen de fondo se
colocarán en relación con el elemento: bajo el borde,
solo dentro del padding o solo sobre el contenido.
Características
- Al usar
border-boxcon bordes transparentes, el fondo será visible debajo de ellos - El valor
textrequiere prefijos de vendor para soporte completo - La propiedad funciona con gradientes y fondos múltiples
- Con
border-radiusel fondo se recorta según las esquinas redondeadas
Soporte de navegadores
Todos los navegadores modernos soportan border-box, padding-box y content-box.
El valor text requiere el prefijo -webkit- y es compatible con Chrome, Safari, Edge.
Sintaxis
selector {
background-clip: border-box | padding-box | content-box | text;
}
Valores
| Valor | Descripción |
|---|---|
border-box |
El fondo se extiende hasta el borde exterior del borde (bajo el borde). |
padding-box |
El fondo se recorta según el borde interior del borde (no pasa bajo border). |
content-box |
El fondo se muestra solo sobre el contenido (se recorta el padding). |
text |
El fondo se recorta según el texto. |
Valor por defecto: border-box.
Ejemplo . Valor border-box
El fondo pasa bajo el borde semitransparente:
<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;
}
:
Ejemplo . Valor padding-box
El fondo no pasa bajo el borde:
<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;
}
:
Ejemplo . Valor content-box
El fondo no pasa al padding:
<div id="elem">
texto texto texto texto texto
texto texto texto texto texto
texto texto texto texto texto
</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;
}
:
Ejemplo . Valor text
El fondo se recorta según el texto (se requiere -webkit-text-fill-color
con valor transparent):
<div id="elem">texto texto texto</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;
}
:
Véase también
-
la propiedad
background,
que es una propiedad abreviada para el fondo -
la propiedad
background-origin,
que define la posición de origen del fondo