Avatar billede grimshoc Nybegynder
03. august 2002 - 13:03 Der er 5 kommentarer og
3 løsninger

et let spørgsmål sikkert

Hvordan centrerer man <table> via css?
Avatar billede Slettet bruger
03. august 2002 - 13:33 #1
Det kan du ikke.

Du kan dog lukke indholdet inde i en <div> eller <p> og aligne med dem. F.eks. således:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
    <title>Untitled</title>
   
<style>

.centrer_indhold {
text-align:center
}

</style>
   
</head>

<body>
<p class="centrer_indhold">
<table width="200" border="1"><tr><td>kk</td></tr></table>
</p>
</body>
</html>

Dette burde også virke i nyere browsere (ikke i IE5)

.centeredtable {
margin-left: auto;
margin-right: auto;
}
Avatar billede callesen Praktikant
03. august 2002 - 14:00 #2
Jo det kan man godt - altså uden div'er. Fx.:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
    <TITLE>ver. + hor. centrering af tabel</TITLE>
</HEAD>
<BODY>
<table STYLE="height:100%;width:100%;text-align:center; table-layout:fixed;" valign="middle">
<tr>
<td STYLE="HEIGHT:,(screen.height/2)-300,;border:1px solid #ff0000;"></TD>
</tr>
<tr>
<td STYLE="height:300px;border:1px solid #ff0;">
    <TABLE BORDER="1" style="text-align:center; height:300px; width:80%; position:relative;" CLASS="maintable" valign="middle" BORDER="0">
    <TR>
    <TD WIDTH="50%" STYLE="height:50%;border:1px solid #00ff00;">
</TD>
    </TABLE>
</td>
</tr>
<tr>
<td STYLE="HEIGHT:,(screen.height/2)-300,;border:1px solid #0000ff;"></TD>
</TR>
</table>
</BODY>
</HTML>
Avatar billede callesen Praktikant
03. august 2002 - 14:02 #3
Jeg fik ikke luget helt ud - CLASS="maintable" er uden betydning i eksemplet - slet det.
Avatar billede grimshoc Nybegynder
03. august 2002 - 15:00 #4
havde også prøvet den text-align fætter, men problemet er at når man bruger den fra stylesheeted så er det teksten i tabellen der bliver centreret (sjovt nok). Jeg må nok lige præcisere at jeg vil centrere tabellen fra stylesheeted og ikke style i dokumentet....
Avatar billede callesen Praktikant
03. august 2002 - 15:07 #5
Så ta' inlinestylene og sæt i en CSS-fil.
Avatar billede lequet Nybegynder
04. august 2002 - 13:35 #6
Det kan sagtens lade sig gøre :

<body style="text-align : center ;">

<table style="margin-left : auto ; margin-right : auto ; text-align : left ;">

margin-left og margin-right er nødvendige for at andre browsere end IE centrerer tabellen, og text-align : left ; er for at sikre at teksten i tabellen ikke også bliver centreret men kun selve tabellen. Det skulle meget gerne virke :)
Avatar billede halu Nybegynder
05. august 2002 - 13:34 #7
Lequet har næsten ret, blot med den forskel at det er en Bug i IE der skaber problemerne og renderer bokse som tekst - ikke teksten i boksen som tekst:

<style>

.centerBox{
  margin-left: auto;
  margine-right: auto;
  text-align: left;
}

.bugIE5{
    text-align: center;
}

<html>
<body class="bugIE5">
<table class="centerBox">

......

følgende stylesheet vil 1) centrer boks-elementer med klassen centerBox &
sætte text-align til normal venster stilling, hvilket er nødvendigt for at korrigere IE5 fejlfortolkning css, hvor man ved at sætte text-align til center på <body> får centreret bokselementerne (og ikke som korrekt teksten i bokselementerne).

Denne bug er helt generel for alle boks elemnter, og altså også <div> o.l
Avatar billede Slettet bruger
17. december 2002 - 07:35 #8
Lukketid?
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