Avatar billede krk Nybegynder
10. august 2005 - 10:59 Der er 29 kommentarer og
1 løsning

tabeller i css

Jeg har læst at det ville være bedre at lave sit layout i css - passer det og hvordan gør man?

Jeg har altid bygget mine site op af tabeller i html koden, men jeg kan forstå at det er ikke den bedste løsning af hensyn til søgeoptimering.
Hvordan bygger jeg mine tabeller op i css, eller skal jeg bruge noget andet end tabeller??

Er der nogen der kan give mig en god forklaring eller endnu bedre sende et eksempel med :-)
Avatar billede Six Nybegynder
10. august 2005 - 11:12 #1
Hej, man skal bruge divs til at opbygge det med istedet for tabeller.

her kan du læse lidt om det:
http://html.dk/tutorials/css/lektion8.asp
http://www.webcafe.dk/tipsogtricks/html/layoutudentabeller.html (dette viser et godt eksempel)
Avatar billede Six Nybegynder
10. august 2005 - 11:14 #2
www.csszengarden.com <- er vidst heller ikke helt ringe at kigge på :D
Avatar billede krk Nybegynder
10. august 2005 - 11:49 #3
Jeg har lige et spørgsmål til koden. Jeg har lavet lidt ændringer til koden i eksemplet.
Mit spørgsmål er: hvordan får jeg den nederste grå kasse op og st ved siden af teksten.

Her er den ændret kode:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<style>
body {
    background: #ff9900;
    font-family: "Trebuchet MS", serif;
    margin: 100px;
}

#wrapper {
width: 700px;
margin: 0 auto;
border: 1px solid #000;
background: #fff;
}

#header {
border: 1px solid #000;
margin: 3px;
padding: 10px 0 50px 20px;
background: #eee;
}

#content {
width: 700px;
margin: 10px;
}

#content1 {
border: 1px solid #000;
margin: 3px;
padding: 10px 0 50px 20px;
background: #eee;
width: 350px;
margin: 20px;
}
</style>
<body>

<div id="wrapper">
    <div id="header">
        <h1>Velkommen til Den Semantiske Verden</h1>
    </div>
    <div id="content">
        <h2>Underoverskrift</h2>
        <p>Lorem Ipsum dolor...</p>
        <p>Lorem Ipsum dolor...</p>
        <p>Lorem Ipsum dolor...
       
        <div id="content1">
       
        Lorem Ipsum dolor...</p>
        <p>Lorem Ipsum dolor...</p>
        <p>Lorem Ipsum dolor...</p>
    </div>
    </div>
   
</div>

</body>
</html>
Avatar billede Six Nybegynder
10. august 2005 - 12:26 #4
Hej. Prøv med dette, det er ikke helt præcist, men det er derhen af ;D Så kan du jo selv lege lidt videre med det.


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<style>
body {
    background: #ff9900;
    font-family: "Trebuchet MS", serif;
    margin: 100px;
}

#wrapper {
width: 700px;
margin: 0 auto;
border: 1px solid #000;
background: #fff;
}

#header {
border: 1px solid #000;
margin: 3px;
padding: 10px 0 50px 20px;
background: #eee;
}

#content {
border: #000 solid;
width: 700px;
margin: 10px;
}

#content1 {
position: absolute;
border: 1px solid #000;
background: #eee;
width: 350px;
margin-left: 200px;
margin-top: -115px;
}
</style>
<body>

<div id="wrapper">
    <div id="header">
        <h1>Velkommen til Den Semantiske Verden</h1>
    </div>
    <div id="content">
        <h2>Underoverskrift</h2>
        <p>Lorem Ipsum dolor...</p>
        <p>Lorem Ipsum dolor...</p>
        <p>Lorem Ipsum dolor...</p>
      <div id="content1">
        <p>Lorem Ipsum dolor...</p>
        <p>Lorem Ipsum dolor...</p>
        <p>Lorem Ipsum dolor...</p>
          </div>
    </div>
 
