28. december 2004 - 15:27Der 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>
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>
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.
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.