Centreret navigationsbar i en div

Her kan du stille og svare på spørgsmål omkring CSS
Besvar
Josefine
Geni
Geni
Indlæg:308
Tilmeldt:9. dec 2011, 16:46
Centreret navigationsbar i en div

Indlæg af Josefine » 19. maj 2012, 12:37

Hej NemProgrammering! :)

Så er jeg i gang med en hjemmeside, som jeg vil kode helt fra bunden, fra første gang, så jeg rigtig kan prøve mine kræfter af ;)

Jeg har et meget primitivt skelet indtil videre, som jeg egentlig bare har fra de koder, jeg har lært her fra siden. Dvs. jeg har ikk rigtig flytter på divs osv.

Men nu skal jeg bare lige, som det første, have centreret min navigationsbar.
Jeg har valgt at lave en div under banner-div'en, hvori min navigationsbar er. Jeg tænkte, at det nok ville være det nemmeste, og så kunne jeg jo eventuelt bare fjerner border på den div, så man kun kan se navigationsbaren, som det er meningen. Altså bare, så navigationsbaren har en lille "boks" at ligge i og hænger sammen med resten af siden :)

Men hvordan centrerer jeg den inde i min div?
Jeg har prøvet position: center;
og left: 50%;
margin-left: -500px;

men den første virker slet ikke, og den anden får navigationsbaren helt ud i venstre side.


Her er mine koder i HTML-dokumentet:

Kode: Vælg alt

<html>
    <head>
        <title>Dette er en testside igen igen</title>
        <META charset="utf-8" />
        <META name="keywords" content="Test" />
        <META name="description" content="Her tester jeg noget HTML" />
        <link rel="stylesheet" href="file:///Library/WebServer/Documents/NetBeansProjects/NetBeansProjects/The%20Red%20Balloon/Hovedside.css" type="text/css"/>
     </head>
    <body id="sideindhold">
        
        
        
        <div id="rapper">
            
            <div id="header">
            Her er min header
            </div>
            
            <div id="navigationsbar">
            
                <ul id="ulnav">
            
            
                    <li id="linav"><a href="#" class="nav"> Home </a></li>
            
                    <li id="linav"><a href="#" class="nav"> Om mig </a></li>
            
                    <li id="linav"><a href="#" class="nav"> Kontakt </a></li>
            
                    <li id="linav"><a href="#" class="nav"> Billede </a></li>
            
            
                </ul>
                
            </div>
            
            <div id="menu">
            Her er min menu
            </div>
            
            <div id="indhold">
            Her er mit indhold
            </div>
            
            <div id="footer">
            Her er min footer
            </div>
            
        </div>
        
       
    </body>
</html>
Og mit stylesheet:

Kode: Vælg alt

#sideindhold {
    background-color: #D4C792;
}

#rapper {
    width: 1000px;
    height: 1000px;
    border-style: solid;
    border-color: #000000;
    border-width: thin;
    position: absolute;
    left: 50%;
    margin-left: -500px;
    top: 100 px;
}


#header {
    width: 1000px;
    height: 170px;
    border-style: solid;
    border-color: #000000;
    border-width: thin;
    background-color: #323B51;
    position: absolute;
    left: 0px;
    top: 0px;
}


#menu {
    width: 200px;
    height: 400px;
    border-style: solid;
    border-color: #000000;
    border-width: thin;
    background-color: #999;
    position: absolute;
    left: 0px;
    top: 300px;
}


#indhold {
    width: 800px;
    height: 400px;
    border-style: solid;
    border-color: #000000;
    border-width: thin;
    background-color: #AA2808;
    position: absolute;
    left: 200px;
    top: 300px;
}


#footer {
    width: 1000px;
    height: 300px;
    border-style: solid;
    border-color: #000000;
    border-width: thin;
    background-color: #000000;
    position: absolute;
    left: 0px;
    top: 700px;
}

#navigationsbar {
    width: 1000px;
    height: 100px;
    border-style: solid;
    border-color: #000000;
    border-width: thin;
    position: absolute;
    top: 170px;
}

/*Navigationsbar*/


#ulnav {
    list-style-type: none;
    width: 832px;
    left: 50%;
    margin-left: 250px;
}

#linav {
    float: left;
}