</div>

</body>
</html>
Avatar billede jokkejensen Novice
10. august 2005 - 12:30 #5
Det er ikke mere korrekt at bruge positionering med div med mindre man designer til blinde...

Det kan være nemmere og mere dynamisk når man skal redesigne.. Søgemaskinerne er lige glade med om der står

<table>
<tr>
<td>
<p>tekst...

end
<div>
<div>
<p>tekst...
Avatar billede krk Nybegynder
10. august 2005 - 12:55 #6
Altså, når jeg skal have elementer til at st vedsiden af hinanden så skal jeg bruger position: absolute;

Findes der nogle goder bøger om dette emne??
Avatar billede krk Nybegynder
10. august 2005 - 12:57 #7
Tak for hjælpen
Avatar billede jokkejensen Novice
10. august 2005 - 13:02 #8
ikke nødvendigvis absolut..

Der findes flere alternativer til det..

div
{
display:inline;
}

vil fjerne det forud definerede line break der er efter div tagget,

eller

<div id="test">
</div>
<div id="test2">
</div>

div.test
{
float:left;
}

vil også arrangere disse ved siden af hinanden..
Avatar billede krk Nybegynder
10. august 2005 - 13:04 #9
okay, er der nogele af disse forslag der er bedre end andre eller afhænger det af hvilke styles man ellers har lavet
Avatar billede jokkejensen Novice
10. august 2005 - 13:07 #10
jeg kan fortrækker float: den giver mulighed for at aligne til forskellige sider..

right, both, mm..

<div style="clear:both;">
<div style="float:left;">
</div>
<div>
</div>
</div>

Disse vil opføre sig som 2 celler ved siden af hinanden, hvis du sætter height til 100% mm..
Avatar billede jokkejensen Novice
10. august 2005 - 13:07 #11
- kan
Avatar billede roenving Novice
10. august 2005 - 14:06 #12
Det er noget vrøvl at tale om at lave sit layout i css i stedet for i tabeller !-)

CSS (Cascading StyleSheets) er en måde at sætte visuelle properties på html-elementer, og en tabel er netop en af de html-elementer, der er til rådighed, når du vil opbygge en side ...

-- det er ikke svært at forstå en reaktion på de tabel-helveder, som op gennem 90'erne var den eneste mulighed for at opbygge et layout, med nesting i op til 10-20 lag og hundreder af spacer.gifs til at udspænde myllioner af celler ...

-- og i '98 fik vi endegyldigt en række html-elementer til rådighed, som gør, at vi i meget høj grad kan undlade specielt de dybt nestede tabeller ...

-- men det betyder altså ikke, at man skal kaste meget velegnede html-elementer ud med badevandet, og begrebet 'at udskifte tabeller med css' svarer til at du skrotter bilen og kører til bageren i autolak ...

-- i en hel række situationer er det rent tåbeligt at benytte sig af andet end tabeller, een af dem, har du netop i det ovenstående, to eller flere elementer på linje med hinanden horisontalt, hvor det bare er at lave en tabel, så fungerer det, ovenikøbet vil de så fuldstændig automatisk fylde det samme i højden, uanset hvad du fylder ind i dem, hvor du uden en tabel skal basere dit layout på en hel tredje ting, nemlig noget javascript til at fifle rundt med højder og placeringer ...

-- iøvrigt er et af argumenterne, som bruges for at man skal bruge css i stedet for tabeller, at tabeller oprindeligt er skabt til at vise tabulerede videnskabelige data, hvilket er fuldstændig korrekt !-)

-- men du vil vel heller ikke droppe brug af alle mulige former for ting, som bruger hjul, bare fordi en kommer og fortæller dig, at hjul kun må bruges til kunstvandingsanlæg, for det er det, de er skabt til !o]

