Ir al contenido principal

Efecto Páginas detrás con box-shadow

Utilizando la propiedad box-shadow del CSS, lograremos un efecto de sombras múltiples detrás de una imagen o un contenedor.

Habrás visto en algunos sitios algo parecido a esto que te voy a mostrar. Puedes aplicar este efecto a cualquier cosa y en realidad le dejará un buen toque de originalidad. Se trata de simular sombras que están detrás del elemento, que parecen ser páginas.

Esto lo podés aplicar tanto en imágenes
como en contenedores, como el cuerpo de entradas de tu plantilla.

Lo principal para aplicar el efecto es aplicar una clase al elemento, como las imágenes o contenedores, o buscar el ID del contenedor de tu plantilla que quieras aplicar el efecto, como Blog1, que es el contenedor principal de las entradas.
.imagen-sombra {
box-shadow: 0 10px 0 -5px #E4E4E4,
                     0 20px 0 -10px #D5D5D5;
margin-bottom:15px;
padding:0;
}
Debes reemplazar .imagen-sombra con un # seguido del ID del contenedor.

Y en el HTML utilizamos (para una imagen)
<img class='imagen-sombra' src='url-imagen'/>
Y ya lo obtenemos, pero si la imagen es más oscura, quisiéramos que las sombras también lo sean, entonces cambiamos los colores, que deberán ir de más oscuro a más claro.
.imagen-sombra {
box-shadow: 0 10px 0 -5px #D5D5D5, /* Primera sombra */
                     0 20px 0 -10px #E4E4E4; /* Segunda sombra */
margin-bottom:15px;
padding:0;
}
Y si quisieras agregar más sombras, basta con agregar otra línea modificando tres cosas, el número indicado en azul indicará la posición de la sombra, por lo que deberás aumentarlo luego de cada línea. El número indicado en rojo, indica el tamaño de la sombra, deberás ir disminuyendo este valor, ya que como está en negativo la sombra cada vez disminuye de tamaño. Y por supuesto deberás cambiar el color, de modo que la escala aumente o disminuya.
.imagen-sombra {
box-shadow: 0 10px 0 -5px #D5D5D5, /* Primera sombra */
                     0 20px 0 -10px #E4E4E4, /* Segunda sombra */
                     0 30px 0 -15px #F6F6F6; /* Tercera sombra */
margin-bottom:20px;
padding:0;
}
Por último puedes también experimentar con los colores, ¿quién dice que las sombras son sólo negras?


Imágenes encontradas en El espejo lúdico, captura de pantalla obtenida a través de la plantilla de Ayuda Bloggers.
Invitame un café en cafecito.app

Comentarios

  1. Me ha gustado el efecto que se obtiene en el pie de las entradas del ejemplo que haces con mi blog, la verdad ya había experimentado usar box-shadow en varios niveles pero de esta manera únicamente en imágenes, se vé increíble en el footer del post (Revisaré.

    Enhorabuena por el artículo, voy a ponerle atención a tu blog y twittearé tus artículos ya que son bastante buenos :)

    ResponderEliminar
    Respuestas
    1. Gracias Víctor, que bueno que te gustó :D Tus artículos también son geniales! Me encanta tu blog, seguí así :) Muchos saludos!

      Eliminar
  2. Sabía como colocar múltiples sombras pero nunca se me ocurrió hacer tan buen efecto con ellas ¡excelente!

    ResponderEliminar
    Respuestas
    1. Gracias, Carlos. Por cierto, he visto tu blog y me gusta mucho lo que publicas :) Saludos.

      Eliminar
  3. Hola Lucas, yo tengo una duda, ¿Es posible también colocar esa sombra a la derecha? Para que quede a la derecha y abajo.

    Saludos, me encanta tu blog :D

    ResponderEliminar

Publicar un comentario

Más leído

Galería de Imágenes Simple, con Javascript y CSS

Utilizando la propiedad box-shadow del CSS, lograremos un efecto de sombras múltiples detrás de una imagen o un contenedor.

¡Hola! Ya extrañaba escribir en mi blog. Vuelvo con esta genial galería de imágenes que es muy fácil de insertar y es súper simple. Sólo es necesario insertar el HTML, y decorarlo un poco con CSS, veamos: <div id="galeria"> <div id="galeria_imagen"> <img id="imgGaleria" src=" URL-IMAGEN-POR-DEFECTO " /></div> <div id="galeria_miniaturas"> <img class="miniatura" onclick="javascript:document.getElementById('imgGaleria').src=this.src;" src=" URL-IMAGEN-1 " /> <img class="miniatura" onclick="javascript:document.getElementById('imgGaleria').src=this.src;" src=" URL-IMAGEN-2 " /> <img class="miniatura" onclick="javascript:document.getElementById('imgGaleria').src=this.src;" src=" URL-IMAGEN-3 " /> <img class="miniatura" onclick="javascript:document.getEle

Ventana flotante con botón cerrar

Utilizando la propiedad box-shadow del CSS, lograremos un efecto de sombras múltiples detrás de una imagen o un contenedor.

