• Inicio
    • Recursos
  • Marcado HTML
  • Estilos CSS
  • JavaScript
  • Publicación
  • Prácticas
    • 1ª Evaluación
    • 2ª Evaluación
    • 3ª Evaluación
 
 
Curso 2022/2023 | 2º BACHILLERATO

 Tecnologías de la Información y la Comunicación | TIC-II 

icon html5
icon css3
icon css3


Fondos de página web

El modelo de cajas o "box model" es seguramente la característica más importante del lenguaje de hojas de estilos CSS, ya que condiciona el diseño de todas las páginas web. El modelo de cajas es el comportamiento de CSS que hace que todos los elementos de las páginas se representen mediante cajas rectangulares.

Las cajas de una página se crean automáticamente. Cada vez que se inserta una etiqueta HTML se crea una nueva caja rectangular que encierra los contenidos de ese elemento.

Las cajas de las páginas no son visibles a simple vista porque inicialmente no muestran ningún color de fondo ni ningún borde.

Los navegadores crean y colocan las cajas de forma automática, pero CSS permite modificar todas sus características, de manera que cada una de las cajas está formada por seis partes:

  1. Contenido (texto)
  2. Relleno (padding), siempre es un elemento transparente
  3. Borde (border), con canal alfa variamos su transparencia
  4. Imagen de fondo (background-image)
  5. Color de fondo (background-color), con canal alfa variamos su transparencia
  6. Margen (margin), siempre es un elemento transparente

box model

Teniendo en cuenta esta distribución, podemos crear fondos de distintos tipos tanto para los elementos HTML como para toda la página web si modificamos las características de la etiqueta body.

Tipos de fondos

Antes de cambiar el fondo, colocaremos estas propiedades CSS


*, *::after, *::before { box-sizing: border-box; }
* { margin:0; padding:0; border: 0 none transparent; }