-- hjul har, præcis som tabellerne, vist sig at være særdeles velegnet til meget andet end det nøjagtige formål, de blev skabt til, og så skal man selvfølgelig bruge dem, når de er til rådighed og ovenikøbet kan noget, man har brug for på en nem og overskuelig måde !o]
Avatar billede milandt Nybegynder
10. august 2005 - 15:17 #13
det handler ikke om at "skrotte bilen" men at udskifte den med fx en cykel..

her er jo ikke tale om at der ikke længere skal bruges html elementer. her er tale om hvor vidt der skal bruges div'er i stedet for td'er, og så bruge css til at style disse div'er så de får nogle andre egenskaber..

i bund og grund handler det om at skotte bilen, anskaffe sig en cykel, og så style den  med et stykke pap i hjulet så den lyder som en knallert.. og så afsted til bageren..

ingen taler om at køre til bageren i autolak..
Avatar billede roenving Novice
10. august 2005 - 15:22 #14
At udskifte tabeller med css == at udskifte et html-element med styling-information !-)
Avatar billede jokkejensen Novice
10. august 2005 - 16:36 #15
Men hvem skrotter en bil for en cykel med bølgepap... ik her i hvertfald..
Avatar billede Six Nybegynder
11. august 2005 - 02:05 #16
Roenving - interessant måde at sætte tingene i perspektiv. Jeg har også altid hørt den der om "at tabeller oprindeligt er skabt til at vise tabulerede videnskabelige data". Har dog aldrig rettet mig efter det, da jeg synes div'er er langt sværere at arbejde med end tabeller er det. (sikkert meget simpelt, men har ikke fået sat mig helt igennem med css... endnu :D )

Trist at man er blevet færdig med sin udd. Ellers skulle vores lærer da lige have haft
"at udskifte tabeller med css' svarer til at du skrotter bilen og kører til bageren i autolak" og " men du vil vel heller ikke droppe brug af alle mulige former for ting, som bruger hjul, bare fordi en kommer og fortæller dig, at hjul kun må bruges til kunstvandingsanlæg, for det er det, de er skabt til !o]" smidt i hovedet. Så gad jeg nok høre hans svar på det hehe :D
Avatar billede olebole Juniormester
11. august 2005 - 18:48 #17
<ole>

fjappe >> én ting er sikkert: Hvis din lærer kan finde på at sige: "- at bruge CSS i stedet for tabeller", bør han i hvert fald modtage noget relevant undervisning! Sådan en udtalelse giver nemlig absolut ingen mening - og afslører totalt fravær af forståelse af, hvad HTML og CSS er  ;o)

milandt >> roenvings sammenligning holder fint vand, hvis man ønsker at bruge CSS i stedet for tabeller  ;o)
Det svarer nemlig præcist til at ønske at bruge autolakken i stedet for bilen, den sidder på  :)

Sålænge folk bruger den slags meningsløse termer, må brugerne af Eksperten nok belave sig på, at roenving og jeg påpeger det tåbelige/meningsløse ved brug af tåbelige/meningsløse sammenligninger.
På et eller andet tidspunkt, går det vel op for folk, hvad HTML og CSS er for noget  ;o)

</mvh
</bole>
Avatar billede brita Nybegynder
04. maj 2006 - 11:30 #18
Tak olebole og roenving. Jeg har sådan undret mig over, hvordan man kunne udskifte tabeller med css.... men nu har jeg forstået, at det ikke er mig, men talemåden der er dum! Men hvad jeg ikke helt har forstået endnu, er om det er bedst at opbygge sit site i divs eller tabeller...
Avatar billede olebole Juniormester
04. maj 2006 - 15:09 #19
Hehe ... det er lidt 'religiøst' ladet emne  :)

