Foros del Web » Creando para Internet » CSS »

¿Como hacer con CSS Efecto cortina o persiana en las cuatro direcciones?

Estas en el tema de ¿Como hacer con CSS Efecto cortina o persiana en las cuatro direcciones? en el foro de CSS en Foros del Web. Hola a todos Estoy intentando conseguir con CSS que un recuadro con una imagen se desplace para presentar un texto. El típico efecto cortina o ...
  #1 (permalink)  
Antiguo 13/11/2012, 12:35
 
Fecha de Ingreso: octubre-2012
Mensajes: 37
Antigüedad: 11 años, 5 meses
Puntos: 3
¿Como hacer con CSS Efecto cortina o persiana en las cuatro direcciones?

Hola a todos

Estoy intentando conseguir con CSS que un recuadro con una imagen se desplace para presentar un texto. El típico efecto cortina o persiana.

He encontrado información y ya he conseguido que me funcione en dirección hacía arriba.

Querría saber hacerlo en las otras direcciones : hacia abajo, hacia la derecha y hacia la izquierda.

¿Alguien sabe cómo hacerlo y puede ayudarme? Preferiblemente sin JQuery, MooTools y similares

Muchas gracias, un saludo

Última edición por Loboblanco2; 14/11/2012 a las 07:06
  #2 (permalink)  
Antiguo 14/11/2012, 19:17
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: ¿Como hacer con CSS Efecto cortina o persiana en las cuatro direcciones?

Pon el código que tengas hecho. No debe de ser muy complicado adaptarlo para que funcione en otro dirección.
  #3 (permalink)  
Antiguo 14/11/2012, 21:36
Avatar de C2am  
Fecha de Ingreso: enero-2009
Ubicación: Rosario, Argentina
Mensajes: 2.005
Antigüedad: 15 años, 3 meses
Puntos: 306
Respuesta: ¿Como hacer con CSS Efecto cortina o persiana en las cuatro direcciones?

Que te parece algo así:
http://ksesocss.blogspot.com/2012/11...o-animado.html
Saludos
__________________
El mundo nada puede contra un hombre que canta en la miseria.
-- Ernesto Sábato--
  #4 (permalink)  
Antiguo 15/11/2012, 12:05
 
Fecha de Ingreso: octubre-2012
Mensajes: 37
Antigüedad: 11 años, 5 meses
Puntos: 3
Respuesta: ¿Como hacer con CSS Efecto cortina o persiana en las cuatro direcciones?

Muchas gracias por vuestras respuestas, Bonez, C2am.

C2am : la animación que enlazaste es muy interesante, varias imagenes que se ven solo parcialmente, en diagonal, con desplazamiento lateral, queda muy espectacular. La pongo a la cola para aprender a hacerla, jaja. Gracias

Bonez : pongo aquí el código, muy buena idea, gracias.

Además como he visto que en algunos casos se ponen los resultados en alguna web que existen para eso, he aprendido a hacerlo y también lo pongo. Incluyendo el utilizar una imagen enlazada.

A ver si a partir del codigo de la cortina ascendente pudieraís ayudarme a saber cómo hacer cortinas descendentes, a la izquierda y hacia la derecha.

*

Efecto cortina ascendente

el css :

Código:
.recuadro {
  position: relative;
  width: 193px;
  height: 260px;
  overflow: hidden;
  border: 1px solid #ccc;
}
  
.recuadro a {
  text-decoration: none;
  color: #000;
}
  
.imagen_recuadro, .detalles_recuadro {
  padding: 10px;
  height: 240px;
}
  
.imagen_recuadro {
  margin-top: 0;
  background: #000000;

  -webkit-transition-property: margin-top;
  -webkit-transition-duration: .9s;
  
  -moz-transition-property: margin-top;
  -moz-transition-duration: .9s;
  
  -o-transition-property: margin-top;
  -o-transition-duration: .9s;
  
  -ms-transition-property: margin-top;
  -ms-transition-duration: .9s;

}
  
.detalles_recuadro {
  background: #EEEEEE;
  color: #666666;
  font-family: Arial;
  font-size: 12px;
}

.recuadro:hover .imagen_recuadro {
  margin-top: -260px;
}
el html :

Código:
<div class="recuadro">
  <a href="pinguinos">
    <div class="imagen_recuadro">
			<img alt="MADRE_PINGUINO_Y_CRIA (54K)" src="http://upload.wikimedia.org/wikipedia/commons/thumb/0/0a/MADRE_PINGUINO_Y_CRIA.jpg/433px-MADRE_PINGUINO_Y_CRIA.jpg" height="240" width="173" />
    </div>
    <div class="detalles_recuadro">
      <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
    </div>
  </a>
</div>
el resultado y también el código [URL="http://jsfiddle.net/LoboBlanco/qVSWQ/"]aqui[/URL]
  #5 (permalink)  
Antiguo 15/11/2012, 12:25
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: ¿Como hacer con CSS Efecto cortina o persiana en las cuatro direcciones?

