Hover Effekt stehen lassen

Hover Effekt stehen lassen

Beitragvon YuGiH » 06.04.2010, 17:26

Hallo zusammen,

habe mir ein kleines Horizontales Menü geschrieben, das wiederum beim :hover auf einen Hauptpunkt ein horizontales-Submenü einblendet. Soweit funktioniert das ganze auch ganz gut. Eine Kleinigkeit stört mich aber noch:

Wenn ich mit :hover über einen Hauptpunkt ein untermenü öffne, ändert sich der Hintergrund des Hauptpunktes. Wechsle mit der Maus in das Untermenü, wird der Hovereffekt vom Hauptpunkt wieder ausgeblendet.

Gibt es irgendeine Möglichkeit, den Hover-Effect vom Hauptpunkt stehen zu lassen?

Hier der CSS-Code:
Code: Alles auswählen
/***** Hauptmenü *****/
div#hauptmenu {
  position: relative;
   left: 0;
  top: 0;
  text-align: left;
  width: auto;
  height: 15px; 
  margin-top:196px;
}
ul.menu-nav {
    text-decoration: none;
    list-style: none;
    padding: 0;
    margin: 0;
    float:left;
    font-size: 11px;
    font-family: verdana, arial, helvetica, sans-serif;
    }
ul.menu-nav li {
    width:auto;
    float:left;
    height:15px;
    line-height:15px;
    display:inline;
    overflow:hidden;
    border-right: 1px solid #0055A0;
    }
ul.menu-nav li:last-child{
    border: none;
    }   
ul.menu-nav li a:link, ul.menu-nav li a:visited {
    text-align:center;
    display:block;
    color: #0055A0;
    margin:0;
    padding:0 10px 0 10px;
    }
ul.menu-nav li.active a:link, ul.menu-nav li.active a:visited {
    color: #fff;
    background-color: #0055A0;
    }
ul.menu-nav li a:hover{
    color: #fff;
    background-color: #0055A0;
    }
/***** ENDE Hauptmenü *****/   
/***** Hauptuntermenü *****/   
div#untermenu {
  position: relative;
   left: 0;
  top: 0;
  text-align: left;
  width: auto;
  height: 13px; 
  margin-top:0px;
  padding-top: 4px;
  padding-left: 84px;
}
ul.menu-nav li.parent ul {
    visibility: hidden;
    position:absolute;
    top: 0;
    left:0;
    text-decoration: none;
    list-style: none;
    padding: 0;
    margin: 0;
    margin-top: 15px;
    float:left;
    font-size: 11px;
    font-family: verdana, arial, helvetica, sans-serif;
    z-index: 10;
    }
ul.menu-nav li.active ul, ul.menu-nav li.parent:hover ul {
    visibility: visible;
    }
ul.menu-nav li.parent ul li {
    width:auto;
    float:left;
    padding: 3px 0 3px 0;
    height:15px;
    line-height:15px;
    display:inline;
    overflow:hidden;
    border-right: 1px solid #BEBEBE;
    }
ul.menu-nav li.parent ul li:last-child{
    border: none;
    }   
ul.menu-nav li.parent ul li a:link, ul.menu-nav li.parent ul li a:visited {
    text-align:center;
    display:block;
    color: #BEBEBE;
    margin:0;
    padding:0 10px 0 10px;
    }
ul.menu-nav li.parent ul li.active a:link, ul.menu-nav li.parent ul li.active a:visited {
    color: #fff;   
    }
ul.menu-nav li.parent ul li a:hover {
    color: #fff;   
    }   
/***** ENDE Hauptuntermenü *****/


Hier noch ein Auszug aus dem HTML des Menüs:

