Caos Games
ESTE FORO ESTA CERRADO, POR FAVOR ACUDID A LA NUEVA COMUNIDAD:

http://www.caosg.oni.cc

Unirse al foro, es rápido y fácil

Caos Games
ESTE FORO ESTA CERRADO, POR FAVOR ACUDID A LA NUEVA COMUNIDAD:

http://www.caosg.oni.cc
Caos Games
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.
Conectarse

Recuperar mi contraseña

Buscar
 
 

Resultados por:
 


Rechercher Búsqueda avanzada

Últimos temas
» IMPORTANTE: --- FORO CERRADO --- Nueva comunidad.
Menus CSS 2/2 (Pendiente edicion) I_icon_minitimeJue Jul 22, 2010 6:19 pm por Emmet

» Algunis Graficos desde el mundo shinigami
Menus CSS 2/2 (Pendiente edicion) I_icon_minitimeSáb Jul 10, 2010 8:14 am por Haku-Shinigami

» Chistes
Menus CSS 2/2 (Pendiente edicion) I_icon_minitimeSáb Jul 10, 2010 8:05 am por Haku-Shinigami

» King's War (GdR) 1.0
Menus CSS 2/2 (Pendiente edicion) I_icon_minitimeJue Jul 01, 2010 6:58 pm por Emmet

» Mundo de Caos 0.1 BETA y packs de idioma
Menus CSS 2/2 (Pendiente edicion) I_icon_minitimeJue Jul 01, 2010 6:57 pm por Emmet

» Evitar repetir datos en un ListBox
Menus CSS 2/2 (Pendiente edicion) I_icon_minitimeSáb Jun 19, 2010 2:01 pm por Emmet

» Age Of Mytology | Juego de estrategia
Menus CSS 2/2 (Pendiente edicion) I_icon_minitimeMar Jun 15, 2010 5:44 pm por vengatoro

» Notificacion importante 21/05/10
Menus CSS 2/2 (Pendiente edicion) I_icon_minitimeSáb Mayo 22, 2010 1:20 pm por gorogrim

» Novedades 9/5/2010
Menus CSS 2/2 (Pendiente edicion) I_icon_minitimeMiér Mayo 12, 2010 4:04 pm por gorogrim

» [Rm2k3] Wonder Boy Z
Menus CSS 2/2 (Pendiente edicion) I_icon_minitimeLun Mayo 03, 2010 5:14 am por Haku-Shinigami

Webs Amigas
PortyGames
Donaciones
Unete!

Menus CSS 2/2 (Pendiente edicion)

2 participantes

Ir abajo

Menus CSS 2/2 (Pendiente edicion) Empty Menus CSS 2/2 (Pendiente edicion)

Mensaje por Emmet Sáb Abr 10, 2010 2:58 pm

Menús horizontales con CSS


Los menús horizontales con imágenes (y sin ellas) en CSS son más complejos que los verticales, y es importante comprender bien lo anteriormente explicado para comprender este tipo de menús.



Veamos primero el resultado final para, a continuación explicarlo.


Las imágenes usadas para este menú son:


Imagen izquierda estado normal.
[Tienes que estar registrado y conectado para ver esa imagen]
Imagen izquierda estado hover.

Imagen izquierda apartado actual (seleccionado).

Imagen derecha para todos los estados.



La idea consiste en superponer la imagen derecha sobre la izquierda, ocultándose la parte sobrante de esta última; y dar una altura variable para que encoja en el evento hover:


[Tienes que estar registrado y conectado para ver esa imagen]
Funcionamiento del menú horizontal


