Estoy tratando de implementar el efecto de "desvanecimiento" en CSS puro. Aquí está el violín . Busqué un par de soluciones en línea, sin embargo, después de leer la documentación en línea , estoy tratando de averiguar por qué la animación de diapositivas no funcionaría. ¿Algún consejo?
.dummy-wrap {
animation: slideup 2s;
-moz-animation: slideup 2s;
-webkit-animation: slideup 2s;
-o-animation: slideup 2s;
}
.success-wrap {
width: 75px;
min-height: 20px;
clear: both;
margin-top: 10px;
}
.successfully-saved {
color: #FFFFFF;
font-size: 20px;
padding: 15px 40px;
margin-bottom: 20px;
text-align: center;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
background-color: #00b953;
}
@keyframes slideup {
0% {top: 0px;}
75% {top: 0px;}
100% {top: -20px;}
}
@-moz-keyframes slideup {
0% {top: 0px;}
75% {top: 0px;}
100% {top: -20px;}
}
@-webkit-keyframes slideup {
0% {top: 0px;}
75% {top: 0px;}
100% {top: -20px;}
}
@-o-keyframes slideup {
0% {top: 0px;}
75% {top: 0px;}
100% {top: -20px;}
}
<div class="dummy-wrap">
<div class="success-wrap successfully-saved">Saved</div>
</div>
css
css-transitions
Penny Liu
fuente
fuente
Esta es otra forma de hacer lo mismo.
efecto de desvanecimiento
.visible { visibility: visible; opacity: 1; transition: opacity 2s linear; }
efecto fadeOut
.hidden { visibility: hidden; opacity: 0; transition: visibility 0s 2s, opacity 2s linear; }
UPDATE 1:
Encontré un tutorial más actualizado CSS3 Transition: fadeIn y fadeOut como efectos para ocultar mostrar elementos e información sobre herramientas.Ejemplo: Mostrar Ocultar sugerencia o texto de ayuda usando la transición CSS3 aquí con código de muestra.UPDATE 2:
(Detalles agregados solicitados por @ big-money)Al mostrar el elemento (cambiando a la clase visible), queremos que la visibilidad: visible se active instantáneamente, por lo que está bien cambiar solo la propiedad de opacidad. Y al ocultar el elemento (cambiando a la clase oculta), queremos retrasar la visibilidad: declaración oculta, para que podamos ver primero la transición de desvanecimiento. Lo hacemos declarando una transición en la propiedad de visibilidad, con una duración de 0 y un retraso. Puedes ver el artículo detallado aquí.
Sé que es demasiado tarde para responder, pero publico esta respuesta para ahorrar tiempo a los demás. Espero que te ayude !!
fuente
display:none
para borrar el cuadro cuando termine la animación "ocultar", ¿alguna idea?display:block
lugar devisibility: visible
en.visible
clase de la misma manera endisplay:none
lugar devisibility: hidden
en.hidden
clase del ejemplo anterior.display
que no es una de las propiedades CSS animables . Consulte Animación de "pantalla: bloque" a "pantalla: ninguna" .Ya que
display
que no es una de las propiedades CSS animables. Undisplay:none
reemplazo de animación fadeOut con animaciones CSS3 puras, solo configurarwidth:0
yheight:0
en el último cuadro, y usaranimation-fill-mode: forwards
para mantenerwidth:0
yheight:0
propiedades.@-webkit-keyframes fadeOut { 0% { opacity: 1;} 99% { opacity: 0.01;width: 100%; height: 100%;} 100% { opacity: 0;width: 0; height: 0;} } @keyframes fadeOut { 0% { opacity: 1;} 99% { opacity: 0.01;width: 100%; height: 100%;} 100% { opacity: 0;width: 0; height: 0;} } .display-none.on{ display: block; -webkit-animation: fadeOut 1s; animation: fadeOut 1s; animation-fill-mode: forwards; }
fuente
width
yheight
son sensibles.Este es el código de trabajo para tu pregunta.
Disfrute de la codificación ...
<html> <head> <style> .animated { background-color: green; background-position: left top; padding-top:95px; margin-bottom:60px; -webkit-animation-duration: 10s;animation-duration: 10s; -webkit-animation-fill-mode: both;animation-fill-mode: both; } @-webkit-keyframes fadeOut { 0% {opacity: 1;} 100% {opacity: 0;} } @keyframes fadeOut { 0% {opacity: 1;} 100% {opacity: 0;} } .fadeOut { -webkit-animation-name: fadeOut; animation-name: fadeOut; } </style> </head> <body> <div id="animated-example" class="animated fadeOut"></div> </body> </html>
fuente
Olvidó agregar una propiedad de posición al
.dummy-wrap
clase, y los valores superior / izquierda / inferior / derecha no se aplican a los elementos posicionados estáticamente (el valor predeterminado)http://jsfiddle.net/dYBD2/2/
fuente
top
valor para que se mueva "fuera" de la ventana gráfica o puede usar la opacidad para la animación para que se desvanezca como parece que desea ...fadeOut{ background-color: rgba(255, 0, 0, 0.83); border-radius: 8px; box-shadow: silver 3px 3px 5px 0px; border: 2px dashed yellow; padding: 3px; } .fadeOut.end{ transition: all 1s ease-in-out; background-color: rgba(255, 0, 0, 0.0); box-shadow: none; border: 0px dashed yellow; border-radius: 0px; }
demo aquí.
fuente