CSS - Hover menu se nevysouvá Vyřešeno

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

IIwetKKa
nováček
Příspěvky: 34
Registrován: září 11
Pohlaví: Žena
Stav:
Offline

CSS - Hover menu se nevysouvá  Vyřešeno

Příspěvekod IIwetKKa » 23 led 2013 09:44

Dobrý den, mám problém s vyjíždejícím horizontálním hover menu.

CSS struktura

Kód: Vybrat vše

  #menu-box {background: silver; repeat-x 0 0;}
  #menu {width: 960px; margin: 0 auto;}

 #menu li {
  float: left;
   display: inline;
   list-style-type: none;
   text-align: center;
}

 #menu li a {
  text-decoration: none;
   color: white;
   float: left;
   display: inline;
   line-height: 35px;
   padding: 0 18px;
}

#menu ul ul {visibility: hidden;}
       
 #menu ul li:hover ul{visibility: visible;}

 #menu li a:hover, #menu li a.active {color: black;}

 /* Clearfix */
 .clearfix:after {
   display: block;
   clear: both;
   visibility: hidden;
   height: 0;
   font-size: 0;
   content: ' ';
 }

 .clearfix {min-height: 1px;}
 .clearfix {display: inline-block;}

 /* Backslash hack - nemel by to videt IE/Mac \*/
 .clearfix {display: block;}
 /* Konec hacku */



Takhle vypadá má CSS definice.

Kód: Vybrat vše

<div id="menu-box">
 <ul id="menu" class="clearfix">
   <li class="first"><a class="active" href="/">Úvod</a>
    <ul>
      <li><a href="#">aaaa</a></li>
    </ul>
    </li>
   <li><a href="#">Autoři</a></li>
   <li><a href="#">Články</a></li>
   <li><a href="#">Fotografie</a></li>
   <li><a href="#">Kontakt</a></li>
 </ul>
 </div>


A takhle HTML.

Chtěla bych, aby když přejedu myší přes jednu položku v menu, aby se mi zobrazili další, ale stále mi to nějak nefunguje. Koukala jsem již i po netu a bohužel bez rady. Co tedy dělám špatně?

Děkuji za radu.


Děkuji
IIwetKKa

Reklama
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: CSS - Hover menu se nevysouvá

Příspěvekod CZechBoY » 23 led 2013 19:42

sice nechápu k čemu to menu je, ale překáží ti tam ul u #menu ul

Kód: Vybrat vše

#menu li ul {visibility: hidden;}

#menu li:hover ul{visibility: visible;}
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW

IIwetKKa
nováček
Příspěvky: 34
Registrován: září 11
Pohlaví: Žena
Stav:
Offline

Re: CSS - Hover menu se nevysouvá

Příspěvekod IIwetKKa » 24 led 2013 10:46

Skvělé!! :)


A teď ještě, jak docílím toho, aby se mi ten druhý seznam, který se vysunuje, vysunoval dolu? Teď se vysunuje vpravo, což znamená, že je mezi prvními položkami prázdné místo a až když přejedu přes položku, zobrazí se mi v tom volném místě ten druhý seznam.


Děkuji
IIwetKKa

Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: CSS - Hover menu se nevysouvá

Příspěvekod CZechBoY » 24 led 2013 13:44

nějak takhle: http://www.testing.jabko.net/menu/ ?
akorát se mi tam nelíbí ten position: absolute, no hold budeš muset při změně velikosti toho 1. menu měnit i posunutí toho vysouvání no :(

hlavní problém byl v tom, že nepoužíváš selector přímýho potomka, ale jakýhokoliv, pak se i těm podmenu nastavil float:left
pro jednoznačnost jsem tam dal ty selectory na přímýho potomka všude :-)

kod css

Kód: Vybrat vše

#menu-box {background: silver repeat-x 0 0;}
#menu {width: 960px; margin: 0 auto;}

#menu > li {
   float: left;
   display: inline;
   list-style-type: none;
   text-align: center;
}

#menu > li > a {
   text-decoration: none;
   color: white;
   line-height: 35px;
   padding: 0 18px;
}

#menu > li > ul {
   background: gold;
   position: absolute;
   top: 43px;
}
#menu > li > ul > li {
   list-style-type: none;
}
#menu > li > ul > li > a {
   color: brown;
   text-decoration: none;
}
#menu > li >ul > li:hover > a {
   color: dodgerblue;
}

#menu > li > ul {visibility: hidden;}

#menu > li:hover > ul {visibility: visible;}

#menu > li > a:hover, #menu > li > a.active {color: black;}

/* Clearfix */
.clearfix:after {
   display: block;
   clear: both;
   visibility: hidden;
   height: 0;
   font-size: 0;
   content: ' ';
}

.clearfix {min-height: 1px;}
.clearfix {display: inline-block;}

/* Backslash hack - nemel by to videt IE/Mac \*/
.clearfix {display: block;}
/* Konec hacku */
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW

IIwetKKa
nováček
Příspěvky: 34
Registrován: září 11
Pohlaví: Žena
Stav:
Offline

Re: CSS - Hover menu se nevysouvá

Příspěvekod IIwetKKa » 24 led 2013 14:21

Paráda. :) Díky. :)


Děkuji
IIwetKKa


Zpět na “Programování a tvorba webu”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 4 hosti