{"id":263264,"date":"2023-08-13T09:06:00","date_gmt":"2023-08-13T06:06:00","guid":{"rendered":"https:\/\/inform.click\/haga-que-sus-paginas-web-cobren-vida-con-animaciones-y-transiciones-css\/"},"modified":"2023-08-13T09:32:00","modified_gmt":"2023-08-13T06:32:00","slug":"haga-que-sus-paginas-web-cobren-vida-con-animaciones-y-transiciones-css","status":"publish","type":"post","link":"https:\/\/inform.click\/es\/haga-que-sus-paginas-web-cobren-vida-con-animaciones-y-transiciones-css\/","title":{"rendered":"Haga que sus p\u00e1ginas web cobren vida con animaciones y transiciones CSS"},"content":{"rendered":"<p>\n  Los dise\u00f1os de sitios web evolucionan constantemente. Desde un dise\u00f1o receptivo, una hermosa tipograf\u00eda, esquemas de codificaci\u00f3n de colores perfectos e ilustraciones, los creadores de sitios web presentan nuevas ideas y dise\u00f1os todos los d\u00edas.\n<\/p>\n<p>\n  Los usuarios de hoy en d\u00eda tienen grandes expectativas de las interfaces de usuario debido al contenido de alta calidad disponible en Internet. A medida que las interfaces de los sitios web evolucionan, tambi\u00e9n lo hace la tecnolog\u00eda detr\u00e1s de ellas. Un componente importante responsable de mejorar la interfaz del sitio web es <strong>CSS<\/strong>.\n<\/p>\n<p>\n  CSS u hojas de estilo en cascada son responsables de hacer que los sitios sean mucho m\u00e1s interactivos al definir su estilo, dise\u00f1o y dise\u00f1o. El \u00faltimo est\u00e1ndar para CSS, es decir, CSS3, ha introducido el concepto de <strong>animaciones<\/strong> y <strong>transformaciones<\/strong> que mejoran la experiencia del usuario al agregar profundidad adicional a la interfaz de usuario. Con las animaciones y transiciones CSS, puede contar historias, crear efectos lujosos y hacer que la interacci\u00f3n del usuario con su sitio web sea mucho m\u00e1s efectiva y significativa.\n<\/p>\n<p>\n  Una animaci\u00f3n es solo una simulaci\u00f3n de movimiento que se crea al mostrar una serie de objetos como im\u00e1genes, uno tras otro. La transici\u00f3n, por otro lado, es b\u00e1sicamente un proceso en el que un objeto cambia de un estado a otro. Pero, cuando hablamos de animaciones web, hay b\u00e1sicamente tres tipos: <strong>animaciones CSS<\/strong> o animaciones de fotogramas clave, <strong>transiciones CSS<\/strong> y <strong>animaciones JavaScript<\/strong>.\n<\/p>\n<p>\n  Animaciones CSS\n<\/p>\n<p>\n  Para crear animaciones en CSS, necesitamos cambiar las propiedades CSS de un elemento, como una imagen o un texto, durante un per\u00edodo de tiempo determinado. Podemos cambiar las propiedades de los elementos tantas veces como queramos y tambi\u00e9n podemos establecer la duraci\u00f3n de la animaci\u00f3n.\n<\/p>\n<h5>\n  Especificaci\u00f3n de @fotogramas clave<br \/>\n<\/h5>\n<p>\n  Las animaciones CSS se definen poco con fotogramas clave. Estos fotogramas clave son los puntos intermedios de la animaci\u00f3n. Todas las animaciones CSS se especifican bajo la regla @keyframes. Estos fotogramas clave especifican lo que sucede con el elemento en un momento particular, es decir,\n<\/p>\n<ul>\n<li>qu\u00e9 propiedades est\u00e1n cambiando\n  <\/li>\n<li>cuando el elemento anima\n  <\/li>\n<li>c\u00f3mo se anima el elemento\n  <\/li>\n<\/ul>\n<p>\n  Puede definir su propio fotograma clave como:\n<\/p>\n<pre><code>@keyframes animation_name\n{\nfrom{ property: value; }\nto{ property: value; }\n}<\/code><\/pre>\n<p>\n  Aqu\u00ed &#8216;hasta' y &#8216;desde' especifican el inicio y el final de la animaci\u00f3n. Tambi\u00e9n podemos especificar animaciones para momentos intermedios de tiempo entre el inicio y el final as\u00ed:\n<\/p>\n<pre><code>@keyframes name\n{\n0%{ property: value; }\n50%{ property: value; }\n100%{ property: value; }\n}<\/code><\/pre>\n<p>\n  Aqu\u00ed 0% representa el inicio de la animaci\u00f3n, 100% representa el final de la animaci\u00f3n y 50% significa el cambio entre el inicio y el final. Pero, \u00bfc\u00f3mo le decimos al navegador cu\u00e1nto tiempo debe durar la animaci\u00f3n? Hacemos esto con la ayuda de ciertas <strong>propiedades de animaci\u00f3n<\/strong>. Estas propiedades de animaci\u00f3n est\u00e1n asociadas con el elemento a animar. Por ejemplo:\n<\/p>\n<pre><code>element_name\n{\nanimation_property: value;\nstyle_property: value;\n}<\/code><\/pre>\n<p>\n  Aqu\u00ed el elemento podr\u00eda ser cualquier etiqueta HTML como div, span, img, p, etc. y <code>style_property<\/code>es cualquier propiedad de estilo CSS como background_color, ancho, alto, etc. Veamos ahora algunas propiedades de animaci\u00f3n en detalle.\n<\/p>\n<ol>\n<li>\n    <strong>@keyframes<\/strong>: los fotogramas clave se utilizan para especificar el c\u00f3digo de animaci\u00f3n como se explic\u00f3 anteriormente.\n  <\/li>\n<li>\n    <strong>animation-name<\/strong>: El nombre especificado con @keyframes es el nombre de la animaci\u00f3n. Este nombre se utiliza para hacer referencia a los fotogramas clave con el elemento que se va a animar.\n  <\/li>\n<li>\n    <strong>animation-duration<\/strong>: Se utiliza para especificar el tiempo de duraci\u00f3n de la animaci\u00f3n en segundos o milisegundos. Por ejemplo, si lo configuramos en 5 segundos, la animaci\u00f3n se ejecutar\u00e1 solo durante 5 segundos. Si no configuramos esta propiedad, la animaci\u00f3n no se ejecutar\u00e1 en absoluto ya que su valor predeterminado es 0.\n  <\/li>\n<li>\n    <strong>animation-delay<\/strong>: podemos retrasar el inicio de la animaci\u00f3n especificando el tiempo de retraso de la animaci\u00f3n. Por ejemplo, si desea iniciar la animaci\u00f3n 5 segundos despu\u00e9s de que la p\u00e1gina se cargue en el navegador, simplemente configure el retraso de la animaci\u00f3n en 5 segundos.\n  <\/li>\n<li>\n    <strong>animation-direction<\/strong>: Podemos decirle al navegador si una animaci\u00f3n se mueve en direcci\u00f3n contraria o ciclos alternos con esta propiedad. Por ejemplo, si desea que la animaci\u00f3n se ejecute de principio a fin, establezca el valor de la duraci\u00f3n de la animaci\u00f3n en &#8216;normal'. Si desea que se ejecute de principio a fin, simplemente establezca el valor en &#8216;reversa'.\n  <\/li>\n<li>\n    <strong>modo de relleno de animaci\u00f3n<\/strong>: podemos especificar el estilo del elemento cuando la animaci\u00f3n no se reproduce con este modo, es decir, cuando la animaci\u00f3n se retrasa o finaliza, entonces cu\u00e1l deber\u00eda ser el estilo del elemento.\n  <\/li>\n<li>\n    <strong>animation-iteration-count<\/strong>: esta propiedad representa el n\u00famero de veces que se puede reproducir una animaci\u00f3n. Por ejemplo, si desea reproducir la animaci\u00f3n una vez, config\u00farelo en 1, o si desea que la animaci\u00f3n se reproduzca para siempre, simplemente config\u00farelo en &#8216;infinito'.\n  <\/li>\n<li>\n    <strong>animation-timing-function<\/strong>: esta propiedad se utiliza para especificar la curva de velocidad de la animaci\u00f3n como lineal, aceleraci\u00f3n o desaceleraci\u00f3n.\n  <\/li>\n<li>\n    <strong>Animaci\u00f3n<\/strong>: es la propiedad abreviada para establecer todas las propiedades de animaci\u00f3n.\n  <\/li>\n<\/ol>\n<p>\n  Por ejemplo, puede animar un objeto que rebota con el siguiente fragmento de c\u00f3digo. Observe c\u00f3mo se ha utilizado aqu\u00ed la notaci\u00f3n abreviada para la animaci\u00f3n.\n<\/p>\n<pre><code>@keyframes slide {\n 0% {\n  left: 0;\n  top: 0;\n }\n 50% {\n  left: 244px;\n  top: 100px;\n }\n 100% {\n  left: 488px;\n  top: 0;\n }\n}\n \n.stage:hover .object {\n animation: slide 2s linear;    \/*shorthand animation property*\/\n}\n \n.object {\n background: #2db34a;\n border-radius: 50%;\n height: 50px;\n position: absolute;\n width: 50px;\n}<\/code><\/pre>\n<h3>\n  Transiciones<br \/>\n<\/h3>\n<p>\n  Las transiciones CSS se aplican a las propiedades de los elementos durante un cierto per\u00edodo de tiempo en funci\u00f3n de ciertas funciones de <strong>temporizaci\u00f3n,<\/strong> tambi\u00e9n conocidas como funciones de aceleraci\u00f3n. Por funci\u00f3n de temporizaci\u00f3n, nos referimos a una funci\u00f3n que cambiar\u00e1 las propiedades de los elementos de un estado a otro, como progresi\u00f3n lineal, aceleraci\u00f3n o desaceleraci\u00f3n. Es posible que haya notado que una imagen se desliza o se transforma en otra imagen al pasar el mouse por encima o se reproduce un sonido al hacer clic con el mouse. Todos estos son efectos de transici\u00f3n que pueden hacer que un sitio web sea interactivo.\n<\/p>\n<p>\n  <strong>Las funciones<\/strong> de aceleraci\u00f3n son importantes para crear transiciones. Especifican c\u00f3mo cambiar\u00e1n las propiedades. Tambi\u00e9n pueden alterar la velocidad a la que cambia el valor de las propiedades desde el punto de inicio hasta el punto final de una transici\u00f3n. Puede aplicar transiciones de la siguiente manera:\n<\/p>\n<pre><code>element\n{\nstyle_property: value;\ntransition_property: value;\n}<\/code><\/pre>\n<p>\n  Aqu\u00ed el elemento especifica el elemento HTML que desea transformar como div, H1, img, etc. style_property es el estilo CSS aplicado en ese elemento. Veamos ahora algunas <strong>propiedades de transici\u00f3n<\/strong> :\n<\/p>\n<ul>\n<li>\n    <strong>propiedad de<\/strong> transici\u00f3n: el efecto de transici\u00f3n siempre se aplicar\u00e1 a la propiedad CSS de un elemento, como su ancho, alto, color o forma. El valor de este atributo especifica esa propiedad CSS del elemento. El efecto de transici\u00f3n comenzar\u00e1 cada vez que esta propiedad cambie, por ejemplo, al pasar el mouse por encima o al hacer clic.\n  <\/li>\n<li>\n    <strong>Transition-timing-function<\/strong>: Esta es la funci\u00f3n de facilidad que se aplicar\u00e1 al elemento. Esta propiedad se utiliza para especificar la curva de velocidad de transici\u00f3n, como entrada, salida, lineal, etc.\n  <\/li>\n<li>\n    <strong>transici\u00f3n-duraci\u00f3n<\/strong>: es como la propiedad de duraci\u00f3n de la animaci\u00f3n. Se utiliza para especificar la duraci\u00f3n del tiempo del efecto de transici\u00f3n en segundos o milisegundos. Por ejemplo, si lo configuramos en 5 segundos, la transici\u00f3n afectar\u00e1 y se completar\u00e1 en 5 segundos. Si no establecemos esta propiedad, entonces no habr\u00e1 ninguna transici\u00f3n ya que su valor predeterminado es 0.\n  <\/li>\n<li>\n    <strong>Transition-Delay<\/strong>: Con esta propiedad, podemos especificar el tiempo de duraci\u00f3n para retrasar el efecto de transici\u00f3n. Por ejemplo, si desea iniciar el efecto 5 segundos despu\u00e9s de pasar el mouse, simplemente configure el retraso de transici\u00f3n en 5 segundos.\n  <\/li>\n<li>\n    <strong>transici\u00f3n<\/strong>: es la propiedad abreviada para configurar todas las propiedades de transici\u00f3n anteriores juntas.\n  <\/li>\n<\/ul>\n<p>\n  Por ejemplo, el siguiente c\u00f3digo cambiar\u00e1 el ancho del elemento div al pasar el mouse. Vea la propiedad abreviada de transici\u00f3n aplicada aqu\u00ed.\n<\/p>\n<pre><code>div {\n  width: 50px;\n  height: 50px;\n  background: blue;\n  transition: height 4s;     \/*transition shorthand on height for 4 seconds*\/\n}\ndiv:hover {\n  height: 200px;      \/* increase height on mouse hover *\/\n}<\/code><\/pre>\n<h3>\n  Animaciones frente a transiciones<br \/>\n<\/h3>\n<h5>\n  Similitudes entre animaciones y transiciones<br \/>\n<\/h5>\n<ul>\n<li>Tanto la transici\u00f3n como la animaci\u00f3n se utilizan para visualizar cambios en las propiedades de un elemento.\n  <\/li>\n<li>Podemos especificar la duraci\u00f3n de la transici\u00f3n y la animaci\u00f3n.\n  <\/li>\n<li>Tenemos ciertas funciones de tiempo para alterar la tasa de pasar de un valor a otro para transiciones y animaciones.\n  <\/li>\n<\/ul>\n<h5>\n  Diferencias entre animaciones y transiciones<br \/>\n<\/h5>\n<ul>\n<li>Las transiciones CSS son <strong>reactivas<\/strong>. Deben ser activados por los usuarios. Las animaciones, por otro lado, se ejecutan cada vez que la p\u00e1gina se carga en el navegador. No es necesario que se activen.\n  <\/li>\n<li>Las transiciones se ejecutan una vez y luego se detienen. Luego, tenemos que activarlos una y otra vez mientras las animaciones pueden <strong>repetirse<\/strong>. Pueden comenzar en su propia parada y luego comenzar de nuevo.\n  <\/li>\n<li>El navegador se encarga de las transiciones por s\u00ed mismo. Solo necesitamos especificar el inicio y el final de la transici\u00f3n. Podemos establecer el efecto de transici\u00f3n, pero no podemos alterar la tasa de cambio de una transici\u00f3n intermedia. Por ejemplo, si una imagen se desliza al pasar el mouse por encima, solo veremos que se desvanece o se desvanece a medida que pasamos el mouse sobre ella.\n  <\/li>\n<li>Las animaciones, por otro lado, brindan la flexibilidad de cambiar las propiedades entre el inicio y el final. Esto sucede con la ayuda de fotogramas clave. Por ejemplo, podemos establecer el color de una imagen en rojo durante los primeros 5 segundos, luego en azul durante los siguientes 5 segundos, luego en verde durante los siguientes 5 segundos y en amarillo durante los \u00faltimos 5 segundos de la animaci\u00f3n. Por lo tanto, tenemos un control sobre las animaciones.\n  <\/li>\n<\/ul>\n<h5>\n  Prefijos de proveedores<br \/>\n<\/h5>\n<p>\n  Todas las funciones de CSS3 no son compatibles con todos los navegadores. Por lo tanto, usamos prefijos a lo largo de esas propiedades CSS para navegadores espec\u00edficos como -webkit- (Safari), -moz- (Firefox) o -o- (Opera). Esto permite que los marcadores del navegador agreguen soporte para esa funci\u00f3n CSS3. Estos prefijos se conocen como prefijos de <strong>proveedores<\/strong> o <strong>prefijos de navegador CSS<\/strong>. Por lo tanto, tambi\u00e9n debemos colocar prefijos de proveedores junto con las propiedades de animaci\u00f3n y transici\u00f3n. Por ejemplo, considere el siguiente c\u00f3digo y vea c\u00f3mo se han utilizado los prefijos de proveedores para Safari:\n<\/p>\n<pre><code>div {\nwidth: 100px;\nheight: 100px;\nbackground: red;\n \n\/* For Safari 3.1 to 6.0 *\/\n-webkit-transition-property: width;\n-webkit-transition-duration: 2s;\n-webkit-transition-timing-function: linear;\n-webkit-transition-delay: 1s;\n \n\/* Standard syntax *\/\ntransition-property: width;\ntransition-duration: 2s;\ntransition-timing-function: linear;\ntransition-delay: 1s;\n}<\/code><\/pre>\n<p>\n  <strong>\u00a1Consejo!<\/strong> Puede evitar este ajetreo utilizando bibliotecas como <strong>-prefix-free<\/strong>. Es una biblioteca de JavaScript que agregar\u00e1 el prefijo del navegador actual a cualquier c\u00f3digo CSS. Echa un vistazo a muchas de estas bibliotecas disponibles en la web.\n<\/p>\n<h4>\n  Conclusi\u00f3n<br \/>\n<\/h4>\n<p>\n  Los desarrolladores de sitios web pueden aplicar animaciones y transformaciones para atraer usuarios a sus sitios web. Puede usarlos para mejorar formularios, notificaciones, gr\u00e1ficos de fondo, im\u00e1genes, tablas, garabatos, botones de llamada a la acci\u00f3n y m\u00e1s. Simplemente use su imaginaci\u00f3n y puede encontrar una manera de sorprender a sus usuarios. Recuerde que incluso un peque\u00f1o cambio en su sitio web puede hacer que se vea mucho mejor y aumente su valor. Entonces, \u00bfya ha utilizado animaciones en su sitio web? Comparta sus pensamientos sobre el uso de animaciones y transiciones.\n<\/p>\n<\/p>\n<div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">\n  Fuente de grabaci\u00f3n: <a target=\"_blank\" rel=\"noopener nofollow\" data-pssr=\"\" href=\"http:\/\/www.instantshift.com\/2017\/10\/09\/css-animations-transitions\/\">instantshift.com<\/a>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Los dise\u00f1os de sitios web evolucionan constantemente. Desde un dise\u00f1o receptivo, una hermosa tipograf\u00eda, esquemas de codificaci\u00f3n de colores perfectos e ilustraciones, los creadores de sitios web presentan nuevas ideas y dise\u00f1os todos los d\u00edas. Los usuarios de hoy en d\u00eda tienen grandes expectativas de las interfaces de usuario debido al contenido de alta calidad disponible en Internet. A medida que las interfaces de los sitios web evolucionan, tambi\u00e9n lo hace la tecnolog\u00eda detr\u00e1s de ellas. Un componente importante responsable de mejorar la interfaz del sitio web es CSS. CSS u hojas de estilo en cascada son responsables de hacer que los sitios sean mucho m\u00e1s interactivos al definir su estilo, dise\u00f1o y dise\u00f1os. El \u00faltimo est\u00e1ndar para CSS, es decir, CSS3, ha introducido el concepto de&#8230;<\/p>\n","protected":false},"author":1,"featured_media":191873,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[73,125,60],"tags":[],"class_list":["post-263264","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-css-2","category-herramientas-web","category-web-y-wordpress"],"_links":{"self":[{"href":"https:\/\/inform.click\/es\/wp-json\/wp\/v2\/posts\/263264","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/inform.click\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/inform.click\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/inform.click\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/inform.click\/es\/wp-json\/wp\/v2\/comments?post=263264"}],"version-history":[{"count":0,"href":"https:\/\/inform.click\/es\/wp-json\/wp\/v2\/posts\/263264\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/inform.click\/es\/wp-json\/wp\/v2\/media\/191873"}],"wp:attachment":[{"href":"https:\/\/inform.click\/es\/wp-json\/wp\/v2\/media?parent=263264"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/inform.click\/es\/wp-json\/wp\/v2\/categories?post=263264"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/inform.click\/es\/wp-json\/wp\/v2\/tags?post=263264"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}