EL código (X)HTML es:



  1. id="elmenu">
  2. href="#">Texto del enlace
  3. href="#" class="seleccionado">Texto del enlace
  4. href="#">Texto del enlace
  5. href="#">Texto del enlace
  • id="contenido">
  • Mueve el ratón sobre el menú.



  • El (X)HTML es prácticamente el mismo, solo le hemos añadido un en el anchor text, y un div a continuación para el contenido...


    El CSS es:





    Vamos por partes; el código:


    1. #elmenu a {
    2. display:block;
    3. float:left;
    4. }


    Quiere decir que los enlaces de la capa #elmenu, se deben comportar como elemento de bloque, es decir, deben generar un salto de línea antes y después de sí. Sin embargo, como se ve en el menú, los enlaces no están unos debajo de otros, sino en línea, esto es por que a continuación le damos un float:left; esto es, deben flotar hacia la izquierda, de modo que los siguientes enlaces se deslicen hacia la derecha. ¿Por que convertir en elemento de bloque y a continuación quitarle los saltos de línea? por que solo a los elementos de bloque se les puede modificar los atributos margin y padding, y necesitamos esas propiedades para poder visualizar las imágenes.


    [Tienes que estar registrado y conectado para ver esa imagen]
    Funcionamiento del atributo float de CSS



    1. #elmenu a:link, #elmenu a:visited {
    2. padding-left:19px;
    3. line-height:30px;
    4. border-bottom:2px solid #BABABA;
    5. background:transparent url('images/relleno.jpg') 0px 0px no-repeat;
    6. color:#600000;
    7. text-decoration:none;
    8. font-weight:bold;
    9. }


    En este código, para los estados de reposo de los enlaces, damos un padding-left: 19px; para viualizar 19px de la imagen por la izquierda del texto. A continuación le damos al texto una altura de 30px; esta será la distancia que habrá entre una fila y la inferior (aunque no exista fila inferior de texto como es el caso). Posicionamos la imagen en la coordenada 0px, 0px, y el resto del código, es puramente decorativo e irrelevante para la explicación de este tipo de menús.



    1. #elmenu span {
    2. display:block;
    3. float:left;
    4. background:transparent url('images/derecha.jpg') top right no-repeat;
    5. padding-right:19px;
    6. cursor:pointer;
    7. padding-top:6px;
    8. }


    Vimos que en el código (X)HTML que al texto del enlace (anchor text), lo introducimos entre las etiquetas y ; el motivo es sencillo, si tenemos 2 imágenes a posicionar, necesitamos 2 etiquetas, ya que a una misma etiqueta no se le pueden dar dos background, de modo que convertimos la etiqueta en elemento de bloque y le damos un float:left; tal y como explicamos antes, para ahora sí, poder darle un padding-right de 19px y posicionar allí la imagen. Con respecto al posicionamiento de la imagen, cuando se quiere expresar arriba, abajo, izquierda o derecha, en puesto de buscar con qué pixel corresponde (arriba y a la izquierda siempre es 0px, 0px) se puede expresar con las palabras reservadas top, bottom, left y right. En el siguiente gráfico se ilustra el funcionamiento:



    [Tienes que estar registrado y conectado para ver esa imagen]
    Posicionamiento de las imágenes en las etiquetas a y span


    1. #elmenu a:hover {
    2. background:transparent url('images/rellenohover.jpg') 0px 0px no-repeat;
    3. border-bottom:2px solid #9A6802;
    4. margin-top:6px;
    5. line-height:24px;
    6. }


    En el evento hover del enlace cambiamos la imagen y la hundimos. Para hundirla, le quitamos a la altura de la línea (line-height) 6px dándole un valor de 24px (en el estado de reposo era de 30px). Con esto conseguimos que la altura total del background disminuya 6px, pero no los pierde por arriba, sino por abajo; para corregirlo, le damos 6px al margen superior.


    1. .seleccionado {
    2. background:transparent url('images/rellenoseleccionado.jpg') 0px 0px no-repeat !Important;
    3. border-bottom:2px solid #225748 !Important;
    4. margin-top:0px !Important;
    5. line-height:30px !Important;
    6. }


    Por último, para este menú hemos añadido el estado seleccionado. Simplemente, resalta el apartado en el que estamos, para ello nos creamos la clase seleccionado, donde la imagen es distinta y el line-height vale para simpre 30px. Es importante resaltar la utilización de la claúsula !Important; que evita que se ejecute otros valores para la misma propiedad sobre la misma etiqueta, por ejemplo, si margin-top y line-height no tuviesen estas claúsulas, al pasar el ratón sobre el enlace, saltaría el evento hover y el enlace se hundiría, con estas claúsulas, aunque el evento salta igual, no se interpretan dichos valores, sino los originales.



    El resto del código CSS es irrelevante para el menú.


    Llegado a este punto decir, que la utilización de un menú horizontal o vertical depende mucho del diseño y el potencial de crecimiento del WebSite. El menú horizontal no puede ser muy grande, y no debería superar un tamaño mayor al de la resolución de pantalla de 800x600, ya que el menú se partirá y no quedará bien. Por el contrario, el menú vertical puede crecer ilimitadamente sin afectar a la estética de la web. El menú horizontal, en principio es más indicado para webs pequeñas, con 4 a 6 apartados y qe no van a necesitar más apartados en un futuro. Aunque en última instancia dependerá del criterio de cada diseñador.



    Emmet
    Emmet
    Admin
    Admin

    Mensajes : 386
    Fecha de inscripción : 01/11/2009
    Edad : 30
    Localización : Sarria

    Datos de soporte
    Version: MDC v.0.1 BETA
    Respeto de las normas:
    Menus CSS 2/2 (Pendiente edicion) Left_bar_bleue100/100Menus CSS 2/2 (Pendiente edicion) Empty_bar_bleue  (100/100)

    https://caos-games.forosactivos.net

    Volver arriba Ir abajo

    Menus CSS 2/2 (Pendiente edicion) Empty Re: Menus CSS 2/2 (Pendiente edicion)

    Mensaje por gorogrim Sáb Abr 10, 2010 3:02 pm

    no se entiende nada, intenta arreglarlo

    gorogrim
    Usuario experto
    Usuario experto

    Mensajes : 61
    Fecha de inscripción : 03/11/2009
    Edad : 32

    Datos de soporte
    Version: Ninguna
    Respeto de las normas:
    Menus CSS 2/2 (Pendiente edicion) Left_bar_bleue100/100Menus CSS 2/2 (Pendiente edicion) Empty_bar_bleue  (100/100)

    Volver arriba Ir abajo

    Menus CSS 2/2 (Pendiente edicion) Empty Re: Menus CSS 2/2 (Pendiente edicion)

    Mensaje por Emmet Sáb Abr 10, 2010 3:02 pm

    me queda editarlo, pero tengo que pasar muchos contenidos ahora que estoy en el Pc donde los tenia, asi que intentare copy&paste y mas tarde los editare
    Emmet
    Emmet
    Admin
    Admin

    Mensajes : 386
    Fecha de inscripción : 01/11/2009
    Edad : 30
    Localización : Sarria

    Datos de soporte
    Version: MDC v.0.1 BETA
    Respeto de las normas:
    Menus CSS 2/2 (Pendiente edicion) Left_bar_bleue100/100Menus CSS 2/2 (Pendiente edicion) Empty_bar_bleue  (100/100)

    https://caos-games.forosactivos.net

    Volver arriba Ir abajo

    Menus CSS 2/2 (Pendiente edicion) Empty Re: Menus CSS 2/2 (Pendiente edicion)

    Mensaje por Contenido patrocinado


    Contenido patrocinado


    Volver arriba Ir abajo

    Volver arriba

    - Temas similares

     
    Permisos de este foro:
    No puedes responder a temas en este foro.