Op gennem 90'erne var tabeller det eneste layout-værktøj, vi havde. HTML er i udgangspunktet konstrueret til at opstille og sprede videnskabelige data og erfaringer med. Hurtigt var der dog kreative hoveder, der fandt ud af at bruge tabeller nestede i hinanden som en slags 'sætterkasse' - og de kunne derved placere tekst og grafikelementer, hvor somhelst på siden. WWW, som vi idag kender det, tog hermed sin begyndelse.

Problemet med den fremgangsmåde er, at tabeller er 'tunge' - ikke kun, hvad angår transporten, men også hvad browserbehandlingen angår. Desuden kan f.eks. de klienter, svagtseende bruger til højtlæsning af websider, ikke lide mange tabeller i hinanden ... det er svært at finde den logiske rækkefølge af teksten. Derfor konstruerede man CSS til layout-styring.

Idag bør tabeller derfor fortrinsvis bruges til data, der af natur er tabuleret ... informationer/data, der naturligt hører hjemme i en tabelopstilling.

Det betyder dog ikke, at man religiøst bør sky tabeller. En enkelt tabel til at opdele en side i f.eks. tre søjler giver ofte mindre (og mere logisk/overskuelig) kode end en div/JavaScript/CSS løsning.
Hvis man besværer sig med at spørge blinde og/eller svagtseende, vil man finde udaf, at det absolut heller ikke generer dem ... det er der blot ikke ret mange 'tabel-fighters', der har ulejliget sig med at undersøge.

Herefter er det op til dig, om du vil leve et fundamentalistisk koder-liv - eller om du foretrækker et pragmatisk ét af slagsen  :)
Avatar billede brita Nybegynder
05. maj 2006 - 01:34 #20
Jeg forsøger at rode mine religøse anskuelser uden om min programmereing! Men da jeg lærte at programmere i slutningen af 90-erne, og i det de sidste par år ikke har set meget til koderne, er min programmering i dag håbløs gammeldags. Jeg er ihvertfald god til at neste tabeller!

Men nu er jeg blevet lidt klogere og vil opbygge mit nuværende projekt i div-er og CSS. (Jeg har planer om at genopdage ASP-koderne og bygge et dynamisk modulopbygget ASP-site. Det er måske lige i overkanten af, hvad mine rustne ASP-kundskaber kan klare, men jeg har jo eksperten!)

Endnu en gang tak for have gjort mig lidt klogere...ekspert! Så kan jeg i det mindste lave html-en mest hensigtsmæssigt!
Avatar billede brita Nybegynder
05. maj 2006 - 02:06 #21
Og olebole - jeg fandt lige din artikel: http://www.eksperten.dk/artikler/537?sort=&order=DESC&start=20 og fik lyst til at spørge dig om du udgiver artikler i computermagasiner. Det er på mange måder en meget velskrevet artikel, der hvis den bliver luget ud for personlige holdninger og tilsat lidt kilder som dokumentation sagtens kan indgå i et journalistisk magasin. Du skriver rigtig godt og laver fine pædagogiske billeder (á la sætterkassen), der gør teksten til at forstå - også for os, der er knap så vidende eksperter!
Avatar billede olebole Juniormester
05. maj 2006 - 02:18 #22
Tak for rosen  =)
Så prøv artiklen om arrays og objekter, hvor jeg går totalt i LillePer-pædagogik med skotøjsæske-futtog og.jeg.skal.komme.efter.dig  :D
    http://www.eksperten.dk/artikler/227

Faktisk er jeg igang med et dobbeltløbet projekt ... en bog om et bestemt JS-relateret emne og et site med artikler om webkodning - dog mest frontend. Nu må vi se, hvor det ender  ;o)

