Ik was me een beetje aan 't verdiepen in het maken van een menu met de nieuwe html5-tag (nav, maar volgens mij doe ik iets niet helemaal goed. Om de één of andere reden krijg ik het menu, wat gemaakt is met een unordered list, niet op display: inline;... geen idee wat ik verkeerd doe, want van wat ik kan zien staat alles gewoon op de goede plek.
Ik bekijk het testbestandje trouwens in Safari 5.0.4., wat volgens mij prima moet werken Zou iemand heel even willen meekijken om te zien of ik iets grandioos over het hoofd zie? Het is een heel klein stukje code omdat 't me puur om een klein testje ging, en de CSS is nog inline en niet extern:http://dl.dropbox.com/u/23967/html5%20index.html
Alvast bedankt!
Groet,Joram
Wat je nu ziet is een groot grijs vlak met een verticale lijst in het midden daarvan. In dat grijze vlak staat nu het woord "hallo", wat ónder het grijze vlak zou moeten staan. En ik gebruik display:inline juist omdat ik een horizontaal menu wil, iets wat nu niet gebeurt om de één of andere reden. Ik zie maar niet waarom de lijst niet horizontaal komt te staan en waarom "hallo" niet onder 't menu staat. Ik heb talloze voorbeelden bekeken, maar ze gebruiken nergens een "clear:both" voor zoiets simpels als een menu
mvg,Joram
Dit is de standaard html(5) code voor een horizontaal menu:
(Bewerkt door joram om 17:26, 19-04-2011)
Met de "oude" html-variant gebruik je een unordered list voor álle menu's, of ze nu horizontaal of verticaal zijn. Met html 5 gebruik je alléén de nav-tag, en niet de unordered list. Dan kan ik gelukkig makkelijk oplossen door inderdaad de unordered list weg te laten.
Maar dat neemt niet weg dat als ik 't op de "html4" manier wil doen, dat die unordered list juist gebruikt zou moeten worden en dat "display:inline" nou net bedoelt is om deze lijsten horizontaal weer te (kunnen) geven
Mvg,Joram
nav { margin: 0 auto; padding: 0; text-align: center; width: 100%; height: 30px; background-color: gray;}nav ul { margin: 0; padding: 0; width: 100% list-style-type: none; background-color: silver;}nav ul li a:hover { color: red;}nav ul li { margin: 0 20px 0 0; padding: 0; display: inline;}
nav ul { margin: 0; padding: 0; width: 100% list-style-type: none; background-color: silver;}
nav ul li a:hover { color: red;}
nav ul li { margin: 0 20px 0 0; padding: 0; display: inline;}
Aan de andere kant, ik begreep ook niet zo goed waarom ik met 't menu zoals ik die heb opgebouwd in 't voorbeeldje, een display:block nodig had om het inactive-state (blauw) van het menu te laten zien, en pas de rode hover-variant als je er met je muis overheen gaat.
De meeste voorbeelden van html4-menu's in combinatie met css2 die ik kan vinden zijn al redelijk oud, en de enige versies die ik kan vinden die écht wat nieuwer zijn, zijn al vaak opgebouwd als html5/css3. Zelfs Listamatic's voorbeelden voelen al redelijk antiek aan
p.s.: je had inderdaad gelijk Willemijn! Die display:block verwijderen loste inderdaad 't probleem op. Vreemd dat ik die display:block zo vaak tegen kom in horizontale menu's die unordered lists gebruiken. Ik moet er nog maar eens goed induiken om te zien waar dat nou aan lag dan
(Bewerkt door joram om 22:37, 19-04-2011)
www.x41.nl/joram/ (Je had ook een regeltje niet juist afgesloten bij nav ul)
Een Unordered List is inderdaad niet verplicht binnen een HTML5 nav tag maar wel handig als je bijvoorbeeld later een submenu wilt toevoegen.
(Bewerkt door Blender om 9:17, 20-04-2011)
Nu heb ik alleen nog één probleem. Het menu horizontaal zetten gaat nu uitstekend, maar ik krijg 'm nog niet goed gecentreerd. Ik heb de UL-tag een hoogte gegeven zodat ik kan zien waar deze staat... hij heeft namelijk een zilveren kleur ten opzichte van de NAV-tag, die een grijze kleur heeft. Nu staat de UL zélf wel goed in het midden, maar de LI's blijven maar aan de linkerkant geplakt zitten.
Ik heb wel al gezien dat dat komt doordat de linkjes een float:left hebben, maar zelfs met "margin:0 auto" en/of "text-align:center" krijg ik dat menuutje niet goed gecentreerd. Zie ik iets over 't hoofd toevallig?
p.s.: een geupdate html-bestandje: http://dl.dropbox.com/u/23967/html5%20index.html
(Bewerkt door joram om 9:48, 20-04-2011)
Nu werkt hij nagenoeg perfect, met het menu netjes gecentreerd én horizontaal.http://dl.dropbox.com/u/23967/html5%20index2.html
't Enige waar ik een beetje mee zit te stoeien is de hoogte van de LI's, maar goed
Bedankt allen! (Moxie, jou heb ik al een poos niet meer gezien hier zeg )