html { font: 16px/1.3 sans-serif; color: #aaa;}

Todos los fondos de los ejemplos son "Responsive Design"

  Fondo con un color sólido o semitransparente

  Fondo con un color sólido o semitransparente

Lo más sencillo es colocar un color de fondo sólido en una página web. Si utilizamos la notación rgba o hsla podemos variar la transparencia del color.

Si solo vamos a cambiar el color del fondo, podemos colocar la propiedad background-color dentro del selector de tipo body. Si además vamos a utilizar la propiedad opacity, entonces es necesario incluirla dentro del pseudoelemento ::before o ::after  para no alterar la visibilidad de toda la página.

Ver demo


body {
    max-width  : 100vw;
    min-height : 100vh;
    position   : relative;
/* FONDO CON COLOR SÓLIDO (O SEMITRANSPARENTE UTILIZANDO CANAL ALFA) */ 
    background-color : steelblue;
    /* background-color : hsla(34, 44%, 69%, 0.5);  */
    /* background-color : rgba(70, 130, 180, 0.8);  */
}
  Fondo con imagen que se repite

  Fondo con imagen que se repite

Como la imagen se repite simula una textura. La imagen la creamos previamente con un programa gráfico, como Photoshop. La imagen puede ser semitransparente para combinarla con un color de fondo sólido.

Ver demo


body {
    max-width  : 100vw;
    min-height : 100vh;
    position   : relative;
}
body::after {
  content    : "";
  width      : 100%;
  min-height : 100%;
  position   : absolute;
  top        : 0;
  left       : 0;
  z-index    : -2;

/* FONDO CON DIFERENTE OPACIDAD */ 
    opacity  : 1;
/* FONDO CON IMAGEN COMO TEXTURA REPETIDA */
    background-image: url(fondos/bg07.png);
}
  Fondos con distinta opacidad

  Fondos con distinta opacidad

Utilizando la propiedad opacity con valores entre 0 (transparente) y 1 (opaco) podemos obtener fondos muy interesantes si la combinamos con colores o imágenes de fondo.


body {
    max-width  : 100vw;
    min-height : 100vh;
    position   : relative;
}
body::after {
  content    : "";
  width      : 100%;
  min-height : 100%;
  position   : absolute;
  top        : 0;
  left       : 0;
  z-index    : -2;

/* FONDO CON DIFERENTE OPACIDAD */ 
    opacity  : 1;
}
/* FONDO CON COLOR SÓLIDO */ 
    background-color : steelblue;
  Fondo con una imagen escalada

  Fondo con una imagen escalada

Empleando imágenes optimizadas podemos rellenar todo el espacio disponible (full-whidt) de una página web.

Ver demo


body {
    max-width  : 100vw;
    min-height : 100vh;
    position   : relative;
}
body::after {
  content    : "";
  width      : 100%;
  min-height : 100%;
  position   : absolute;
  top        : 0;
  left       : 0;
  z-index    : -2;

/* FONDO CON DIFERENTE OPACIDAD */ 
    opacity  : 1;

/* FONDO CON IMAGEN FULL-WIDTH */
    background      : url(../img/3.jpg) no-repeat center fixed;
    background-size : cover;
}
  Fondos con distintos filtros de imagen

  Fondos con distintos filtros de imagen

Con fondos con imágenes Full-Width y utilizando la propiedad filter podemos obtener fondos atractivos y sugerentes.

Especificación de filter en W3D

filer

  Fondo con distintos tipos de degradados

  Fondo con distintos tipos de degradados

Utilizando las propiedades radial-gradient y lineal-gradient creamos fondos con gradientes sencillos pero bastante interesantes.

Ver demo


body {
    max-width  : 100vw;
    min-height : 100vh;
    position   : relative;
}
body::after {
  content    : "";
  width      : 100%;
  min-height : 100%;
  position   : absolute;
  top        : 0;
  left       : 0;
  z-index    : -2;

/* FONDO CON DIFERENTE OPACIDAD */ 
    opacity  : 1;

/* FONDO CON GRADIENTE RADIAL */
    background: radial-gradient(steelblue, black 200%);

/* FONDO CON GRADIENTE LINEAL */
    /* background: linear-gradient(180deg,steelblue, black 200%); */
}
  Fondos con un tipo de patrón creado solo con CSS

  Fondos con un tipo de patrón creado solo con CSS

Con una buena dosis de creatividad podemos crear patrones solo con css y jugando con background, linear-gradient y radial-gradient.

Ver demo


body {
    max-width  : 100vw;
    min-height : 100vh;
    position   : relative;
}
body::after {
  content    : "";
  width      : 100%;
  min-height : 100%;
  position   : absolute;
  top        : 0;
  left       : 0;
  z-index    : -2;

/* FONDO CON PATRONES */
    /* PATRÓN carbon fibre */
    background :
      radial-gradient(black 15%, transparent 16%) 0 0,
      radial-gradient(black 15%, transparent 16%) 8px 8px,
      radial-gradient(rgba(255,255,255,.1) 15%, transparent 20%) 0 1px,
      radial-gradient(rgba(255,255,255,.1) 15%, transparent 20%) 8px 9px;
    background-color :#282828;
    background-size  :16px 16px;
    opacity: 0.8;

    /* PATRÓN blueprint grid */
    /* 
        background-color:#269;
        background-image:
            linear-gradient(white 2px, transparent 2px),
            linear-gradient(90deg, white 2px, transparent 2px),
            linear-gradient(rgba(255,255,255,.3) 1px, transparent 1px),
            linear-gradient(90deg, rgba(255,255,255,.3) 1px, transparent 1px);
        background-size:100px 100px, 100px 100px, 20px 20px, 20px 20px;
        background-position:-2px -2px, -2px -2px, -1px -1px, -1px -1px
    */
}
  Fondos con un video escalado

  Fondos con un video escalado

También podemos poner un vídeo como fondo de pantalla, que rellene todo el espacio disponible (full-whidt) de la página web. Lo importante es tener siempre presente que debemos optimizar su peso al máximo (1 o 2 MB como mucho).

Ver demo


<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="/tic2/css/normalize.css">
    <link rel="stylesheet" href="/tic2/css/estilos.css">
    <meta name="author" content="(cc) 3con14" />    
    <title>Fondos de páginas Web</title>
</head>
<body>

    <video id="video-bg" autoplay loop src="/tic2/media/video_lento.mp4"></video>

</body>
</html>


body {
    max-width  : 100vw;
    min-height : 100vh;
    position   : relative;
}
body::after {
  content    : "";
  width      : 100%;
  min-height : 100%;
  position   : absolute;
  top        : 0;
  left       : 0;
  z-index    : -2;

 /* FONDO CON DIFERENTE OPACIDAD */ 
    opacity  : 0.8;

 /* FONDO CON COLOR SÓLIDO (O SEMITRANSPARENTE UTILIZANDO CANAL ALFA) */ 
    background-color : steelblue;
}
#video-bg { 
    position: fixed;
    min-width: 100%;
    min-height: 134%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
    /* opacity: 0.5; */
    /* filter: sepia(100%); */
    filter: grayscale(100%);
}
Fondo show aleatorio de imagenes