Para cambiarlo a la izquierda, habría que flotar .imagen_recuadro y .detalles_recuadro, para no añadir otro elemento se le da un ancho al elemento A —para lo cual hay que convertirlo en elemento de bloque— y luego el margen negativo se le da para la izquierda.
Para hacerlo hacia la derecha, el proceso es parecido pero habría que flotar un elemento a la derecha y el otro a la izquierda —y así no tocar HTML.

Código CSS:
Ver original
  1. .recuadro {
  2.   position: relative;
  3.   width: 193px;
  4.   height: 260px;
  5.   overflow: hidden;
  6.   border: 1px solid #ccc;
  7. }
  8.  
  9. .recuadro a {
  10.   text-decoration: none;
  11.   color: #000;
  12.     display: block;
  13.     width: 386px;
  14. }
  15.  
  16. .imagen_recuadro, .detalles_recuadro {
  17.   padding: 10px;
  18.   height: 240px;
  19.     width: 173px;
  20.     float: left;
  21. }
  22.  
  23. .imagen_recuadro {
  24.   margin-top: 0;
  25.   background: #000000;
  26.  
  27.   -webkit-transition-property: margin-left;
  28.   -webkit-transition-duration: .9s;
  29.  
  30.   -moz-transition-property: margin-left;
  31.   -moz-transition-duration: .9s;
  32.  
  33.   -o-transition-property: margin-left;
  34.   -o-transition-duration: .9s;
  35.  
  36.   -ms-transition-property: margin-left;
  37.   -ms-transition-duration: .9s;
  38.  
  39. }
  40.  
  41. .detalles_recuadro {
  42.   background: #EEEEEE;
  43.   color: #666666;
  44.   font-family: Arial;
  45.   font-size: 12px;
  46. }
  47.  
  48. .recuadro:hover .imagen_recuadro {
  49.     margin-left: -193px;
  50. }

Para hacer el efecto hacia abajo supongo que no habrá otra forma que dándole posición relativa a A, y luego posiciones absolutas a la imagen y al texto de tal forma que intercambiaran sus posiciones respecto a cómo están en el HTML.
  #6 (permalink)  
Antiguo 15/11/2012, 12:32
 
Fecha de Ingreso: octubre-2012
Mensajes: 37
Antigüedad: 11 años, 5 meses
Puntos: 3
Respuesta: ¿Como hacer con CSS Efecto cortina o persiana en las cuatro direcciones?

Muchisimas gracias Bonez

Lo leeré con detenimiento, lo probaré. Seguro que me viene genial

Además ha sido una respuesta rapidisima, doble agradecimiento
  #7 (permalink)  
Antiguo 15/11/2012, 12:40
 
Fecha de Ingreso: octubre-2012
Mensajes: 37
Antigüedad: 11 años, 5 meses
Puntos: 3
Respuesta: ¿Como hacer con CSS Efecto cortina o persiana en las cuatro direcciones?

Copiado el codigo : el efecto cortina a la izquierda, funciona y queda genial.

Muchas gracias Bonez, eres fantástico

A ver si en un par de días logro, con tus indicaciones, hacer la cortina hacía la derecha, que tu has hecho ¡en 5 minutos! jaja
  #8 (permalink)  
Antiguo 16/11/2012, 04:01
 
Fecha de Ingreso: octubre-2012
Mensajes: 37
Antigüedad: 11 años, 5 meses
Puntos: 3
Respuesta: ¿Como hacer con CSS Efecto cortina o persiana en las cuatro direcciones?

Pues para la cortina hacia la derecha no lo consigo.

He "flotado" la imagen a la derecha y el texto a la izquierda.

Y logicamente he puesto que al poner encima el cursor del raton (hoover) el left-margin pase a un numero positivo, para que se desplace hacia la derecha

El texto, en lugar de "meterse" en el recuadro, salta hacia abajo

He puesto el overflow en visible para ver mejor lo que pasa.

el html es igual que el puesto anteriormente

el css :