Ja, jeg gik selv på den legendariske Space Invaders uddannelse (den første, danske multimedie-uddannelse) i slutningen af 90'erne - og der var krudtet lige begyndt at brænde. Efterfølgende har det jo kørt med noget nær eksplosiv kraft  ;o)
Avatar billede olebole Juniormester
05. maj 2006 - 02:26 #23
PS: og jeg giver dig for såvidt ret i begge kritikpunkter - men vil dog gerne 'forsvare' den personlige 'farvning' lidt:
Artiklen (og dens efterfølger) er skrevet i trods - og på baggrund af utrolige mængder WWW-sludder om XHTML med efterfølgende religiøs, kritikløs tilbedelse i bl.a. dette forum.

Begge artikler trænger nok til en ordentlig afpudsning, men efter et efterfølgende (og forgæves) forsøg på at skrive en artikel om bookmarklets i Ekspertens katastrofale artikel-interface gjorde, at jeg svor, jeg ikke ville skrive flere artikler, før Admin tog sitet alvorligt og rettede de utallige fejl, sitet lider under. Det er ikke sket, så i stedet laver jeg mit eget, som kommer til at rumme mine egne artikler  :)
Avatar billede brita Nybegynder
05. maj 2006 - 02:54 #24
Spændende - det ser jeg frem til...
Jeg har læst starten af arrayartiklen, og ja - du har ret - den er meget pædagogisk! Supergod på den måde.
Jeg skal passe på med kritik, når jeg ikke har læst hele artiklen, (jeg er simpelthen for træt), men jeg vover alligevel skindet og påstår to ting:
1. Den er for lang. Hellere flere korte artikler, hvor du i hver artikel borer dig ned i et lille hjørne af en problematik end en lang, der dækker dem alle. Du risikerer at læseren ikke orker at gå i gang, eller som jeg, kører træt halvvejs. Som minimum ville det være rart med lidt mellemrubrikker, jeg kunne navigere i.
2. Det er alle tiders tutorial i at forstå arrays, men det er ikke nogen artikel. Det er OK, du skal bare vide, at der er forskel.

Og tag med min kritik med et gran søvn. Det er langt over min sengetid!
Avatar billede olebole Juniormester
05. maj 2006 - 03:21 #25
1. Helt enig - tre mindre tuts havde været bedre
2. Tja ... den er nok både og - men absolut mest tutorial. Her på E er alt, der ikke er 'Spørgsmål og Svar', dog 'artikler' - så al sondring er desværre udelukket.

Hos mig selv bliver der opdeling i tutorials og artikler - men der vil nu nok altid være grænsetilfælde.

Jeg er vældig glad for at få kritik på mine artikler her på sitet. Faktisk savner jeg en bedre respons mulighed, hvor forfatteren kan replicere på læsernes input - og med bedre mulighed for formatering. I det mindste bare et linjemellemrum  :)
Avatar billede olebole Juniormester
05. maj 2006 - 03:23 #26
- og så vil jeg iøvrigt forsøge mig med ekstern korrekturlæsning ... både sproglig og faglig  ;o)
Avatar billede brita Nybegynder
05. maj 2006 - 08:30 #27
Det sidste er du velkommen til at kontakte mig med, hvis du er interesseret. Jeg er journalist og arbejder pt. freelance. Jeg har tidligere arbejdet som ASP-programmør og webdesigner, så selvom jeg ikke er kodenørd, har jeg forudsætningerne for at forstå lidt mere faglige tekster end de fleste korrekturlæsere. Min mail er brita@fagjournalisten.dk.
Avatar billede Six Nybegynder
05. maj 2006 - 12:15 #28
Olebole - når din side er oppe og køre, vil du så være venlig og smide et link til den i dette spørgsmål?

Jeg vil se frem til at se hvad du har at byde på, udover alt hvad du laver her på eksperten. :D
Avatar billede olebole Juniormester
05. maj 2006 - 16:03 #29
Jeg har taget en 'Favorite' på dette spm. og vil forsøge at huske det  ;o)
Avatar billede Six Nybegynder
05. maj 2006 - 16:22 #30
Det lyder godt :D - det ser jeg frem til. - er der nogen ca. tidshorisont på det ?
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