Fondo show aleatorio de imagenes

Podemos presentar imágenes aleatorias que se desvanecen. Pulsa Ctrl+F5 para refrescar la página.

Ver demo


<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="/tic2/css/normalize.css">
    <link rel="stylesheet" href="/tic2/css/estilos.css">
    <meta name="author" content="(cc) 3con14" />    
    <title>Fondos de páginas Web</title>
</head>
<body>

    <div class="desvanecer ima"></div>

</body>
</html>


body {
  background-color: black;
}

.desvanecer {
  -webkit-animation: efecto-desvanecer 3s infinite ease-in-out alternate;
  animation: efecto-desvanecer 3s infinite ease-in-out alternate;
}

.ima {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-image: url('https://loremflickr.com/500/300');
  background-size: cover;
  background-position: 0%;
}

@-webkit-keyframes efecto-desvanecer {
  50% {
    -webkit-filter: brightness(1) contrast(1) saturate(1);
    filter: brightness(1) contrast(1) saturate(1);
  }
  100% {
    -webkit-filter: brightness(0) contrast(5) saturate(0.5);
    filter: brightness(0) contrast(5) saturate(0.5);
  }
}

@keyframes efecto-desvanecer {
  50% {
    -webkit-filter: brightness(1) contrast(1) saturate(1);
    filter: brightness(1) contrast(1) saturate(1);
  }
  100% {
    -webkit-filter: brightness(0) contrast(5) saturate(0.5);
    filter: brightness(0) contrast(5) saturate(0.5);
  }
}

 

  • Anterior
  • Siguiente

CSS

  • CSS básico responsive para tareas
  • Normalizar CSS
  • Fondos de página web
  • Tipografías Web
  • El primer Layout
  • Responsive Web Design
  • Movimientos en CSS

Teoría

Guías completas

Guías completas

  • LibrosWeb HTML
  • Vocabulario HTML
  • Guía HTML5 y HTML
  • Guía CSS 2.1 y CSS3
  • Guía JavaScript
  • HTML Reference
  • CSS Reference
Cheat Sheets

Cheat Sheets

html css js

  • HTML CheatSheet
  • CSS CheatSheet
  • JS CheatSheet

Herramientas

Para Código

Para Código

  • Sublime-Text | Ext.
  • Visual Studio Code | Ext ≡
  • Preprocesador: Prepros
  • Editor online: CodePen
Otras ...

Otras ...

  • Cliente - FTP: Filezilla
  • Capturador: PicPick
  • Visor: Sumatra-PDF
  • Acrobat Reader - PDF
  • Compresor: 7zip
  • Reproductor: VLC
  • MathJax - AsciiMath
Portables

Portables

  • Visual Studio Code [Ext]
  • Sublime Text
  • Sumatra PDF
  • Chrome Portable
  • Opera Portable
  • FireFox Portable
Código BASE

Código BASE

  • Template: base1_tareas
  • Template: base2_layout
  • Template: base3_menu
  • Imágenes: HDWallpapers
Hosting

Hosting

  • DriveToWeb [•]
  • Ejemplo
Clases

Clases

CodePen clases

(cc) 3con14, esta obra está bajo licencia
Creative Commons Atribución-No Comercial-Compartir Igual 4.0

  • Inicio
    • Recursos
  • Marcado HTML
  • Estilos CSS
  • JavaScript
  • Publicación
  • Prácticas
    • 1ª Evaluación
    • 2ª Evaluación
    • 3ª Evaluación