Ver Mensaje Individual
  #8 (permalink)  
Antiguo 27/06/2013, 05:27
Avatar de pzin
pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 9 meses
Puntos: 2114
Respuesta: Como hacer que un div aparezca debajo de su correspondiente

Pues mira, se te va complicando el asunto.

Estuve haciendo una prueba con todos tus requisitos y no te queda más remedio que añadir otro elemento para centrar ese elemento. Quedaría en algo como esto la estructura:

Código HTML:
Ver original
  1. <a>
  2.   <img src="fulanito.png">
  3.   <div>
  4.     <span>Nombre Apellido</span>
  5.   </div>
  6. </a>

Luego el CSS se complica un poco más:

Código CSS:
Ver original
  1. a {
  2.   position: relative;
  3.   display: inline-block;
  4.   width: 50px;
  5.   height: 50px;
  6. }
  7.  
  8. a div {
  9.   position: absolute;
  10.   right: 50%;
  11.   bottom: -20px;
  12.   visibility: hidden;
  13.   opacity: 0;
  14.   transition: opacity .4s ease-out, visibility 0 linear .4s
  15. }
  16.  
  17. a div span {
  18.   display: block;
  19.   margin-right: -100%;
  20.   text-align: center;
  21.   white-space: nowrap;
  22. }
  23.  
  24. a:hover div {
  25.   visibility: visible;
  26.   opacity: 1;
  27.   transition-delay: 0;
  28. }

Más que complicado, un poco rebuscado. El problema de centrar ese elemento con posición absoluta es cuando se hace más largo que su contenedor, por eso había que meter otro contenedor.

Ya de paso te puse una transición, que tendrás que añadirle los prefijos propietarios o usar prefixfree, Sass o alguna salsa de esas.

Funcionando: http://codepen.io/pzin/pen/dvKht