a.nav:LINK, a.nav:visited {
    display: block;
    width: 200px;
    font-weight: bold;
    color: #FFFFFF;
    background-color: #999;
    text-align: center;
    padding: 4px;
    text-decoration: none;
    text-transform: uppercase;
    
}

a.nav:hover {
    background-color: #CCC;
}

Brugeravatar
ThomasI
Grundlægger
Grundlægger
Indlæg:1528
Tilmeldt:28. dec 2010, 10:49

Re: Centreret navigationsbar i en div

Indlæg af ThomasI » 19. maj 2012, 16:58

Hej!
Prøv at lave en div udenom din nav bar som du så styler med margin-left: auto og margin-right:auto...

Denne div skal self placeres så den er inde i din navigationsbar div....

Josefine
Geni
Geni
Indlæg:308
Tilmeldt:9. dec 2011, 16:46

Re: Centreret navigationsbar i en div

Indlæg af Josefine » 19. maj 2012, 18:18

Okay, det har jeg prøvet nu - og det at centrere div'en inde i div'en virker helt fint, men så er der jo så bare det problem, at navigationsbaren inde i dén div ikke ligger centreret, så derfor bliver det kun div'en og ikk navigationsbaren, der bliver centreret :lol:

Det er vist nemmest, hvis jeg lige viser det:

Billede


Nu er det godt nok lidt svært at se lige her på dette billede, men som I kan se, så ligger div'en rundt om navigationsbaren fnt centreret, men navigationsbaren inde i dén div ligger jo stadig ikke centreret (I kan se det ude i siderne) - derfor vil den stadig ikke være 100% centreret overordnet set.
Jeg har prøvet at "omringe" navigationsbaren ved at tilpasse div'ens width og height til navigationsbarens width og height, men så popper navigationsbaren bare helt uden for div'en, så snart jeg bare kommer lidt tæt på :?:

Josefine
Geni
Geni
Indlæg:308
Tilmeldt:9. dec 2011, 16:46

Re: Centreret navigationsbar i en div

Indlæg af Josefine » 19. maj 2012, 18:43

Men jeg tænker, at problemet jo sådan set allerede starter med navigationsbaren, for hvis vi bare placerer den fuldstændig for sig selv alene i et dokument, så står den stadig også sådan lidt ude fra kanten - den ligger ikke ind til kanten, men har ligesom fra starten lidt sin "egen placering", hvis du forstår?

Brugeravatar
ThomasI
Grundlægger
Grundlægger
Indlæg:1528
Tilmeldt:28. dec 2010, 10:49

Re: Centreret navigationsbar i en div

Indlæg af ThomasI » 19. maj 2012, 20:18

http://www.nemprogrammering.dk/Tutorial ... /T8CSS.php

Kig der og gør hvad der står under note... det skulle gerne fjerne det hvide stykke venstre for naven....

Husk også at sætte breden diven rundt om naven til auto...

Josefine
Geni
Geni
Indlæg:308
Tilmeldt:9. dec 2011, 16:46

Re: Centreret navigationsbar i en div

Indlæg af Josefine » 19. maj 2012, 20:50

Aha!
Tusind tak igen, nu virker det :D! Hvad skulle jeg dog gøre uden NemProgrammering :)?

Brugeravatar
Daniel
Admin
Admin
Indlæg:625
Tilmeldt:14. jun 2011, 09:27
Geografisk sted:Danmark, Fyn, Nørre Aaby
Kontakt:

Re: Centreret navigationsbar i en div

Indlæg af Daniel » 19. maj 2012, 21:14

Haha, NemProgrammering er super og virkelig noget man kan lære noget af, men du må nu heller ikke undervurdere dig selv, du har vist dig som en der virkelig kæmper for at få tingene til at virke, og du høre efter hvad man siger til dig, det i sig selv er mere viden end 100 koder. :)

Josefine
Geni
Geni
Indlæg:308
Tilmeldt:9. dec 2011, 16:46

Re: Centreret navigationsbar i en div

Indlæg af Josefine » 19. maj 2012, 22:29

