DesarrolloLibre

Desarrollo Web, Android, juegos y mucho más

Categorias
05-07-2016

En esta entrada veremos cómo aplicar la propiedad webkit-box-reflect para crear reflejos, además, su sintaxis ofrece una cantidad importante de valores los cuales podemos establecer a gusto para cambiar aspectos que van desde la posición, desplazamiento hasta la posibilidad de aplicar máscaras a través de degradados CSS y así crear reflejos.

box-reflect soporte solo para plataformas webkit

Cómo puedes darte cuenta con el nombre de la propiedad en cuestión establecida en esta entrada (webkit-box-reflect) el soporte es solo para los navegadores webkit lo que quiere decir que solo funcionará en los navegadores que emplean la plataforma webkit como lo son: Chrome, Opera y Safari, esto último nos dice que no es una propiedad en lo absoluto soportada por una gran cantidad de navegadores y por lo tanto no es muy recomendable emplearlo para aplicaciones finales pero sí con fines educativos o para experimentar un poco.

La sintaxis de la propiedad webkit-box-reflect en detalle

Como veremos a continuación podemos colocar el reflejo en cualquier de los lados que queramos, incluido abajo, como nos interesa para nuestro ejemplo:

Por ello empleamos la siguiente regla CSS:

-webkit-box-reflect: below;

Aunque para posicionarnos en las distintas posiciones o direcciones tenemos distintos valores que podemos establecer:

-webkit-box-reflect: left para el reflejo a la izquierda

-webkit-box-reflect: right para el reflejo a la derecha

-webkit-box-reflect: above para el reflejo en la parte superior

Estableciendo desplazamientos con la propiedad webkit-box-reflect

Si queremos colocar una separación entre la imagen y el reflejo empleamos la segunda propiedad; por ejemplo, para separarlo unos 80px para cada uno de los ejemplos que vimos anteriormente:

-webkit-box-reflect: above 8px
-webkit-box-reflect: right 8px
-webkit-box-reflect: left 8px
-webkit-box-reflect: below 8px

Aplicando máscaras en la propiedad webkit-box-reflect para obtener reflejos:

Como se indicó en un inicio, se pueden aplicar máscaras o filtros para obtener unos interesantes efectos; en nuestro caso nos interesa obtener una especie de reflejo difuminado de la imagen:

-webkit-box-reflect: below 8px linear-gradient(transparent, white);

Que obviamente se puede aplicar a las distintas posiciones que vimos anteriormente; en general la propiedad webkit-box-reflect es bastante útil al evitar que nosotros realicemos todo este trabajo a mano; el único problema (aparte de que solo funciona en los navegadores con webkit) es que hay que alinear tanto la imagen como el reflejo para que no se rompa con el flujo básico de nuestro documento como verán si estudias un poco el CSS de los ejemplo anteriores.

Enlace de interés


Publicidad

Give me for a beer!

Algunos recursos que te pueden interesar

Loader Battlenet

Loader Battlenet

Triangulo 3D animado con CSS

Triangulo 3D animado con CSS

Rainbow tiles con solo CSS

Rainbow tiles con solo CSS

Algunos artículos que te pueden interesar

Bordes redondeados con CSS

Bordes redondeados con CSS

En este artículo le enseñaremos como crear bordes redondeados con solo CSS, es decir, sin emplear imágenes en el proceso empleando la propiedad border-radius.

Andrés Cruz 21-11-2013

La pseudo-class :empty en CSS

La pseudo-class :empty en CSS

En esta entrada veremos como funciona y cómo usar la poco usada y conocida pseudo-class :empty.

Andrés Cruz 15-12-2014

Creando una web básica con Flex en HTML

Creando una web básica con Flex en HTML

En esta entrada veremos cómo crear una web básica empleando flex con las propiedades flex-grow, flex-shrink y flex-basis.

Andrés Cruz 07-04-2016