Esto será algo muy útil cuando debas dejar algún mensaje o aviso para tus lectores. Se trata de una ventanita, con apariencia similar a las de Windows, que es flotante y tiene la opción de cerrar con un efecto fade utilizando un botón. Insertarla es muy simple, sólo pega este código en un gadget HTML/Javascript y puedes cambiar algunos valores para personalizar la ventana a tu gusto. <div id='ventana-flotante'>    <a class='cerrar' href='javascript:void(0);' onclick='document.getElementById(&apos;ventana-flotante&apos;).className = &apos;oculto&apos;'>x</a>    <div id='contenedor'>        <div class='contenido'> Aquí va el mensaje.        </div>    </div> </div> <style> #ventana-flotante { width: 360px;   /* Ancho de la ventana */ height: 90px;   /* Alto de la ventana */ background: #ceffad;   /* Color de fondo */ position: fixed; top: 200 px; left: 50%;

Tabs, menú de contenidos con pestañas. Versión CSS

Utilizando la propiedad box-shadow del CSS, lograremos un efecto de sombras múltiples detrás de una imagen o un contenedor.

Seguro conocerás este sistema de pestañas, que nos permite mostrar de manera alternativa distintos contenidos en un mismo espacio. Hay distintas versiones como con jQuery , o utilizando CSS, más específicamente la pseudoclase :target . Aquí veremos como obtener un resultado similar, pero utilizando la pseudoclase :checked. Comencemos con la estructura. <div id="contenedor">     <input id="tab-1" type="radio" name="radio-set" class="tab-selector-1" checked="checked" />     <label for="tab-1" class="tab-label-1"> Pestaña1 </label>         <input id="tab-2" type="radio" name="radio-set" class="tab-selector-2" />     <label for="tab-2" class="tab-label-2"> Pestaña2 </label>         <input id="tab-3" type="radio" name="radio-set" class="tab-selector-3" />    

Efecto biselado con CSS

Utilizando la propiedad box-shadow del CSS, lograremos un efecto de sombras múltiples detrás de una imagen o un contenedor.

Utilizando CSS, podemos crear un efecto de biselado para utilizar en botones, mensajes, contenedores o lo que se les ocurra. Veremos 2 formas de aplicar este efecto, una utilizando bordes y otra implementando la propiedad box-shadow . Con los bordes, encontraremos una forma más tradicional que nos permite que los bordes inferior y lateral derecho sean más oscuros simulando relieve. HTML <div class="biselado"> Texto </div> Hola, soy un cuadro con outset. .biselado { background: #2323ff ;   /* Fondo, debe ser más claro que el borde */ border: 5px outset #4444ff ;   /* Grosor del Borde */   /* Color del Borde */ color: white ;   /* Color del texto */ text-align: center ;   /* Alineación del texto */ text-shadow: -1px -1px rgba(0,0,0,.2); } O podemos lograr el efecto contrario, reemplazando la palabra outset que se encuentra antes del color del borde por inset . Hola, soy un cuadro con inset. Veamos ahora una manera más efectva de simul

Botón circular 3D realista con CSS

Utilizando la propiedad box-shadow del CSS, lograremos un efecto de sombras múltiples detrás de una imagen o un contenedor.

El secreto está en la propiedad box-shadow . Luego border-radius para darle forma y ya lo obtenemos. See the Pen Botón tridimensional realista. by Lucas Maidana ( @LucasMaidana ) on CodePen . El HTML típico de un botón. <a class='boton' href='URL-DEL-BOTON'></a> Y el CSS. .boton {   background: url( http://www.ashleyjt.net/windows/images/Android.png )  /* Url de la imagen */  no-repeat center center, #62BC0F /* Color del botón */ ; background-size: 60%;  /* Tamaño de la imagen */   height: 200px;   /* Alto del botón */   width: 200px;   /* Ancho del botón */   display: table;   border-radius: 100%;   cursor: pointer;     box-shadow: /* Sombras externa */ inset 0 10px 15px rgba(255,255,255,.35), inset 0 -10px 15px rgba(0,0,0,.05), inset 10px 0 15px rgba(0,0,0,.05), inset -10px 0 15px rgba(0,0,0,.05), /* Sombra interna */ 0 5px 20px rgba(0,0,0,.1); } /* Al presionar */ .boton:active {   box-shadow: inset 0 5px 30px rgba(0,0,0,.2);  /* S

Texto con borde

Utilizando la propiedad box-shadow del CSS, lograremos un efecto de sombras múltiples detrás de una imagen o un contenedor.

¿TEXTO CON BORDE? ¿Posible hacerlo sólo con CSS? SI ES POSIBLE NOTA : Esta propiedad no es compatible con todos los navegadores. Se recomienda Chrome o Firefox. Para lograrlo, debemos aplicar la propiedad text-shadow  para lograr muchas sombras del mismo color simulando un sólo borde. A <div class="texto1"> Texto </div> le aplicaremos: .texto1 { color:white;   /* Color del texto */ text-shadow: 1px 1px 0 blue ,                   -1px -1px blue ,                    1px -1px blue ,                   -1px 1px blue ,                    0 1px blue ,                    1px 0 blue ,                   -1px 0 blue ,                    0 -1px blue ; } Puedes cambiar blue por el color que desees. Aquí mas ejemplos. borde .texto2 { color:#AAFFB1; background:#AAFFB1; padding:20px 80px; text-shadow: 1px 1px 0 #2F7235, -1px -1px #2F7235, 1px -1px #2F7235, -1px 1px #2F7235, 0 1px #2F7235, 1px 0 #2F7235, -1px 0 #2F7235, 0 -1px #2F7235; } texto .