Avatar billede zerrvox Nybegynder
09. juni 2004 - 13:14 Der er 11 kommentarer og
1 løsning

Div tags overholder ikke 100%

Ja, så er det mig igen med et nyt spørgsmål. Jeg valgte at nu sku koden laves om, så i hvert fald det overordnet design var styret af css. Men jeg kan ikke få mine div-tag til at overholde height 100% inden for min hoved div med height 94%, de bliver bare større end hoved div'en og det er ikke meningen, de skulle helst neste som tables gør det :D

På forhånd tak for hjælpen

siden kan ses på: http://www.chelski.dk/test

og det er mest tydeligt i mozilla/netscape browsers, men problemet er også i IE..
Avatar billede roenving Novice
09. juni 2004 - 13:29 #1
Er du sikker på, at du har nestet korrekt og givet containeren positionering ?-)
Avatar billede zerrvox Nybegynder
09. juni 2004 - 13:44 #2
Jeg er ikke sikker på så meget, da jeg først lige er begyndt at bruge css til at designe, men jeg er ret sikker på at de er nestet korrekt i html udgaven, så er det bare om css koden er rigtig, jeg smider den lige her, men den ser nok lidt sjov ud rundt omkring, da jeg har prøvet mig frem med alle mulige sjove ting for at finde en løsning :D

#master {
    top: 10px;
    width: 745px; /* breden på din side */
    height: 94%;
    position: relative;
    left: 50%;
    margin-left: -375px; /* minus halvdelen af brede på din side */
    background-color: White;
    border: 3px solid White;
        display: block;
}


#logo {
    background-image: url(images/topbanner.jpg);
    position:relative;
    left:0px;
    top:0px;
    width:745px;
    height: 120px;
    background-position: top;
    background-repeat: no-repeat;
    background-attachment: fixed;
}
#leftmenu {
    float: left;
    position:relative;
    left:0px;
    top:0px;
    width:147px;
    height: 100%;
    background-color:#000066;
    vertical-align: top;
    z-index: 1;
    margin-bottom: 2px;
    display: block;
}
#rightmenu {
    float: right;
    position:relative;
    right: 0px;
    top:0px;
    width:164px;
    height: 100%;
    background-color:#000066;
    vertical-align: top;
    display: table;
    z-index: 1;
}
#content {
    float: left;
    position: relative;
    width: 434px;
    height: 100%;
    left: 0px;
    top: 0px;
    background-color: white;
    z-index: 1;
    display: table-cell;
}
#copyright {
    vertical-align: bottom;
    text-align: center;
    position: absolute;
    bottom: 0px;
    width: 500px
    position: absolute;
    left: 50%;
    margin-left: -250px;
}

master er uden om alle undtagen copyright

logo ligger henover leftmenu, content og rightmenu.

det er leftmenu, content og rightmenu, som ikke holder sig inden for rammerne af master..
Avatar billede roenving Novice
09. juni 2004 - 14:31 #3
Du har ingen overflow på, det skal du have for at du kan regne med at den bliver inde i !-)

-- og du kan måske kigge på de par forslag, jeg har lavet her: http://www.eksperten.dk/spm/497362

-- og så er der en syntaks-fejl i din css-kode:

#copyright {
    vertical-align: bottom;
    text-align: center;
    position: absolute;
    bottom: 0px;
    width: 500px; /* Her manglede der et semikolon
    position: absolute; -- og denne dublet er også udkommenteret */
    left: 50%;
    margin-left: -250px;
}
Avatar billede zerrvox Nybegynder
09. juni 2004 - 15:59 #4
Oki, jeg har kigget lidt på det du skriver der inde, men jeg synes ikke, jeg kan finde det jeg skal bruge, med overflow kan jeg styre om den skal vise overflowet eller ik eller bare med scrollbar, det jeg skal bruge er en måde at få mine divs til at udvide sig til 100% af den tilgængelige plads, så jeg kan placere ting i bunden af content f.eks. så det altid vil være at finde i bunden ligegyldig hvor stort dit browser vidue er.

Den kunne laves med tables, hvor height var indstillet til 100% hele vejen igennem, det lavede ikke overflow som skulle skjules. Er det muligt at lave noget lignende :D
Avatar billede roenving Novice
09. juni 2004 - 16:18 #5
Kan ikke umiddelbart gennemskue det, men du kan se her, at den ydre udvider sig med:

<style type="text/css">
html,body{border:0px;margin:0px;padding:0px;heigth:100%;}
#master {
    top: 10px;
    width: 751px; /* breden på din side */
    height: 94%;
    position: relative;
    left: 50%;
    margin-left: -375px; /* minus halvdelen af brede på din side */
    background-color: cyan;
    border: 3px solid White;
        display: block;
}


#logo {
    background-image: url(images/topbanner.jpg);
    position:relative;
    left:0px;
    top:0px;
    width:745px;
    height: 120px;
    background-position: top;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background:yellow;
    z-index:3;
}
#leftmenu {
    float: left;
    position:relative;
    left:0px;
    top:0px;
    width:147px;
    height: 100%;
    background-color:#000066;
    vertical-align: top;
    z-index: 1;
    margin-bottom: 2px;
    display: block;
}
#rightmenu {
    float: right;
    position:relative;
    right: 0px;
    top:0px;
    width:164px;
    height: 100%;
    background-color:#000066;
    vertical-align: top;
    display: table;
    z-index: 1;
}
#content {
    float: left;
    position: relative;
    width: 434px;
    height: 100%;
    left: 0px;
    top: 0px;
    background-color: transparent/*white*/;
    z-index: 1;
    display: table-cell;
    /*overflow:auto;*/
}
#copyright {
    vertical-align: bottom;
    text-align: center;
    position: absolute;
    bottom: 0px;
    width: 500px;
    left: 50%;
    margin-left: -250px;
    color:green;
    font-weight:900;
    z-index:10;
}
</style>

<div id="master">
  <div id="logo"></div>
  <div id="rightmenu"></div>
  <div id="leftmenu"></div>
  <div id="content">
    linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>
    linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>
    linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>
    linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>
    linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>linje<br>
    linje<br>linje<br>
    linje 654654654
  </div>
</div>
<div id="copyright">copyright</div>
Avatar billede zerrvox Nybegynder
09. juni 2004 - 19:42 #6
hmm.. Din kode giver rigtigt nok, sådan at tabellen udvider sig i IE, den gør det faktisk ikke i mozilla.

Det kan også være at jeg ikke formulerede mig klart nok jeg ønsker at masteren fylder en bestemt del af skærmen hele tiden uanset hvilken opløsning brugerne selvfølgelig med undtagelse for dem som har for lille opløsning, så det ikke kan være der.

Samtidigt ønsker jeg så at alle div tags'ne indeni masteren fylder 100% af master ikke af siden, jeg tror det er der den går galt for browsers'ne..

Men tak for hjælpen du har allerede åbnet mine øjne for en masse nye ting, der skal tages højde for når man vil bruge css til design også :D
Avatar billede thedeathart Nybegynder
09. juni 2004 - 19:47 #7
du bør altid w3 validere din kode.

se mere på:  www.w3c.org
Avatar billede zerrvox Nybegynder
09. juni 2004 - 19:53 #8
hehe.. det er jeg klar over og det var egentlig, det der var skyld i at jeg begyndte på dette, da man ik måtte height defineret i sine tables begyndte jeg at prøve at definere det i css i stedet, det ville egentlig heller ikke som jeg, så til sidst besluttede jeg at bygge siden om ved brug af div tags i stedet, så kom lidt væk fra det med at validere min kode, men det skal nok komme :D
Avatar billede roenving Novice
09. juni 2004 - 19:56 #9
-- og så et lille trick, når du skal validere:

Slå sessions fra idet du validerer, for ellers får du en masse fejl på noget som er en lille detalje !-)
Avatar billede gil-galad Nybegynder
09. juni 2004 - 20:17 #10
rownving>> Det smarteste er da denne løsning:  http://www.eksperten.dk/spm/425775  (det er den øvreste løsning du skal kikke på, ikke .htaccess)
Avatar billede zerrvox Nybegynder
09. juni 2004 - 22:31 #11
Jo tak, så har jeg valideret min kode, nu er der kun 3 errors som opstår i mine counter scripts fra sjove udbydere :D

tak gil-galad, det var ski en enkelt og effektiv løsning på det problem :D

Så skal jeg bare have mit css til at virke, det vil jeg kæmpe lidt videre med og hvis det ikke vil, som det ska!, så kigger jeg lige forbi igen, og hvis nogen sku have lyst til lidt point, så smid et svar :D
Avatar billede zerrvox Nybegynder
19. marts 2005 - 17:22 #12
Lukker tråden.. :P hvis nogle føler sig snydt, så smid en kommentar, så skal jeg oprette et svar med nogle point til jer :D
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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

IT-JOB