Ja, det er et fantastisk sted! Især når man ikke kan få noget hjælp i virkeligheden (ja jeg har altså ikke en eller anden i familien, der har været IT ekspert i 20 år), så er det virkelig bare "guf" at finde, især nu når det også er på dansk, det gør det altså lige lidt nemmere. Jeg er virkelig glad for al jeres hjælp :)
Mange tak skal du have, det betyder da meget for mig at få at vide :D Jeg er jo blevet helt bidt af programmering nu, så nu er jeg slet ikke til at stoppe, haha ;)

Josefine
Geni
Geni
Indlæg:308
Tilmeldt:9. dec 2011, 16:46

Re: Centreret navigationsbar i en div

Indlæg af Josefine » 4. jun 2012, 08:49

Åh nej, så skal vi til det igen :roll:

Det virker ikke alligevel! Det troede jeg ellers, det gjorde :? Men når jeg ændrer på bredden, så er den helt gal igen....

Nu ser mine koder sådan her ud i HTML:

Kode: Vælg alt

<html>
    <head>
        <title>Dette er en testside igen igen</title>
        <META charset="utf-8" />
        <META name="keywords" content="Test" />
        <META name="description" content="Her tester jeg noget HTML" />
        <link rel="stylesheet" href="file:///Library/WebServer/Documents/NetBeansProjects/NetBeansProjects/CSS%20projekter/Navigationsbar.css" type="text/css"/>
     </head>
    <body id="sideindhold">
        
        
        
            
            <div id="navigationsbar2">
                <ul id="ulnav">
            
            
                    <li id="linav"><a href="#" class="nav"> Home </a></li>
            
                    <li id="linav"><a href="#" class="nav"> Om mig </a></li>
            
                    <li id="linav"><a href="#" class="nav"> Kontakt </a></li>
            
                    <li id="linav"><a href="#" class="nav"> Billede </a></li>
            
            
                </ul>
                
            </div>
        
       
    </body>
</html>


og i CSS:





Kode: Vælg alt

#navigationsbar2 {
    width: 1000px;
    height: 90px;
    border-style: solid;
    border-color: #000000;
    border-width: thin;
    margin-left: auto;
    margin-right: auto;
}

/*Navigationsbar*/


#ulnav {
    list-style-type: none;
    width: 832px;
    margin-right: auto;
    margin-left: auto;
    padding: 0px;
}

#linav {
    float: left;
}

a.nav:LINK, a.nav:visited {
    display: block;
    width: 120px;
    font-weight: bold;
    color: #FFFFFF;
    background-color: #999;
    text-align: center;
    padding: 4px;
    text-decoration: none;
    text-transform: uppercase;
    
}

a.nav:hover {
    background-color: #CCC;
}


Før var bredden på 200, men nu har jeg ændret den til 120, og så centrerer den pludselig ikke mere?

Brugeravatar
ThomasI
Grundlægger
Grundlægger
Indlæg:1528
Tilmeldt:28. dec 2010, 10:49

Re: Centreret navigationsbar i en div

Indlæg af ThomasI » 4. jun 2012, 11:34

Husk at du skal tilpasse den samlede bredde af din nav bar, så den passer med 4* bredden af dine knapper...

Ser ikke ud til at du har gjort dette...

Før passede det jo med 208 * 4 = 832

Men nu er det jo 124 * 4 = 496

Josefine
Geni
Geni
Indlæg:308
Tilmeldt:9. dec 2011, 16:46

Re: Centreret navigationsbar i en div

Indlæg af Josefine » 4. jun 2012, 11:48

Aaarrh, så forstår jeg godt, den brokkede sig lidt :lol: Mange tak endnu engang!

Josefine
Geni
Geni
Indlæg:308
Tilmeldt:9. dec 2011, 16:46

Re: Centreret navigationsbar i en div

Indlæg af Josefine » 4. jun 2012, 12:53

Arg for ..... det virker selvfølgelig ikke i Internet Explorer. Hold op, hvor jeg bare hader den browser.
Nå, nogen ideer? :roll:

Josefine
Geni
Geni
Indlæg:308
Tilmeldt:9. dec 2011, 16:46

Re: Centreret navigationsbar i en div

Indlæg af Josefine » 4. jun 2012, 13:21

Neiih, nu fandt jeg sørme ud af det!

Jeg skulle bare bruge en doctype for HTML5 (hvorfor skrev jeg ikke også den fra starten)! :D Pyh ha :roll:

Besvar