webForumDet fria alternativet

Cellpadding / Cellspacing eller CSS?

3 svar · 530 visningar · startad av Bäckman

BäckmanMedlem sedan nov. 2001339 inlägg
#1

Tänkte komma med en fråga som jag funderat på lite titt som tätt. Det jag undrar är i stort sett om attributet "cellpadding" (HTML) är detsamma som "padding" (CSS), och hur korrekt det är att använda det med XHTML 1.1-standarden.

Innan har jag också alltid använt "border" (CSS) till mina ramar på tabeller. Då har jag alltid haft problemet att det blir 2 pixlars ram mellan tabellerna om man applicerar attributet på enskilda celler. Om man däremot använder "cellspacing" (HTML) så blir det ju precis som jag vill ha det. Frågan är om det är så rekommenderat att använda de här två, kanske något föråldrade, HTML-attributen?

jarvkloMedlem sedan juli 20013 295 inlägg
#2

Re: Cellpadding / Cellspacing eller CSS?

Bäckman skrev:

Det jag undrar är i stort sett om attributet "cellpadding" (HTML) är detsamma som "padding" (CSS)

Jupp
Men man kan bara kan ställa in ett gemensamt värde för alla celler i hela tabellen med cellpadding, medan man med padding:
I CSS kan man ställa in olika värden för varje cell i tabellen induellt (via id="...", class="..." eller style="...") eller gemensamt, t.ex.

td {padding:3px}

Dessutom kan man i CSS välja olika värden på paddingen uppe, nere, vänster och höger i cellerna (också det per cell om man vill)

hur korrekt det är att använda [ cellpadding ] med XHTML 1.1-standarden.

100% helt korrekt utan inskränkningar - cellpadding och cellspacing finns med även i xhtml 1.1 ;)
källa: Tabeller i xhtml 1.1 definieras genom att "Tables module" i xhtml modularization inkluderas i DTD:n. Denna finns på http://www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_tablemodule

Då har jag alltid haft problemet att det blir 2 pixlars ram mellan tabellerna om man applicerar attributet på enskilda celler

CSS-stilen border-spacing skall kunna användas för att ställa in detta - men problemet är att detta inte stöds av t.ex. MSIE6 :(
Om du vill ha bort mellanrummet helt kan du köra med

border-collapse:collapse

på tabellen (se exempel och referenser i t.ex. http://www.webforum.nu/showthread.php?s=&forumid=12&threadid=64967 )

Frågan är om det är så rekommenderat att använda de här två, kanske något föråldrade, HTML-attributen?

Hmm... Med risk att detta blir ett flamebait ;)
Jag tycker inte det är fel att använda det som är med i specen (vi pratar ju om xhtml 1.1-specen här och inte xhtml 1.0 Transitional).
Motivering: Jag tycker helt enkelt inte att man kan jämföra t.ex. användningen av cellspacing med användningen av t.ex. <font> eller andra borttagna attrribut eller taggar i samma sammanhang ;)

Som vanligt är det för- och nackdelar med bägge sätten.
cellpadding och cellspacing är mer förutsägbara pga MSIE:s bristande stöd för alternativet, nackdelen är att man då inte har möjlighet att flytta ut *allt* utseende i en separat stilmall.

CSS-sättet är sämre infört idag i t.ex. MSIE iom bristen på border-spacing - men mer flexibelt i övrigt...

Sedan kan man ju kombinera också.
CSS-värden skriver ju över t.ex. cellpadding-värden för en cell om bägge är angivna ;)

Detta var mina högst personliga 10 öre - hoppas det klarnade lite :birp

CalevanMedlem sedan maj 20031 133 inlägg
#3

kan man göra något så att

td {padding:3px}

även fungerar i IE?

tack!

CalevanMedlem sedan maj 20031 133 inlägg
#4

bara för att jag skrev så började det funka. misstänker att det kan bero på att jag stängde webläsaren och startade den på nytt som gjorde det :)

Genererad på 386 ms · cache AV · v20260730165559-full.f96bc7eb