Avatar billede nicholas- Nybegynder
28. december 2004 - 15:27 Der er 4 kommentarer og
1 løsning

div og css

hej har den her div på min side:

<body>
<div id="master">hej</div>
</body>
den vil jeg gerne have centreret og så med lidt margen til alle sider, også top og bund. Bruger:

#master {
    position: relative;
    width:97%;
    height:97%;
    margin-left: auto;
    margin-right: auto;
    margin-top: auto;
    margin-bottom: auto;
}
men margin-top: auto; virker ikke.. og kan man centrere den på anden måde en at bruge <center></center>
Avatar billede skovenborg Nybegynder
28. december 2004 - 15:41 #1
hverken margin-top eller margin-bottom har nogen gavn at have værdien auto. Normalt kan man godt via css centerere vertikalt, men dette kan kun lade sig gøre hvis man har en absolut højde (fx 100px). I så fald skulle din style se sådan ud:
html,body {height:100%;margin:0px;padding:0px;}
#master {
    position: relative;
    width:97%;
    height:100px;
    margin:0px auto;
    top:50%;
    margin-top:-50px;
    border:1px solid #000;
}

Men da du har sat højden i procent (relativ), kommer du nok ikke udenom en lille tabel, medmindre du gerne vil gøre brug af javascript (hvilket ikke rigtigt kan betale sig):
<style type="text/css">
html,body {height:100%;margin:0px;padding:0px;}
#master {
    position: relative;
    width:97%;
    height:97%;
    margin:0px auto;
    border:1px solid #000;
}
</style>
</head>
<body>
<table style="height:100%;width:100%;" cellspacing="0"><tr><td style="height:100%;vertical-align:middle;padding:0px;">
<div id="master">hej</div>
</td></tr></table>
</body>
Avatar billede nicholas- Nybegynder
28. december 2004 - 15:46 #2
men er det nye ikke, at man bruger divs, for at undgå tabeller?
Avatar billede skovenborg Nybegynder
28. december 2004 - 16:05 #3
tja, både og... for ideen med css-styret design er efterhånden kørt lige lovlig meget op.
Grunden til man taler så meget om, at man ikke skal bruge tabeller til design, er pga. den overdrevne brug af tabeller man havde før i tiden, altså hvor hele siden lå pakket godt og grundigt ind i en kæmpemæssig, uoverskuelig tabel. Det var (eller er) hverken særlig godt for webprogrammøren eller for søgemaskinen, da hele siden bliver frygtelig svær at finde rundt i.
Pointen med css-styret design er, at design og struktur kan adskilles fra hinanden, hvormed man får en langt mere overskuelig og pæn kode. Design skulle CSS stå for og HTML var så strukturen. Det betyder dog ikke at tabeller er bandlyst og kun må bruges til data. Tabeller kan jo netop bruges til fx at _strukturere_ en side i flere kolonner - det er der jo intet galt med (især fordi css stadig ikke har nogen fornuftig løsning på det problem ;-)

Om vi i dette bruger tabellen til struktur eller design kan jo diskuteres. I hvert fald ser jeg intet problem med det, da vi kun bruger en enkelt lille tabel til centering - det var jo trods alt de kæmpemæssige komplekse tabeller vi var imod.

Men det er et svært emne at bevæge sig ud i - for hvad mener W3C præcist om den sag ?-) Det kræver nok et længere studie af "skrifterne" for at forstå det helt - og jeg er selv nogle gange i tvivl om hvad de mener, efter at have læst om det inde i W3C's snørklede kroge af alskens specifikationer, referencer og jeg ved ikke hvad.
Avatar billede nicholas- Nybegynder
28. december 2004 - 16:23 #4
mange tak for den lile tekst, den var meget forklarende!

så læg point så får du dem lige.
Avatar billede skovenborg Nybegynder
28. december 2004 - 17:04 #5
jamen værgso' :-)
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