Transiciones CSS3 | TIEngranaje

«¿Estás buscando una forma fácil y efectiva de darle vida a tus diseños web? Las transiciones CSS3 son la solución perfecta para lograr una experiencia visual impresionante y hacer que tus elementos se muevan con estilo. En este artículo, exploraremos todo lo que necesitas saber sobre las transiciones CSS3 y cómo utilizarlas en tus proyectos con TIEngranaje.»

Transiciones CSS3 permitir a los desarrolladores web introducir efectos al permitir cambios de propiedad en los valores CSS. Estos cambios generalmente se definen para que ocurran cuando ocurren ciertos eventos, como :hover o :focus.

Transiciones especificar cómo deben hacer la transición y durante cuánto tiempo. Los efectos de transición se pueden aplicar a una amplia variedad de propiedades CSS como ancho, alto, color de fondo, opacidad y otros.

Compatibilidad con navegador

explorador de Internet 9 no soporta la propiedad de transición. Otros navegadores como Internet Explorer 10, Firefox, Chrome, Safari y Opera proporcionan apoyo pero implementar prefijos de proveedores. Entonces, por el momento, necesitará usar varios prefijos de proveedores en su código para una solución de navegador cruzado.

Navegador Prefijo de proveedor
explorador de Internet 10 -ms-transition
Firefox -moz-transition
Ópera -o-transition
Safari -webkit-transition
Cromo -webkit-transition

¿Cómo funcionan las transiciones?

Las transiciones CSS3 son efectos que permiten que un elemento cambie gradualmente cambiar de un estilo a otro. Para lograr este efecto, debe especificar la propiedad CSS a la que desea agregar un efecto y la duración del efecto.

Propiedad de transición

El transition property es una propiedad abreviada para establecer el cuatro propiedades de transición en una sola propiedad.

Propiedad Descripción
transition Una propiedad abreviada para establecer las cuatro propiedades de transición en una sola propiedad.
transition-property Especifica el nombre de la propiedad CSS a la que se aplica la transición.
transition-duration Define el tiempo que tarda una transición. El valor predeterminado es 0. El transition-duration el valor se define en segundos (s) o milisegundos (ms).
transition-timing-function Describe cómo se calculará la velocidad durante una transición. El valor predeterminado es ease. (linear, ease, ease-in, ease-out, ease-in-out, cubic-bezier(n,n,n,n))
transition-delay Define cuándo comenzará la transición. El valor predeterminado es 0. El transition-delay el valor se define en segundos (s) o milisegundos (ms).

Sintaxis de propiedad de transición

transition: property duration timing-function delay;

Ejemplos

Aquí hay un ejemplo simple que cambia el ancho de un elemento usando una transición simple. Desde el transition-timing el valor de la función es no definidael valor predeterminado de ease se aplicará.

<!DOCTYPE html>
<html>
<head>
    <style> 
        div {
            border:1px solid black;
            width:100px;
            height:100px;
            background:#FFAA00;
            -moz-transition:width 3s;
            -webkit-transition:width 3s;
            -o-transition:width 3s;
            transition:width 3s;
        }

        div:hover {
            width:500px;
        }
    </style>
</head>
<body>
    <div></div>
    <p>Hover over the div element above, to see the transition effect.</p>
</body>
</html>

He aquí un ejemplo que muestra los diferentes funciones de temporización.

<!DOCTYPE html>
<html>
<head>
    <style> 
        #main {
            width: 520px;
        }

        #main div {
            width: 100px;
            margin: 5px 0;
            padding: 5px;
            color: white;
            background-color: #ffaa00;
            text-align: right;
            border-radius: 5px;
        }

        #main:hover div {
            width: 500px;
        }

        #main div#ease {
            -webkit-transition: 3s ease;
            -moz-transition: 3s ease;
            -o-transition: 3s ease;
            -ms-transition: 3s ease;
            transition: 3s ease;
        }

        #main div#linear {
            -webkit-transition: 3s linear;
            -moz-transition: 3s linear;
            -o-transition: 3s linear;
            -ms-transition: 3s linear;
            transition: 3s linear;
        }

        #main div#easein {
            -webkit-transition: 3s ease-in;
            -moz-transition: 3s ease-in;
            -o-transition: 3s ease-in;
            -ms-transition: 3s ease-in;
            transition: 3s ease-in;
        }

        #main div#easeout {
            -webkit-transition: 3s ease-out;
            -moz-transition: 3s ease-out;
            -o-transition: 3s ease-out;
            -ms-transition: 3s ease-out;
            transition: 3s ease-out;
        }

        #main div#easeinout {
            -webkit-transition: 3s ease-in-out;
            -moz-transition: 3s ease-in-out;
            -o-transition: 3s ease-in-out;
            -ms-transition: 3s ease-in-out;
            transition: 3s ease-in-out;
        }
    </style>
</head>
<body>
    <div id="main">
        <div id="linear" style="top:100px">linear</div>
        <div id="ease" style="top:150px">ease</div>
        <div id="easein" style="top:200px">ease-in</div>
        <div id="easeout" style="top:250px">ease-out</div>
        <div id="easeinout" style="top:300px">ease-in-out</div>
    </div>
</body>
</html>

Transiciones Múltiples

Para agregar un efecto de transición para más de un estilo, añadir más propiedadesseparado por comas

<!DOCTYPE html>
<html>
<head>
    <style> 
        div {
            border:1px solid black;
            width:100px;
            height:100px;
            background:#FFAA00;
            -moz-transition:width 3s, height 3s;
            -webkit-transition:width 3s, height 3s;
            -o-transition:width 3s, height 3s;
            transition:width 3s, height 3s;
        }

        div:hover {
            width:500px;
            height:250px;
        }
    </style>
</head>
<body>
    <div></div>
    <p>Hover over the div element above, to see the transition effect.</p>
</body>
</html>

Error 403 The request cannot be completed because you have exceeded your quota. : quotaExceeded

Deja un comentario