Buscar..


Sintaxis

  • transición: [propiedad de transición] [duración de transición] [función de tiempo de transición] [retardo de transición];

Parámetros

Parámetro Detalles
propiedad de transición La propiedad CSS específica cuyo cambio de valor debe ser transicionado (o) all , si todas las propiedades transitables necesitan ser transicionadas.
duración de la transición La duración (o período) en segundos ( s ) o milisegundos ( ms ) durante los cuales debe tener lugar la transición.
función de tiempo de transición Una función que describe cómo se calculan los valores intermedios durante la transición. Los valores de uso común son ease , ease-in , ease-out ease-in-out , ease-out ease-in-out , linear , cubic-bezier() , steps() . Se puede encontrar más información sobre las diversas funciones de temporización en las especificaciones del W3C .
retraso de transición La cantidad de tiempo que debe haber transcurrido antes de que se inicie la transición. Se puede especificar en segundos ( s ) o milisegundos ( ms )

Observaciones

Algunos navegadores antiguos solo admiten propiedades de transition prefijo de proveedor :

  • -webkit : Chrome 25-, Safari 6-, Safari & Chrome para iOS 6.1-, Android 4.3-, Blackberry Browser 7-, UC Browser 9.9- para Android.
  • -moz : Firefox 15-.
  • -o : Opera 11.5-, Opera Mobile 12-.

Ejemplo:

-webkit-transition: all 1s;
-moz-transition: all 1s;
-o-transition: all 1s;
transition: all 1s;

Taquigrafía de transición

CSS

div{
    width: 150px;
    height:150px;
    background-color: red;
    transition: background-color 1s;
}
div:hover{
    background-color: green;
}

HTML

<div></div>

Este ejemplo cambiará el color de fondo cuando el div se desplace, el cambio de color de fondo durará 1 segundo.

Transición (a mano)

CSS

div {
  height: 100px;
  width: 100px;
  border: 1px solid;
  transition-property: height, width;
  transition-duration: 1s, 500ms;
  transition-timing-function: linear;
  transition-delay: 0s, 1s;
}
div:hover {
  height: 200px;
  width: 200px;
}

HTML

<div></div>
  • propiedad de transición : Especifica las propiedades de CSS para las que es el efecto de transición. En este caso, la div se expandirá tanto horizontal como verticalmente cuando se desplace el mouse.
  • duración de transición : especifica el tiempo que tarda en completarse una transición. En el ejemplo anterior, las transiciones de altura y anchura tomarán 1 segundo y 500 milisegundos respectivamente.
  • función de tiempo de transición : especifica la curva de velocidad del efecto de transición. Un valor lineal indica que la transición tendrá la misma velocidad de principio a fin.
  • retardo de transición : especifica la cantidad de tiempo necesario para esperar antes de que comience el efecto de transición. En este caso, la altura comenzará la transición inmediatamente, mientras que el ancho esperará 1 segundo.

cúbico-bezier

La función cubic-bezier es una función de tiempo de transición que se utiliza a menudo para las transiciones personalizadas y suaves.

transition-timing-function: cubic-bezier(0.1, 0.7, 1.0, 0.1);

La función toma cuatro parámetros:

cubic-bezier(P1_x, P1_y, P2_x, P2_y)

cúbico-bezier

Estos parámetros se asignarán a puntos que forman parte de una curva de Bézier :

curva de bezier

Para CSS Bézier Curves, P0 y P3 están siempre en el mismo lugar. P0 está en (0,0) y P3 está en (1,1), lo que indica que los parámetros pasados ​​a la función cúbico-bezier solo pueden estar entre 0 y 1.

Si pasa parámetros que no están en este intervalo, la función se establecerá por defecto en una transición linear .

Como cubic-bezier es la transición más flexible en CSS, puede traducir todas las demás funciones de tiempo de transición a funciones de cubic-bezier:

linear : cubic-bezier(0,0,1,1)

ease-in : cubic-bezier(0.42, 0.0, 1.0, 1.0)

ease-out : cubic-bezier(0.0, 0.0, 0.58, 1.0)

ease-in-out : cubic-bezier(0.42, 0.0, 0.58, 1.0)



Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow