Gå til innhold

Midtstille en hel side som ligger inni en div


Anbefalte innlegg

Skrevet

Jeg har en side hvor hele siden er lagt inn i en eneste stor div. Siden skal være sentrert i vinduet.

 

<html>
<head>
<!-- Masse tagger her -->
</head>
<body>
<div id="page">
<!-- Masse innhold og andre divs -->
</div>
</body>
</html>

 

Dette er stylet slik:

 

 body {
   background-color : #ccf;
   margin           : 0;
   padding          : 20px 0 0 0;
   font-size        : 14px;
 }
 
 
 #page {
   background-color : #fff;
   border           : 1px solid #000;
   margin           : 0 auto 20px auto;
   padding          : 0 0 20px 0;
   width            : 780px;
 }

 

Denne siden er pen og sentrert i Firefox (både 1.0.7 og 1.5 RC2), men ikke i Internet Explorer. Da ligger den helt inntil venstremargen. Hva kan det komme av?

 

BTW; Jo mer jeg driver med webdesign, jo mer hater jeg internet Explorer. Det er så utrolig frustrerende å hele tiden måtte skjekke om noe ser bra ut i IE før en kan legge det ut. Og det må ALLTID fikses på noe. Kunne ikke IE holdt seg til standardene? Vi får håde det blir bedre i IE7.

Videoannonse
Annonse
Skrevet

Sleng inn en text-align:center; i page-diven din. Det er den mest kjente hacken. Men da må du huske på å sette inn text-align:left; der det passer seg. (Content osv.)

Skrevet

prøv å legge til i style="margin: 0 auto; width:500px;"

 

NB dette fungerer kun hvis du har satt width på diven din... ellers vil den bruke hele skjermbredden...

Skrevet
text-align:center er for å midtstille i IE 5.5 På vanlige browsere bruker man:

 

*{margin:0 auto;}

5146397[/snapback]

 

Sjekk koden hans. Det står der allerede.

Skrevet
prøv å legge til i style="margin: 0 auto; width:500px;"

 

NB dette fungerer kun hvis du har satt width på diven din... ellers vil den bruke hele skjermbredden...

5146399[/snapback]

 

 

Det kan han godt gjøre hvis han vil, dvs hvis han allerede har et stylesheet... ville ikke laget stylesheet bare pga denne ene fixen... (stylesheet er for gjenbruk)

Skrevet

btw... ang. stylesheets : OBS! Disse blir cachet av klienten.. endrer du på en stylesheet hold inne bruk SHIFT+F5 for å oppdatere siden OG stylesheeten...

Skrevet (endret)

selvfølgelig. men

* {

margin:0;

padding:0;

}

 

vil ikke løse problemet hans. Hvis det var det du tenkte på? Selv om det alltid bør være med.. Hvorfor i all verden skulle han ha ønsket å midstille ALLE elementene på siden? Det ville jo se ut som en trafikkulykke uten like.

 

EDIT: og du, linken du ga anbefaler hardcore absolutt-posisjonering. Dette er fyfy his du vil ha ting dynamisk og nogenlunde likt i alle oppløsninger.

Endret av MBaardsgaard
Skrevet (endret)

For å få den sentrert dynamisk i forhold til innholdet vet jeg ikke om div er mulig å bruke... som sagt div centreres kun på siden om man bruker en absolutt vidde på den... og bruker man en absolutt vidde, ja da er den jo ikke dynamisk...

 

jeg ville gått for

 

<TABLE style="margin:0 auto;">
<TR>
  <TD>
    {content}
  </TD>
</TR>
</TABLE>

 

 

Enkelt og greit.... en table er dynamisk i vidden.... ikke gjør ting mer komplisert en nødvendig....

Endret av vidarv
Skrevet

Jeg velger å påstå at du er halvveis riktig. For denne koden tar faktisk og sentrerer alle elementer på siden, 1st level. La gå, det funka (til min overraskelse) i IE, MEN, den sentrerer jo alle elementer også! Så hvis jeg vil ha elementer til venstre i browseren, må jeg nullstille dettte med en float. Men jeg gir meg, neverthenless, den har færre ulemper enn de gamle hackene, selv om jeg fremdeles sverger til

position:absolute;

left:50%;

margin-left:-350px;

width:700px;

som også er dead center ;), og har ingen andre ulemper enn at den er stor.

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...