Avatar billede Slettet bruger
19. december 2012 - 14:34 Der er 29 kommentarer og
1 løsning

CSS koder for nav menu

Jeg er ved at udarbejde mit eget site og har brug for nav css koder til fem menu punkter - hvid baggrund og ingen synlige bokse - sitet er 960 pixels.

Er der nogen der har en perfekt css kode?
Avatar billede olebole Juniormester
20. december 2012 - 01:02 #1
<ole>

Det giver ikke rigtig mening. En CSS-kode er skræddersyet til den HTML-kode, den skal virke på. Hvordan ser din HTML ud?

/mvh
</bole>
Avatar billede Slettet bruger
20. december 2012 - 11:44 #2
Fik heller ikke forklaret det helt klart - menu knapperne skal være i toppen af hjemmesiden - ingen header og html koderne ser sådan ud

<nav>
<ul>
<li> <a href="index.html">Forsiden</a></li>
<li> <a href="side1.html">Optimering</a></li>
<li> <a href="side2.html">Ydelser</a></li>
<li> <a href="side3.html">Nyheder</a></li>
<li> <a href="side4.html">Kontakt</a></li>
</ul>

</nav>
Avatar billede olebole Juniormester
20. december 2012 - 18:32 #3
Jamen så skal du bare give dine LI elementer display:inline-block. Så lægger de sig ved siden af hinanden, som om de var inline elementer
Avatar billede Slettet bruger
21. december 2012 - 13:09 #4
ok tak men hvordan skrives css koderne
Avatar billede olebole Juniormester
21. december 2012 - 14:14 #5
Du ved tydeligvis, der er noget, som hedder CSS, så mon ikke, du selv kunne komme med et bud? Prøv selv at komme med et bud - så tager vi den derfra  =)
Avatar billede Slettet bruger
22. december 2012 - 18:03 #6
Jeg har de her koder men de virker ikke som de skal - fejl på. F.eks bliver teksten blå


nav {
    width: 960px;
    height: 30px;
    margin-top: 0px;
    background-color: white;
       
}

nav ul {
    list-style: none;

}

nav li {
float: left;


}   

nav li a:link, nav li a:visited {

font-weight: bold;
font-size: 1.1em;
padding-left: 50px;
padding-right: 50px;
text-decoration: none;
display: block;

}
Avatar billede olebole Juniormester
22. december 2012 - 18:45 #7
Det skyldes, at default farven for links er blå. Du kan sætte en anden farve under CSS'en for links:

nav li a:link, nav li a:visited {
    font-weight: bold;
    font-size: 1.1em;
    padding-left: 50px;
    padding-right: 50px;
    text-decoration: none;
    display: block;
    color: #000;
}
Avatar billede olebole Juniormester
22. december 2012 - 18:56 #8
I stedet for at float'e dine LI-elementer vil jeg anbefale dig at give dem display:inline-block. Det gør, at de udadtil opfører sig som inline elementer - mens de indadtil opfører sig som block elementer.

Float er beregnet til at lave tekstomløb omkring f.eks. et billede, hvilket den er rigtig god til. Til gengæld er den ikke egnet til at lægge block elementer ved siden af hinanden. Float'ede elementer er ikke del af sidens naturlige flow og fylder derfor ikke noget. Det er man så efterfølgende nødt til at 'hacke' sig ud af med clear.

Prøv dette:

nav li {
    display: inline-block;
}


<nav>
<ul>
    <li><a href="index.html">Forsiden</a></li><li>
    <a href="side1.html">Optimering</a></li><li>
    <a href="side2.html">Ydelser</a></li><li>
    <a href="side3.html">Nyheder</a></li><li>
    <a href="side4.html">Kontakt</a></li>
</ul>
</nav>

Bemærk, at LI elementerne ikke må have mellemrum eller linjeskift imellem sig, da de jo nu opfører sig som inline elementer. Derfor den lidt sjove opstilling  =)
Avatar billede Slettet bruger
23. december 2012 - 19:39 #9
Tak for det Ole
Avatar billede olebole Juniormester
23. december 2012 - 19:46 #10
Selvtak. Jeg samler ikke point, så du lægger bare selv et svar og accepterer det, så tråden lukkes. God Jul  *<|:o)
Avatar billede Slettet bruger
25. december 2012 - 17:28 #11
god jul
Avatar billede Slettet bruger
06. januar 2013 - 18:22 #12
Hej Ole og andre,

Nu vil jeg høre jer. Hvad gør jeg hvis, at jeg vil have, at når du trykker på et menu punkt så bliver det understreget. Og jeg ønsker også, at når siden åbnes så er forsiden understreget i menu punktet.

Hvordan klarer man den?
Avatar billede olebole Juniormester
06. januar 2013 - 18:40 #13
Understregningen af menupunktet, når du kommer til siden, sættes af et serverscript - udfra hvilken side, der vises.

Understregning af linket i det øjeblik brugeren klikker kan du lave noget i stil med:

nav a:active {
    text-decoration: underline;
}

Husk i øvrigt, at din kode kun giver mening i allernyeste browsere. nav elementet eksisterer kun i HTML5, så browsere, der bare er et år eller to gamle, forstår ikke koden  =)
Avatar billede Slettet bruger
07. januar 2013 - 18:37 #14
Hej Ole,

