{"id":1409,"date":"2024-08-01T19:47:38","date_gmt":"2024-08-01T17:47:38","guid":{"rendered":"https:\/\/blog.sutilweb.eu\/?page_id=1409"},"modified":"2024-08-01T19:47:39","modified_gmt":"2024-08-01T17:47:39","slug":"11-transiciones-css","status":"publish","type":"page","link":"https:\/\/sutilweb.eu\/index.php\/lenguajes\/css3\/css3-avanzado\/11-transiciones-css\/","title":{"rendered":"11. Transiciones CSS"},"content":{"rendered":"\n<p>Las <strong>transiciones CSS<\/strong> te permiten cambiar los valores de propiedad sin problemas, durante un per\u00edodo determinado. En este cap\u00edtulo miraremos las siguientes propiedades:<\/p>\n\n\n\n<!--more-->\n\n\n\n<ul class=\"wp-block-list\">\n<li>transition<\/li>\n\n\n\n<li>transition-delay<\/li>\n\n\n\n<li>transition-duration<\/li>\n\n\n\n<li>transition-property<\/li>\n\n\n\n<li>transition-timing-function<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Como usar transiciones CSS<\/h2>\n\n\n\n<p>Para generar una transici\u00f3n debemos seguir dos pasos:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>la propiedad CSS a la que desea agregar un efecto<\/li>\n\n\n\n<li>la duraci\u00f3n del efecto<\/li>\n<\/ul>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Nota<\/strong>: Si no se especifica la parte de duraci\u00f3n, la transici\u00f3n no tendr\u00e1 efecto, porque el valor predeterminado es 0.<\/p>\n<\/blockquote>\n\n\n\n<p><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!DOCTYPE html><br>&lt;html lang=\"es\"><br>  &lt;head><br>    &lt;style><br>      div {<br>        width: 100px;<br>        height: 100px;<br>        line-height: 100px;<br>        color: yellow;<br>        background: red;<br>        transition: width 2s;<br>        text-align: center;<br>      }<br><br>      div:hover {<br>        width: 300px;<br>      }<br>    &lt;\/style><br>  &lt;\/head><br>  &lt;body><br>    &lt;h1>La propiedad transition&lt;\/h1><br>    &lt;p><br>      Pasa el cursor sobre el elemento div a continuaci\u00f3n para ver el efecto de<br>      transici\u00f3n:<br>    &lt;\/p><br>    &lt;div>Hola que tal&lt;\/div><br>  &lt;\/body><br>&lt;\/html><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Cambiar varios valores de propiedad<\/h2>\n\n\n\n<p>El siguiente ejemplo agrega un efecto de transici\u00f3n tanto para la propiedad <strong><em>width<\/em> <\/strong>como para <strong><em>height<\/em><\/strong>, con una duraci\u00f3n de 2 segundos para el ancho y 4 segundos para el alto:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">div&nbsp;{\n&nbsp;&nbsp;transition:&nbsp;width 2s, height 4s;\n}<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Especificar la curva de velocidad de la transici\u00f3n<\/h2>\n\n\n\n<p>La propiedad <strong><em>transition-timing-function<\/em><\/strong> especifica la curva de velocidad de la transici\u00f3n. Esta propiedad puede tener los siguientes valores:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong><em>ease<\/em><\/strong>: especifica un efecto de transici\u00f3n con un comienzo lento, luego r\u00e1pido, luego termina lentamente (esto es predeterminado)<\/li>\n\n\n\n<li><strong><em>linear<\/em><\/strong>: especifica un efecto de transici\u00f3n con la misma velocidad de principio a fin<\/li>\n\n\n\n<li><strong><em>ease-in<\/em><\/strong>: especifica un efecto de transici\u00f3n con un comienzo lento<\/li>\n\n\n\n<li><strong><em>ease-out<\/em><\/strong>: especifica un efecto de transici\u00f3n con un final lento<\/li>\n\n\n\n<li><strong><em>ease-in-out<\/em><\/strong>: especifica un efecto de transici\u00f3n con un comienzo y un final lentos<\/li>\n\n\n\n<li><strong><em>cubic-bezier(n,n,n,n)<\/em><\/strong>: te permite definir sus propios valores en una funci\u00f3n cubic-bezier<\/li>\n<\/ul>\n\n\n\n<p><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!DOCTYPE html><br>&lt;html><br>  &lt;head><br>    &lt;style><br>      div {<br>        width: 100px;<br>        height: 100px;<br>        background: red;<br>        transition: width 2s;<br>      }<br><br>      #div1 {<br>        transition-timing-function: linear;<br>      }<br>      #div2 {<br>        transition-timing-function: ease;<br>      }<br>      #div3 {<br>        transition-timing-function: ease-in;<br>      }<br>      #div4 {<br>        transition-timing-function: ease-out;<br>      }<br>      #div5 {<br>        transition-timing-function: ease-in-out;<br>      }<br><br>      div:hover {<br>        width: 300px;<br>      }<br>    &lt;\/style><br>  &lt;\/head><br>  &lt;body><br>    &lt;h1>La propiedad transition-timing-function&lt;\/h1><br><br>    &lt;p><br>      Pasa el cursor sobre los elementos div a continuaci\u00f3n para ver las<br>      diferentes curvas de velocidad:<br>    &lt;\/p><br><br>    &lt;div id=\"div1\">linear&lt;\/div><br>    &lt;br \/><br>    &lt;div id=\"div2\">ease&lt;\/div><br>    &lt;br \/><br>    &lt;div id=\"div3\">ease-in&lt;\/div><br>    &lt;br \/><br>    &lt;div id=\"div4\">ease-out&lt;\/div><br>    &lt;br \/><br>    &lt;div id=\"div5\">ease-in-out&lt;\/div><br>    &lt;br \/><br>  &lt;\/body><br>&lt;\/html><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Retrasar el efecto de transici\u00f3n<\/h2>\n\n\n\n<p>La propiedad <strong><em>transition-delay<\/em><\/strong> especifica un retraso en segundos para el efecto. El siguiente ejemplo tiene un segundo de retraso en la transici\u00f3n.<\/p>\n\n\n\n<p><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!DOCTYPE html><br>&lt;html><br>  &lt;head><br>    &lt;style><br>      div {<br>        width: 100px;<br>        height: 100px;<br>        background: red;<br>        transition: width 3s;<br>        transition-delay: 1s;<br>      }<br><br>      div:hover {<br>        width: 300px;<br>      }<br>    &lt;\/style><br>  &lt;\/head><br>  &lt;body><br>    &lt;h1>La propiedad transition-delay&lt;\/h1><br><br>    &lt;p>Pasa el cursor sobre el elemento div:&lt;\/p><br><br>    &lt;div>&lt;\/div><br><br>    &lt;p><br>      &lt;b>Nota:&lt;\/b> El efecto de transici\u00f3n tiene un retraso de 1 segundo antes<br>      de comenzar.<br>    &lt;\/p><br>  &lt;\/body><br>&lt;\/html><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">transition + transform<\/h2>\n\n\n\n<p><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!DOCTYPE html><br>&lt;html lang=\"es\"><br>  &lt;head><br>    &lt;style><br>      div {<br>        width: 100px;<br>        height: 100px;<br>        background-color: red;<br>        color: yellow;<br>        transition: width 2s, height 2s, transform 2s;<br>      }<br><br>      div:hover {<br>        width: 300px;<br>        height: 300px;<br>        transform: rotate(180deg);<br>      }<br>    &lt;\/style><br>  &lt;\/head><br>  &lt;body><br>    &lt;h1>transition + transform&lt;\/h1><br>    &lt;p>Situa el cursor sobre el elemento div&lt;\/p><br>    &lt;div>Hola&lt;\/div><br>  &lt;\/body><br>&lt;\/html><\/pre>\n\n\n\n<p>Las propiedades de transici\u00f3n CSS se pueden especificar una por una, as\u00ed.<\/p>\n\n\n\n<p><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!DOCTYPE html><br>&lt;html><br>  &lt;head><br>    &lt;style><br>      div {<br>        width: 100px;<br>        height: 100px;<br>        background: red;<br>        transition-property: width;<br>        transition-duration: 2s;<br>        transition-timing-function: linear;<br>        transition-delay: 1s;<br>      }<br><br>      div:hover {<br>        width: 300px;<br>      }<br>    &lt;\/style><br>  &lt;\/head><br>  &lt;body><br>    &lt;h1>Las propiedades de transition especificadas una por una&lt;\/h1><br><br>    &lt;p>Haz clic sobre div para ver el efecto:&lt;\/p><br><br>    &lt;div>&lt;\/div><br><br>    &lt;p><br>      &lt;b>Note:&lt;\/b> El efecto de transition tiene un retardo de 1 segundo antes<br>      de comenzar.<br>    &lt;\/p><br>  &lt;\/body><br>&lt;\/html><\/pre>\n\n\n\n<p>O usando la forma abreviada de la propiedad <strong><em>transition&nbsp;<\/em><\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!DOCTYPE html><br>&lt;html><br>  &lt;head><br>    &lt;style><br>      div {<br>        width: 100px;<br>        height: 100px;<br>        background: red;<br>        transition: width 2s linear 1s;<br>      }<br><br>      div:hover {<br>        width: 300px;<br>      }<br>    &lt;\/style><br>  &lt;\/head><br>  &lt;body><br>    &lt;h1>Usando la forma corta para la propiedad transition&lt;\/h1><br><br>    &lt;p>Situa el cursor sobre el elemento div para ver el efecto:&lt;\/p><br><br>    &lt;div>&lt;\/div><br><br>    &lt;p>&lt;b>Note:&lt;\/b> El efecto tiene un retraso de 1s antes de comenzar.&lt;\/p><br>  &lt;\/body><br>&lt;\/html><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Resumen<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>Propiedad<\/th><th>Descripci\u00f3n<\/th><\/tr><tr><td><strong><em>transition<\/em><\/strong><\/td><td>Una propiedad abreviada para configurar las cuatro propiedades de transici\u00f3n en una sola propiedad<\/td><\/tr><tr><td><strong><em>transition-delay<\/em><\/strong><\/td><td>Especifica un retraso (en segundos) para el efecto de transici\u00f3n<\/td><\/tr><tr><td><strong><em>transition-duration<\/em><\/strong><\/td><td>Especifica cu\u00e1ntos segundos o milisegundos tarda en completarse un efecto de transici\u00f3n<\/td><\/tr><tr><td><strong><em>transition-property<\/em><\/strong><\/td><td>Especifica el nombre de la propiedad CSS para el efecto de transici\u00f3n<\/td><\/tr><tr><td><strong><em>transition-timing-function<\/em><\/strong><\/td><td>Especifica la curva de velocidad del efecto de transici\u00f3n.<\/td><\/tr><\/tbody><\/table><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Las transiciones CSS te permiten cambiar los valores de propiedad sin problemas, durante un per\u00edodo determinado. En este cap\u00edtulo miraremos [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":1367,"menu_order":10,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-1409","page","type-page","status-publish","hentry"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"Sutil Web","author_link":"https:\/\/sutilweb.eu\/index.php\/author\/sutilweb\/"},"uagb_comment_info":0,"uagb_excerpt":"Las transiciones CSS te permiten cambiar los valores de propiedad sin problemas, durante un per\u00edodo determinado. En este cap\u00edtulo miraremos [&hellip;]","_links":{"self":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/1409","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/comments?post=1409"}],"version-history":[{"count":3,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/1409\/revisions"}],"predecessor-version":[{"id":1412,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/1409\/revisions\/1412"}],"up":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/1367"}],"wp:attachment":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/media?parent=1409"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}