Foros del Web » Creando para Internet » CSS »

[SOLUCIONADO] CSS3 propiedad transform

Estas en el tema de CSS3 propiedad transform en el foro de CSS en Foros del Web. hola, tengo una nav con una imagen con cada li. Tengo una imagen y abajo de esta el texto del nav, por ejemplo proyecto, y ...
  #1 (permalink)  
Antiguo 03/08/2013, 18:19
 
Fecha de Ingreso: enero-2011
Mensajes: 21
Antigüedad: 13 años, 10 meses
Puntos: 0
CSS3 propiedad transform

hola,

tengo una nav con una imagen con cada li. Tengo una imagen y abajo de esta el texto del nav, por ejemplo proyecto, y arriba de este un circulo con un icono para proyecto, que sirve de link.
Esta imagen la puse en background del li, ya que en el hover la cambio por otra imagen (si la ponia con html (img src) no podia cambiarla en el hover, ya que el hover me aparecia abajo de la imagen).

El problema viene cuando yo quiero agregar la propiedad transform o cualquier otra para que sea un poco mas dinámico, por ejemplo, que esta imagen rota al darle hover. El problema que rota la imagen y tambien el texto del link, por ejemplo "proyecto", que está en el "a".
He probado varias cosas, y sobretodo la propiedad transform:none (-webkit-transfrom:none" .. y ni resultado)

Alguna idea?

gracias!!
  #2 (permalink)  
Antiguo 04/08/2013, 10:17
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.489
Antigüedad: 22 años, 3 meses
Puntos: 2114
Respuesta: CSS3 propiedad transform

Es mejor que pongas código a que lo narres cual novela.
  #3 (permalink)  
Antiguo 05/08/2013, 18:14
 
Fecha de Ingreso: enero-2011
Mensajes: 21
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: CSS3 propiedad transform

pzin tienes toda la razón! jeje, aquí va el código:

HTML:
Código HTML:
Ver original
  1. <nav>
  2.             <ul>
  3.                 <li id="proyecto">
  4.                     <a id="proyecto-a" href="#"> Proyecto </a>                 
  5.                 </li>
  6.             </ul>
  7.         </nav>

(solo pongo un enlace para no alargar)

CSS:
Código CSS:
Ver original
  1. nav li#proyecto{
  2.         background:url('img/main-proyecto.png') no-repeat;
  3.         }
  4. nav li#proyecto:hover{
  5.         background:url('img/hover-proyecto.png') no-repeat;
  6.         -webkit-transform:rotate(25deg);
  7.         -moz-transform:rotate(25deg);
  8.         }
  9. nav li a:hover{
  10.         -webkit-transform:none;
  11.         -moz-transform:none;
  12.         }

Última edición por pzin; 09/08/2013 a las 01:32 Razón: highlight
  #4 (permalink)  
Antiguo 06/08/2013, 02:09
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.489
Antigüedad: 22 años, 3 meses
Puntos: 2114
Respuesta: CSS3 propiedad transform

Pues si quieres seguir manteniendo la misma estructura, lo ideal sería añadir un pseudo-elemento, poner ahí la imagen y rotarlo. Algo así:

Código CSS:
Ver original
  1. li#proyecto:after {
  2.   display: block;
  3.   height: 100px;
  4.   width: 100px;
  5.   content: '';
  6.   background-image: url();
  7.   transition: all .4s ease-out;
  8. }
  9.  
  10. li:hover:after {
  11.   transform: rotate(25deg);
  12. }
  #5 (permalink)  
Antiguo 07/08/2013, 17:05
 
Fecha de Ingreso: enero-2011
Mensajes: 21
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: CSS3 propiedad transform

hola!
problema resuelto, tal como me dices pzin, aunque en vez de usar el pseudo-elemento after, usé el before. Con after me quedaba después del nombre del enlace, y poniendo before en el elemento "a", me quedó perfecto!

muchas gracias, no había usado nunca estos pseudo-elementos y fue un descubrimiento para mi, gracias!

Etiquetas: background, css3
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 05:13.