Ver Mensaje Individual
  #5 (permalink)  
Antiguo 30/09/2012, 04:16
Avatar de javiandgo
javiandgo
 
Fecha de Ingreso: septiembre-2010
Ubicación: Cumaral-Meta, Colombia
Mensajes: 457
Antigüedad: 14 años, 2 meses
Puntos: 55
Respuesta: Botones con esquinas redondeadas y selectores CSS

Personalmente no entiendo cual es el rollo de usar tantos elementos si puedes lograr el mismo efecto con menos lineas de código. Dices profundizar en CSS avanzado... pues creo no vas a avanzar así, teniendo en cuenta que CSS3 es donde estamos y CSS4 para donde vamos.

Código HTML:
Ver original
  1. <a  href="#">lorem ipusm dolor sit amet</a>
  2.  
  3. <ul class="menu">
  4.     <li>
  5.         <a href="menu-item">Centro</a>
  6.         </li>
  7. </ul>

Código CSS:
Ver original
  1. .menu a.menu-item {
  2. background: #333;
  3. padding: 5px 10px;
  4. border-radius:5px;
  5. }
  6.  
  7. .menu a.menu-item:hover {
  8. background:#f60;
  9. }

furoya ha acertado bastante mejor en orientarte sobre mejorar el css teniendo los selectores, con 2 son suficientes no hace falta un tercero.

En cuanto a la parte que el boton hace :hover en un elemento diferentes es por el orden en el cual estan declaradas las propiedades CSS del Selector

Código CSS:
Ver original
  1. a:hover.menu + ul a span.left {
  2.     background:url("menu_item_a_hover_01.png");
  3. }

aquí estas diciendo que cuando el elemento a con la clase .menu este seleccionado cambie el fondo del elemento ul a span.left

Código CSS:
Ver original
  1. ul.menu > li a:hover span.left {
  2.     background:url("menu_item_a_hover_01.png");
  3. }

aquí si estas diciendo que todos los elementos span.left que se encuentren dentro de li a:hover y directamente debajo del elemento ul con clase .menu cambien el color del fondo ¡ojo! la clase .menu debe ser declarada al elemento de lista ul y no al link de arriba