10. august 2005 - 10:59Der 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 :-)
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.
<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 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>
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]
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..
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
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)
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...
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 :)
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!
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!
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)
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 :)
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!
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 :)
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.
Det lyder godt :D - det ser jeg frem til. - er der nogen ca. tidshorisont på det ?
Synes godt om
Ny brugerNybegynder
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.