Domanda

Non so perché questo mi preoccupi così tanto, ma quando creo siti Web, cerco sempre di fare tutto il mio stile con i CSS. Comunque una cosa che devo sempre ricordare di fare quando lavoro con le tabelle è aggiungere cellpacing = " 0 " e cellpadding = " 0 "

Perché non esiste una proprietà CSS per sovrascrivere questi attributi HTML 4 antiquati?

È stato utile?

Soluzione

Spaziatura cellulare :

table { border-collapse: collapse; }

Per quanto riguarda cellpadding , puoi fare

table tr td, table tr th { padding: 0; }

Altri suggerimenti

mat ha già risposto, ma solo per completezza:

  • padding & # 8594; cellpadding
  • border-spacing & # 8594; cellspacing
  • border-collapse & # 8594; nessun equivalente HTML

Vale anche la pena ricordare che è possibile impostare valori orizzontali e verticali separati per quelli CSS, ad es. border-spacing: 0 1px .

ripristina foglio di stile di Eric Myer contiene il seguente stile di "reset" per la tabella:

/* tables still need 'cellspacing="0"' in the markup */
table {
    border-collapse: collapse;
    border-spacing: 0;
}

Inoltre TD, TR sono ripristinati:

thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

Il motivo per cui menziono questo è che ha un commento 'le tabelle hanno ancora bisogno di cellpadding = 0'. Presumo che l'abbia inserito qui per un motivo, probabilmente necessario per alcuni vecchi browser. A giudicare dal fatto che questo è uno dei pochi commenti che ha incluso, suppongo sia importante e che ci sia una buona ragione per farlo.

Basato su questo commento - e solo su questo commento! - sto continuando a utilizzare cellpacing = " 0 " nel markup a meno che qualcuno non mi dica definitivamente (sotto) perché non ne ho bisogno. Potrebbe tuttavia essere superfluo in qualsiasi browser moderno che valga la pena supportare in questi giorni.

table { border-collapse:collapse; }

Suppongo che qualcuno abbia considerato la spaziatura cellulare una cattiva pratica & # 8221 ;. Come capisco è equivalente incluso nello standard CSS2 ma IE non supporta questa proprietà. border-collapse consente di impostare la spaziatura sul valore 0. L'imbottitura delle celle può essere ottenuta impostando la proprietà di imbottitura sugli elementi TD di una tabella.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top