Avatar billede xorioz Nybegynder
07. maj 2006 - 17:19 Der er 14 kommentarer

Hjælp til table design

Haløjsa eksperter længe siden :)

nå men jeg går lige til sagen.
Jeg har nogle problemer som jeg gerne ser løst da jeg snart får en blodprop.

det drejer sig henholdsvist om compatibilitetsproblemer mellem 2 browsere IE og Firefox og om hvordan jeg får en table til at gå fra toppen og helt ned til bunden uden at den har noget indhold.

først og fremmest er det jo det med browserne.
følgende virker i IE men ikke i Firefox.
// style.css
// includeret i index.php
.tmenu {
    background-attachment: fixed;
    background-image: url(bg/menu_t.jpg);
    background-repeat: no-repeat;
    background-position: center top;
}

.ttext {
    background-attachment: fixed;
    background-image: url(bg/text_t.jpg);
    background-repeat: no-repeat;
    background-position: center top;
}

hvorfor gør det ikke det?

det næste er så at de table-columns jeg bruger ovennævnte styles i skal ud over at have denne fixede background skal de også gå helt ned til bunden af siden altså højden af skærmen. hvordan gør man det?
Avatar billede olebole Juniormester
07. maj 2006 - 17:27 #1
<ole>

Det mest interessante for en X-browser-løsning er, hvad der står før <html>-tagget  :)

Prøv:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>TITLE</title>
<style type="text/css">
html, body {
    height: 100%;
    margin: 0;
    padding: 0;
}
</style>
</head>
<body>

<table style="height:100%;width:400px;margin:0 auto;background:red">
<tr>
    <td>En tekst</td>
</tr>
</table>

</body>
</html>

/mvh
</bole>
Avatar billede xorioz Nybegynder
07. maj 2006 - 18:09 #2
Takker det med Hight på body i css virkede men jeg har stadig et problem med Firefox... ja det er sq IE siden virker med og det er jeg slet ikke glad for.

her er et link til siden så du evt kan tjekke om min DOCTYPE er i orden.
http://xor.snark.dk/greed/index.php?side=1
Avatar billede apo Praktikant
07. maj 2006 - 18:13 #3
Du mangler et <html>-tag:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- Erstat denne linje med: '<html>' -->
<head>
Avatar billede apo Praktikant
07. maj 2006 - 18:14 #4
... Din DOCTYPE er i orden.
Avatar billede xorioz Nybegynder
07. maj 2006 - 18:14 #5
en helt anden ting er...
kan jeg min tmenu style på en table-column og på en eller anden måde også sætte et background img på repeat?

har forsykt mig med barer at sætte den på som background men det virkede tydligvis ikke.
Avatar billede xorioz Nybegynder
07. maj 2006 - 18:17 #6
lol... hvordan fann kunne jeg glemme et html tag... nå det løste ingen synlige problemer men browserne er nok glade for det :)
Avatar billede olebole Juniormester
07. maj 2006 - 18:19 #7
Du kan evt. bruge <col style="">:
    http://www.w3.org/TR/html401/struct/tables.html#edef-COL

- men det er ikke alle style-properties, du kan bruge på col-elementer.

I din inderste tabel, har du to tr-afslutninger i træk. det er ikke tilladt.
Desuden har du height="100%" på stort set alle rækker - det bliver til mange hundrede procent, når de bliver lagt sammen  ;o)

I øvrigt har der aldrig være en height-attribut på et table-element. Højden skal sættes med CSS
Avatar billede xorioz Nybegynder
07. maj 2006 - 18:59 #8
jeg kan slef godt se at det at bruge 100% i mine rows ikke er optimalt da 100% jo er hele siden men jeg kender ikke nogen anden måde at få min table til at makke ret... så hvis i kender til en anden løsning som evt at skrive noget i stil med <td height="max"> eller rest eller noget i den stil så sig endeligt til :)
Avatar billede xorioz Nybegynder
09. maj 2006 - 21:58 #9
ok jeg får nok ikke mer hjælp her.. :)

Jeg vil mene at det er fair nok at dele pointsne lige over mellem olebole og apo så hvis i smider et svar vær skal i få 30 points :)

tak for hjælpen... tror jeg spørger om mit css problem inde under css sektionen...
Avatar billede kongknabe Nybegynder
09. maj 2006 - 22:00 #10
Så vidt jeg kan se er der slet ikke nogen grund til at bruge tables - lav det i stedet i ren CSS! Det ville jeg umiddelbart råde dig til og så ville jeg derudover råde dig til som standart at lave det så det virker i FireFox - derefter kan du altid lave endnu et stylesheet med IE hacks som du kun importere hvis folk rent faktisk bruger IE :-)

dit css kunne evt. se sdåan her ud:

html, body     

{ width: 100%;
  height: 100%;
padding: 0;
margin: 0;
}

#container

{ width: 800px;
height: 100%;
margin: 0px auto 0px auto;
padding: 0;
position: relative;
top: 0px;
left: 0px;
}

#top

{ width: 800px;
  height: 200px;
margin: 0;
padding: 0;
position: absolute
Avatar billede kongknabe Nybegynder
09. maj 2006 - 22:18 #11
Hmm.. så besluttede den sig for at sende mit i det hele - prøver lgie igen :-)

dit css kunne evt. se sdåan her ud:

html, body     

{ width: 100%;
  height: 100%;
padding: 0;
margin: 0;
}

#container

{ width: 800px;
height: 100%;
margin: 0px auto 0px auto;
padding: 0;
position: relative;
top: 0px;
left: 0px;
}

#top

{ background-color: red;
  width: 800px;
  height: 200px;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0px;
  left: 0px
}

#left_content

{ background-color: blue;
  width: 200px;
  height: auto;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px
}

#right_content

{ background-color: green;
  width: 600px;
  height: auto;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 200px
}

Og så din html

<body>
  <div id="container">
      <div id="top">
      </div>
      <div id="content_left">
      </div>
      <div id="content_right">
      </div>
  </div>
</body>

- Det burde virke i Firefox - hvis du kan bruge det skal jeg gerne hjælpe med at få det til at virke i IE også :-)
Avatar billede kongknabe Nybegynder
09. maj 2006 - 22:21 #12
Hmm... mangler en rette funktion herinde... I left_content og right_content skulle positioneringen være :

position: absolute;
top: 200px

:-)
Avatar billede kongknabe Nybegynder
09. maj 2006 - 22:26 #13
Arghh... Jeg skulle måske over veje at lade være meda t prøve at hjælpe med mindre jeg var frisk nok til rent faktisk selv at overskue hvad jeg sidder og laver.. :-D - Som det trænede øje måske vil bemærke har jeg i ovenstående kladde kaldt de to content divs for left_content og right_content - i html delen har jeg så valgt at kalde dem for content_left og content_right - he he - de sakl selvfølgelig hede det samme begge steder :-D
Avatar billede xorioz Nybegynder
10. maj 2006 - 23:56 #14
jeg anede slet ikke at man kunne bruge css på den måde :)
det er jo super genialt så kan jeg minimere mine html tags til links og en smule andet. og så koncentrere mig om mit php.

hvis du kan give mig et link til hvordan man bruger css på denne måde ville det være så genialt :)
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