Code: Alles auswählen
<div id="hauptmenu">
<ul class="menu-nav">
<li id="current" class="active item27"><a href="/index.php?option=com_content&amp;view=category&amp;layout=aktuell&amp;id=45&amp;Itemid=27"><span>Aktuell</span></a></li>
<li class="item2"><a href="/index.php?option=com_content&amp;view=article&amp;id=86&amp;Itemid=2"><span>Das Versorgungswerk</span></a></li>
<li class="parent item41"><a href="/index.php?option=com_content&amp;view=frontpage&amp;Itemid=41"><span>Informationen</span></a>
<ul>
<li class="item34"><a href="/index.php?option=com_content&amp;view=category&amp;layout=sp53&amp;id=42&amp;Itemid=34"><span>Mitglieder</span></a></li>
<li class="item18"><a href="/index.php?option=com_content&amp;view=category&amp;layout=sp53&amp;id=43&amp;Itemid=18"><span>Absolventen/Studenten</span></a></li>
<li class="item28"><a href="/index.php?option=com_content&amp;view=category&amp;layout=sp53&amp;id=41&amp;Itemid=28"><span>Rentner</span></a></li>
<li class="item29"><a href="/index.php?option=com_content&amp;view=category&amp;layout=sp53&amp;id=44&amp;Itemid=29"><span>Arbeitgeber</span></a></li>
</ul>
</li>
<li class="item50"><a href="/index.php?option=com_content&amp;view=category&amp;layout=sp53&amp;id=34&amp;Itemid=50"><span>Fragen und Antworten</span></a></li>
<li class="item48"><a href="/index.php?option=com_content&amp;view=category&amp;layout=sp44&amp;id=35&amp;Itemid=48"><span>Downloads</span></a></li>
<li class="item53"><a href="/index.php?option=com_content&amp;view=article&amp;id=87&amp;Itemid=53"><span>Rentenrechner</span></a></li>
</ul>
</div>
YuGiH
neu hier
 
Beiträge: 2
Registriert: 06.04.2010, 17:06

Re: Hover Effekt stehen lassen

Beitragvon sejuma » 06.04.2010, 19:58

Ich glaube nicht, dass das allein mit CSS geht.
Denn in dem Moment, wo du auf einen Untermenüpunkt hoverst, hast du den Hauptmenüpunkt ja mit dem Cursor bereits verlassen.
Evtl. ist sowas mit PHP oder Javascript möglich, aber da kenne ich mich nicht mit aus.
Bild
sejuma
Vielposter
 
Beiträge: 788
Registriert: 15.07.2009, 17:46

Re: Hover Effekt stehen lassen

Beitragvon YuGiH » 07.04.2010, 15:24

Doch, es geht, musste aber den gesamten CSS-Code umkrempeln. Hier der neue Code für alle, die es interessiert:

Code: Alles auswählen
#hauptmenu { position: relative; left: 0; top: 0; text-align: left; width: auto; height: 15px; margin-top:196px; z-index:100; font-size: 11px; font-family: verdana, arial, helvetica, sans-serif;}
#hauptmenu ul li a, #hauptmenu ul li a:visited {text-align:center;display:block;color: #0055A0;margin:0;padding:0 10px 0 10px;}
#hauptmenu ul {display:block;padding:0; margin:0; list-style: none; text-decoration: none; float:left;}
#hauptmenu ul li {display:block;float:left;width:auto;height:15px;line-height:15px;display:inline;border-right: 1px solid #0055A0;}
#hauptmenu ul li:last-child{border: none;} 
#hauptmenu ul li ul {display: none;}


#hauptmenu ul li:hover a {color: #fff; background-color: #0055A0;}
#hauptmenu ul li.active a:link, #hauptmenu ul li.active a:visited { color: #fff; background-color: #0055A0;}
#hauptmenu ul li:hover ul, #hauptmenu ul li.active ul {display: block;position:absolute;top: 0;left:0;padding: 3px 0 3px 0;margin: 0;margin-top: 15px;float:left;}
#hauptmenu ul li:hover ul li, #hauptmenu ul li.active ul li {display:block;width:auto; float:left;height:15px;line-height:15px;display:inline;overflow:hidden;border-right: 1px solid #BEBEBE;}
#hauptmenu ul li:hover ul li:last-child, #hauptmenu ul li.active ul li:last-child {border: none;}
#hauptmenu ul li:hover ul li a, #hauptmenu ul li.active ul li a:link, #hauptmenu ul li.active ul li a:visited {text-align:center;display:block;color: #BEBEBE;margin:0;padding:0 10px 0 10px;background-color: #0055A0;}
#hauptmenu ul li:hover ul li a:hover, #hauptmenu ul li.active ul li a:hover, #hauptmenu ul li.active ul li.active a {color: #fff;}
YuGiH
neu hier
 
Beiträge: 2
Registriert: 06.04.2010, 17:06


Moderatoren: Laus, Moderatoren

Ähnliche Beiträge zu "Hover Effekt stehen lassen"

Zurück zu: CSS für Fortgeschrittene

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste