Fondos CSS
La propiedad background de CSS es usado para definir efectos de fondo para los elementos HTML.
Las variantes de la propiedad background de CSS son:
- background-color
- background-image
- background-repeat
- background-attachment
- background-position
Color de Fondo
La propiedad background-color
especifica el color de fondo de un elemento HTML.
El color de fondo de una página es especificado de la siguiente manera:
body {
background-color: lightblue;
}
En CSS, los colores se definen de diferentes maneras como a continuación se muestran:
- Un valor Hexadecimal como "#ff0000".
- Un valor RGB como: "rgb(255,0,0)".
- Un nombre de color valido como: "red".
En el siguiente ejemplo a los elementos HTML <h1>, <p> y <div> se le definen colores de fondo diferente:
h1 {
background-color: green;
}
div {
background-color: lightblue;
}p {
background-color: yellow;
}
Imagen de fondo
La propiedad background-image
especifica una imagen para usarla como fondo para un elemento HTML.
Por comportamiento predeterminado la imagen es repetida para cubrir todo el elemento.
Un fondo de imagen para una página se especifica de la siguiente forma:
body{
background-image: url("fondo.gif");
}
Imagen de Fondo - Repetir Horizontal o Vertical
Por comportamiento predeterminado, la propiedad background-image
repite una imagen tanto horizontal como vertical.
En algunos casos las imágenes deberían de repetirse solo u horizontal o vertical, en estos casos podemos utilizar la propiedad
background-repeat
.
En el siguiente ejemplo mostramos como especificar una imagen y sea repetida horizontalmente únicamente:
body {
background-image: url("fondo.png");
background-repeat: repeat-x;
}
Para repetir una imagen verticalmente utilizamos background-repeat: repeat-y;
.
Fondo de Imagen - definir la posición y no repetir
Mostrando la imagen de fondo una sola vez también esta especificado por la propiedad background: repeat
:
body {
background-image: url(fondo.png);
background-repeat: no-repeat;
}
En el ejemplo anterior, la imagen de fondo es mostrada en el mismo sitio del texto, es decir, cargado a la izquierda. Si queremos hacer un cambio y cargar la imagen a la derecha; lo podemos definir con la propiedad background-position:
body {
background-image: url(fondo.png);
background-repeat: no-repeta;
background-position: right top;
}
Imagen de Fondo - Posición Fija
Para especificar que la imagen de fondo sea fija (que no se desplace con el resto de la página) utilice la propiedad background-attachment
:
body {
background-image: url(fondo.png);
background-repeat: no-repeat;
background-position: right top;
background-attachment: fixed;
}
Background - Propiedad abreviada
Para acortar el código, también es posible especificar todas las propiedades de fondo en una sola propiedad. Esto es llamada propiedad abreviada.
La propiedad abreviada para fondos es background
:
body {
background: #ffffff url(fondo.png) no-repeat right top;
}
Cuando usas la propiedad abreviada de background
el orden de los valores es:
- background-color
- background-image
- background-repeat
- background-attachment
- background-position
Si alguno de los valores no es definido no importa, siempre y cuando los demás sigan el orden.