Jeg har sat koderne i mit css men de virker ikke i nogen af browser - kan du sige hvad jeg gør galt?
Avatar billede olebole Juniormester
07. januar 2013 - 19:02 #15
Nej, prøv at lægge et link til siden
Avatar billede Slettet bruger
08. januar 2013 - 16:52 #16
Hej Ole,

Det ligger for tiden ikke ude på en side - men dette her er koderne. Håber du kan klare problemet.



html {font-size:14px;
font-family: Helvetica,arial,sans-serif
}

a {text-decoration: underline; }


body {
width:960px;
margin-left: auto;
margin-right: auto;
}

/*header {

width:960px;
height: 100px;
background-color:white;*/

}

nav {
    width: 960px;
    height: 30px;
    margin-top: 0px;
    background-color: white;
       
}

nav ul {
    list-style: none;

}

nav li {
display:inline-block;
}   

nav a:active {
    text-decoration: underline;
}


nav li a:link, nav li a:visited {
font-weight: bold;
font-size: 1.3em;
padding-left: 0px;
padding-right: 50px;
text-decoration: none;
display: block;
color: #000;
}



article {
    font-size:16px;
    font-family: Helvetica,arial,sans-serif;
    padding: 35px;
    width: 960px;
    min-height: 600px;
    background-color:white;

    }

    footer {
    /*clear:both;*/
    font-size: 1.20em;
    padding: 35px;
    width: 960px;
    height: 50px;
    background-color: white;
}
Avatar billede olebole Juniormester
08. januar 2013 - 17:21 #17
Jeg skal naturligvis også se HTML-koden, som CSS'en skal virke på
Avatar billede Slettet bruger
08. januar 2013 - 17:37 #18
ok undskyld Ole

<!DOCTYPE html>
<html>



<head>
<meta charset="UTF-8">
<meta http-equiv="Content-Language" content="DA" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />


<link rel="stylesheet" type="text/css" href="style1.css">
<link rel="stylesheet"  media="only screen and (min-width:50px) and (max-width:480px)" href="small_screen.css">
</head>

<body>

<header></header>


<nav>
<ul>
<li> <a href="index.html">Forsiden</a></li>
<li> <a href="side1.html">Firma</a></li>
<li> <a href="side2.html">Ydelser</a></li>
<li> <a href="side3.html">Nyheder</a></li>
<li> <a href="side4.html">Kontakt</a></li>
</ul>
</nav>
Avatar billede olebole Juniormester
08. januar 2013 - 17:46 #19
Med et halvt HTML-dokument og uden forklaring på, hvad der ikke virker, må du nøjes med et sidste gæt: Denne giver ikke mening og har formodentlig ingen virkning:

<link rel="stylesheet"  media="only screen and (min-width:50px) and (max-width:480px)" href="small_screen.css">

Du kan læse om, hvordan media bruges her
Avatar billede Slettet bruger
09. januar 2013 - 12:41 #20
Hej Ole,

Det, der ikke virker, er css koden

nav a:active {
    text-decoration: underline;
}

Alt andet virker - bl.a ved dine gode råd. Derfor burde html koderne for menuen være nok - ikke.
Avatar billede Slettet bruger
09. januar 2013 - 13:13 #21
Kan det være rækkefølgen af

nav a:active {
    text-decoration: underline;
}

der er forkert?
Avatar billede olebole Juniormester
09. januar 2013 - 17:26 #22
"Det, der ikke virker, er css koden" >> Nej, det ved du ikke positivt vide. Det kunne ligeså godt være din HTML-kode, der forhindrer, CSS'en i at virke. Derudover siger du intet om, hvad der sker - hvad der ikke sker - eller hvad du havde forventet  *o)

Ja, du skal lægge a:active som sidste direktiv for A elementer. Desuden skal du gøre den ligeså specifik som de andre:

nav li a:active {
    text-decoration: underline;
}
Avatar billede Slettet bruger
28. januar 2013 - 12:39 #23
Det virkede - tak for det.
Avatar billede Slettet bruger
29. januar 2013 - 18:00 #24
Hej igen Ole & Co,

Det er et problem for det jeg ønsker er en permanent understregning på det menu punkt som man er på. Nu understreger den når man klikker på menu punktet men stopper med understregningen, når man er kommet ind på menu punktet.

Kan denne kode måske bruges

#navbar li.on a {display:block;
                text-decoration: none;}
Avatar billede olebole Juniormester
30. januar 2013 - 22:19 #25
Det løser man ikke med HTML/CSS/JavaScript, men med serverscript. Du sætter blot en passende klasse på det aktive link på baggrund af den aktuelle side
Avatar billede Slettet bruger
30. januar 2013 - 22:38 #26
ok har du et forslag til hvordan det kan se ud?
Avatar billede olebole Juniormester
30. januar 2013 - 23:04 #27
Nej, det kan jeg ikke vide noget om. Det kommer anpå, hvordan din backend er opbygget
Avatar billede Slettet bruger
31. januar 2013 - 16:08 #28
Den er opbygget ved hjælp af html sider og en css style sheet side
Avatar billede olebole Juniormester
31. januar 2013 - 16:20 #29
Jeg kender ikke opbygningen i detaljer, så jeg kan ikke komme det nærmere
Avatar billede Slettet bruger
01. februar 2013 - 16:58 #30
Hvis du fik web adr. ville du så kunne komme med et bud?

Jeg vil godt give dig et beløb for det
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester