webForumDet fria alternativet

CSS för tabeller

14 svar · 532 visningar · startad av clarkbones

clarkbonesMedlem sedan feb. 20013 023 inlägg
#1

Bör man använda CSS för att ange bredd på tex tabeller eller skall man använda tabellens eget width-attribut? Vad är att föredra, motivera gärna.

silfverMedlem sedan apr. 200312 679 inlägg
#2

CSS är alltid att föredra. Ge hellre tabellen och dess celler olika id:n och class:er. Skriver du för XHTML ska du alltid använda CSS.

tantenMedlem sedan nov. 20051 596 inlägg
#3

Man ska ange tabellens vidd i html-dokumentet.

silfverMedlem sedan apr. 200312 679 inlägg
#4

tanten skrev:

Man ska ange tabellens vidd i html-dokumentet.

Eh?

tantenMedlem sedan nov. 20051 596 inlägg
#5

:-)
antar att det var motiveringen somsaknades.

Jag fått varningar när jag inte angett vidden, tror det var WAI och Cynthia, men är inte 100%.
Tror också att webläsaren snabbare laddar ner en tabell med width, på samma sätt som de gör med bilder.
För de som kopplat bort css eller inte har det stödet, så kan en tabell bli väldigt konstig, när den sträcker sig över hela sidan.
Men det är bara vidden på tabellen man ska ange inte på td m.fl. och inga andra attribut heller

echoSweMedlem sedan nov. 20041 189 inlägg
#6

Personligen så tycker jag inte det spelar någon större roll.

Har du en massa olika tabeller över en massa olika saker: använd css.
Har du en tabell som du vill styla med bredd osv, använd html.
Vill du tex. styla en kalender-tabell, använd css, då det då inte längre handlar om bredd, utan även om bakgrund, border, osv...

CSS är inte alltid alltid att föredra.

oskobMedlem sedan maj 20021 558 inlägg
#7

Jag får varningar (av validator.w3.com) när jag använder width i tabeller :q

tantenMedlem sedan nov. 20051 596 inlägg
#8

oskob skrev:

Jag får varningar (av validator.w3.com) när jag använder width i tabeller :q

Det får inte jag ens i xhml 1.0 Strict eller i xhtml1.1

zcorpanMedlem sedan dec. 20042 245 inlägg
#9

tanten skrev:

Tror också att webläsaren snabbare laddar ner en tabell med width, på samma sätt som de gör med bilder.

Webbläsare laddar inte ner kod snabbare för att det finns ett extra attribut i märkkoden. Däremot kan webbläsaren möjlligtvis börja rita ut tabellen medan den laddas om den vet vilken bredd den har. Om man anger bredden i märkkoden eller i stilmallen har mindre betydelse, men eftersom det har att göra med hur tabellen ska visas skulle jag använda CSS. Bilder laddas inte snabbare med width och height, men de kan ta upp den plats som behövs för bilden medan webbläsaren ritar, innan bilden har laddats, vilket gör att det blir mindre hoppigt. :)

jarvkloMedlem sedan juli 20013 378 inlägg
#10

Hmm...
Finns såvitt jag vet inget magiskt "ska" när det gäller XHTML och CSS - Det är en ren myt!. Både width och border för <table> finns t.ex. med i HTML4 (alla tre), XHTML1.0 (alla tre) och XHTML 1.1...

Kolla rekommendationerna eller DTD:erna så får ni se

Fast det var egentligen inte det jag tänkte säga - utan detta (som osökt för oss tillbaka till ämnet också ;) )

clarkbones skrev:

Bör man använda CSS för att ange bredd på tex tabeller eller skall man använda tabellens eget width-attribut? Vad är att föredra, motivera gärna.

Hmm...
Eftersom CSS-inställningar alltid gäller över HTML-attributvärden, är det väl inget som hindrar att du använder width på en tabell om du behöver eftersom du kan komplettera den inställningen från en extern CSS-filsenare om du skulle behöva.

Jag kan tillochmed tänka mig att det kan vara bra ur tillgänglighetssynpunkt (men inget krav det heller ;) ) att fastställa bredden på en tabell med (X)HTML-attributet width för att få en snygg regradering av en datatabell fördenskull besökaren av en eller annan orsak väljer bort din stilmall...

Sedan ger ju CSS samlat i externa stilmallsfiler ofta rent administrativa, tillgänglighetsmässiga (och bandbreddsmässiga) fördelar... Men det är inget som är specifikt för just tabeller... Och det finns, som nämnts tidigare i tråden, heller inga garantier för CSS alltid är "bäst" - även om jag personligen upplever att det blir enklare med CSS för det allra mesta...

Det enda jag vill varna för är att använda attributet style till att ställa in något värde (t.ex. bredden), och det gäller generellt - för gör du det har du också effektivt dödat möjligheten att senare använda en extern stilmall för att påverka just de värdena du lägger in i style-attributet...

Exempel:

<table width="300">....</table>

ger en 300 pixel bred tabell

<table class="standardtabell" width="300">....</table>

med stilmallen

.standardtabell {width: 400px; }

ger en 400 pixel bred tabell...

  1. Men lägger du nu till
<table class="standardtabell" width="300" style="width: 200px">....</table>

så får du en tabell som ingen extern stilmall i världen kan ändra bredden på som är 200 pixel bred.

Sedan är det upp till dina behov vilket som är "bäst" - för alla är på sitt sätt mer eller mindre "rätt" beroende på vad man är ute efter :birp

echoSweMedlem sedan nov. 20041 189 inlägg
#11

jarvklo skrev:

så får du en tabell som ingen extern stilmall i världen kan ändra bredden på som är 200 pixel bred.

Kan man inte sätta !important då?
Annars håller jag väl med dig...

jarvkloMedlem sedan juli 20013 378 inlägg
#12

echoSwe skrev:

Kan man inte sätta !important då?

Jo det är ju sant förståss - Jag tänkte inte på den eftersom jag ännu inte rutinmässigt börjat använda finesser som är flaggade med icke-komplett stöd... Speciellt inte när "incomplete"-markeringen sitter på MSIE6 :)

Fast i just det sista exemplet jag gav skulle det ju, som du påpekar, antagligen fungera att skriva

.standardtabell {width: 500px !important; }

Fast att den "storsläggan" skulle vara bra designvana när man har andra alternativ att ta till (genom att utelämna style-attributet) är jag personligen tveksam till - men det är, som sagt, bara en åsikt... :birp

Källa:
http://nanobox.chipx86.com/browser_support_css.php#css2importance

echoSweMedlem sedan nov. 20041 189 inlägg
#13

Tjena

Nä, jag har inte sagt att man skulle använda det rutinmässigt, bara att du hade fel i ditt påstående... Du skrev "ingen extern stilmall i världen" och man kan mycket väl ha en personlig stilmall som man surfar med, eller varför inte en extension som skriver om en webbplats så att man själv tycker den blir bättre.

Henrik

jarvkloMedlem sedan juli 20013 378 inlägg
#14

Hmm...

Ledsen om det jag skrev gick att missförstås som någon sorts pik - det var det verkligen inte frågan om, jag menade det helt enkelt som en lam bortförklaring varför inte tänkte på att ta med !important och därför kom upp med en för förenklad bild av verkligheten (Jag valde tummen upp som ikon till inlägget för att markera att jag uppskattade ditt påpekande)...

PEACE! :birp

echoSweMedlem sedan nov. 20041 189 inlägg
#15

Nä, jag menade heller inget 'argt'

Peace själv :) :bire

PS, jag måste bli bättre på att lägga in smileys :i (y) §e

137 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)