Código:
.recuadro {
  position: relative;
  width: 193px;
  height: 260px;
  overflow: visible;
  border: 1px solid #ccc; }

.recuadro a {
  text-decoration: none;
  color: #000;
    display: block;
    width: 386px; }

.imagen_recuadro, .detalles_recuadro {
  padding: 10px;
  height: 240px;
  width: 173px;
   }

.imagen_recuadro {
  margin-top: 0;
  background: #000000;
  float: right;
  -webkit-transition-property: margin-left;
  -webkit-transition-duration: .9s;
  -moz-transition-property: margin-left;
  -moz-transition-duration: .9s;
  -o-transition-property: margin-left;
  -o-transition-duration: .9s;
  -ms-transition-property: margin-left;
  -ms-transition-duration: .9s;  }

.detalles_recuadro {
  background: #EEEEEE;
  color: #666666;
  font-family: Arial;
  font-size: 12px;
  float: left; }

.recuadro:hover .imagen_recuadro {
    margin-left: 193px;  }
Resultados [URL="http://jsfiddle.net/LoboBlanco/Fddf8/"]aqui[/URL]

¿Alguna ayuda, por favor?
  #9 (permalink)  
Antiguo 16/11/2012, 05:21
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: ¿Como hacer con CSS Efecto cortina o persiana en las cuatro direcciones?

Cambiando un poco el concepto para este caso, creo que era más fácil que el margen-left y la transición se le aplicara a A. Quedaría algo así: http://jsfiddle.net/Fddf8/2/
  #10 (permalink)  
Antiguo 16/11/2012, 12:19
 
Fecha de Ingreso: octubre-2012
Mensajes: 37
Antigüedad: 11 años, 5 meses
Puntos: 3
Respuesta: ¿Como hacer con CSS Efecto cortina o persiana en las cuatro direcciones?

¡ Genial !

Bonez, ¡eres fabuloso!

Evidentemente funciona perfecto. Muchas gracias.

*

Me pondré ahora a pelearme con la cortina descendente.

Quizá con el cambio de concepto que has aplicado pueda conseguirlo.

Reitero mi agradecimiento
  #11 (permalink)  
Antiguo 16/11/2012, 15:46
 
Fecha de Ingreso: octubre-2012
Mensajes: 37
Antigüedad: 11 años, 5 meses
Puntos: 3
Cortina desdendente : funciona

¡ Lo he conseguido! El efecto cortina desdendente me funciona.

Con las pistas de Bonez , alguna idea que había pensado ya antes, unas cuantas pruebas porque no salía, analizar los otros códigos, he logrado que funcione.

Lo difícil ya estaba hecho en los anteriores, claro

Muchas gracias por la ayuda, Bonez , en mis principios de programar un poco en CSS.

El resultado y el código (he variado un poco el html inicial, además del CSS) aquí :

http://jsfiddle.net/LoboBlanco/6hVyz/
  #12 (permalink)  
Antiguo 16/11/2012, 15:51
 
Fecha de Ingreso: octubre-2012
Mensajes: 37
Antigüedad: 11 años, 5 meses
Puntos: 3
Efectos cortina diagonales : Más difícil todavía

Me gustaría aprender a hacer efectos cortina en diagonal.

No sé si es posible solo con CSS.

He empezado por el efecto cortina diagonal hacia arriba y hacia la izquierda, que me parece que será el menos difícil.

Por ahora estoy francamente despistado.

No consigo ni que el texto se situe en su sitio, es decir que empiece debajo y a la derecha de la imagen (creo).

Agredeceré pistas
  #13 (permalink)  
Antiguo 17/11/2012, 02:33
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: ¿Como hacer con CSS Efecto cortina o persiana en las cuatro direcciones?

http://jsfiddle.net/Fddf8/5/

Es parecido a #8 y #9, cambiando los floats y añadiendo margin-top negativo.
  #14 (permalink)  
Antiguo 17/11/2012, 07:02
 
Fecha de Ingreso: octubre-2012
Mensajes: 37
Antigüedad: 11 años, 5 meses
Puntos: 3
Respuesta: ¿Como hacer con CSS Efecto cortina o persiana en las cuatro direcciones?

¡Simplemente genial!

Muchas gracias Bonez

Una vez que lo leo, me parece evidente, pero hasta que no has puesto el código no lo había conseguido.

A ver si a partir de todo lo que me has enseñado consigo hacer las otras cortinas diagonales.

Estoy aprendiendo mucho, mis más sinceras gracias por tus enseñanzas Bonez

*

He puesto el código de Bonez del efecto cortina diagonal hacia arriba y la izquierda y el resultado (para ir teniendo todo organizado) aquí : http://jsfiddle.net/LoboBlanco/WyzD5/
  #15 (permalink)  
Antiguo 17/11/2012, 08:00
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: ¿Como hacer con CSS Efecto cortina o persiana en las cuatro direcciones?

Igual no sería mala cosa ponerle de color de fondo #EEEEEE a .recuadro para que no quede todo tan cuadriculado. Aunque ya es cosa de gustos y de lo que busques.

Y ahora pregunto, ¿todo esto era curiosidad por aprender o es que necesitas que tiren hacia todos los lados?
  #16 (permalink)  
Antiguo 11/12/2012, 03:50
 
Fecha de Ingreso: octubre-2012
Mensajes: 37
Antigüedad: 11 años, 5 meses
Puntos: 3
Respuesta: ¿Como hacer con CSS Efecto cortina o persiana en las cuatro direcciones?

Bonez : muchas gracias por todo

He estado unos días con otros temas, pero tengo idea de comprobar si sé hacer el efecto cortina para todos los lados.

Sobretodo es por aprender. Tengo idea de utilizar el efecto cortina como presentación en algunas partes de mi web. Y hacerlo en distintos sentidos para dar un poco de variedad. Por ahora solo es un proyecto que voy pensando.

Etiquetas: cortina, cuatro, direcciones, efecto, persiana
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:07.