Avatar billede mhoej Nybegynder
04. marts 2002 - 10:24 Der er 5 kommentarer

Table layout med strict.dtd = problem ?!

Hej alle.

Håber at der er nogle af jer HTML hajer, som kan hjælpe mig med et lille problem som går ud på, at min <table> ikke lige gør som jeg forventer.

Problemet er, at jeg ønsker at min tabel er centreret på siden, samtidig med, at den skal fylde 100% af højden. Dette virker fint nok, så længe jeg ikke angiver DOCTYPE, men da jeg specifikt ønsker at kode mod et strict.dtd, så giver det problemer.

Min side ser fint ud i IE5.5, men vises ikke som forventet i IE6, NS6 og Opera6. Jeg er dog ikke i tvivl om, at det er de sidste versioner af ovenstående browsere som viser siden 'mest' korrekt iht. W3C's CSS specifikationer.

Hvad gør jeg galt?

Jeg er kommet frem til at:
1. text-align ignoreres i NS6 og Opera6 i forhold til <table>.
2. height ignoreres i IE6, NS6 og Opera6, så længe værdien er relativ. Angives f.eks. 100px overholdes denne værdi.

Gåde (seriøse) råd er velkomne.

Med venlig hilsen

<Michael/>

Eksempel kode:
--------------

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
  <title>Test side</title>
  <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <meta http-equiv="Content-Style-Type" content="text/css">
  <meta http-equiv="Content-Language" content="text/css">
  <style type="text/css">
    .bodyContent
    {
      text-align : center;
    }
    .mainTable
    {
      border    : 1px solid #000000;
      height    : 100%;
      text-align : left;
      width      : 750px;
    }
    .maxHeight
    {
      height    : 100%;
    }
  </style>
</head>
<body class="bodyContent">
  <table class="mainTable" cellpadding="0" cellspacing="0">
  <tr>
    <td>Top</td>
  </tr>
  <tr class="maxHeight">
    <td valign="bottom">Bund</td>
  </tr>
  </table>
</body>
</html>
Avatar billede killifish Nybegynder
04. marts 2002 - 12:20 #1
text-align skal ikke virke på block elementer. Det er en bug i IE 5.x Brug i stedet

table {
margin:0em auto;
}
Avatar billede pelkjaer Nybegynder
04. marts 2002 - 12:29 #2
Hvad med at kaste en div uden om:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Test side</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<style type="text/css">
#Content {
  text-align: center
}
.mainTable {
  border: 1px solid #000000;
  width: 750px
}
</style>
</head>
<body>
<div id="Content">
  <table class="mainTable" cellpadding="0" cellspacing="0">
    <tr>
      <td>Top</td>
    </tr>
    <tr class="maxHeight">
      <td valign="bottom">Bund</td>
    </tr>
  </table>
</div>
</body>
</html>
Avatar billede mhoej Nybegynder
04. marts 2002 - 13:01 #3
killifish > det virker sku' - thanks !!

Men... du skriver, at text-align ikke skal virke med block elementer. Men efter hvad jeg kan se, så er det netop det som den skal.

Se foreksempel definitionerne på text-align og table her:
http://www.htmlhelp.com/reference/css/text/
http://www.htmlhelp.com/reference/html40/block.html

Tilbage er nu mit sidste problem: Hvordan får jeg den procentuelle højde til at virke på tabellen ?
Jævnfør CSS2, så defineres height som: Applies to all elements except nonreplaced inline elements, table column elements and column group elements.

Crap crap crap - please help :-)
Avatar billede killifish Nybegynder
04. marts 2002 - 18:17 #4
prøv at kaste height efter <td> i stedet for <tr>
Avatar billede mhoej Nybegynder
05. marts 2002 - 09:15 #5
Nix, virker ikke i IE6.0 og NS6.2. Opera 6.0 er dog ligeglad og viser siden som IE5.5.

Hvis det ikke kan lade sig gøre at angive en procentuel højde, når der kodes mod et strict.dtd, så kan jeg godt leve uden, men jeg savner en forklaring. Jeg syns ikke at det giver mening, når det virker med width.
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