Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di ßenJo
    Registrato dal
    Dec 2000
    Messaggi
    33

    Cellspacing Cellpadding e CSS

    Salve, volevo sapere se esiste un sistema per impostare gli attributi cellspacing e cellpadding via CSS. Ho provato a impostare nei CSS gli attributi margin:0px; padding:0px; ma comunque un certo margine all'interno delle tabelle rimane sempre, per cui per non avere margine, oltre a specificare la classe per <table> e <td> devo sempre aggiungere cellspacing=0 cellpadding=0 per evitare di avere questo fastidioso margine in più...

    Il problema è che aggiungengo questi 2 attributi la pagina non mi viene validata come html 4.01 transitional dal momento che il validatore del W3C mi dice che questi 2 attributi non esistono... Uff... esisterà pure un sistema per ovviare a questo.... sono giorni che cerco senza avere risultato... ho provato pure a impostare una classe con margin:0px; padding:0px; per i tag <tr> ma senza alcun risultato.... devo sempre ricorrere all'uso di questi due attributi "inesistenti" (e che comunque mi vengono interpretati pure da firefox oltre che da IE)

  2. #2
    ciao!
    la cosa migliore in questi casi è risalire alla fonte:

    http://www.w3.org/TR/REC-CSS2/tables.html

    dove troverai il modello di tabella CSS2. le tabelle sono sensibili ai margini e al padding. comunque ci sono anche altre proprietà, come 'border-spacing', che riduce il margine fra bordi di celle adiacenti (td). un'altra proprietà per impedire gli spazi è 'border-collapse'. impostata su 'collapse', questa proprietà fa collassare tutti i bordi all'interno di table.


    leggi: http://www.constile.org/tutorial/css_vs_table/

    un mio esperimento sui valori di 'display':

    http://gabrieleromanato.altervista.o...senza-tabelle/

    quest'ultimo è utile, in futuro, se vuoi passare ai div senza rinunciare ai vantaggi delle tabelle, che a mio avviso sono tanti.

  3. #3
    Utente di HTML.it L'avatar di ßenJo
    Registrato dal
    Dec 2000
    Messaggi
    33

    Grazie!

    Ti ringrazio infinitamente!!!
    Posto qui anche un risultato strano, magari può essere utile a qualcuno.
    Invece di cellspacing=0 cellpadding=0 come attributo di <table>,
    si può mettere nel CSS:

    border-spacing=0;

    ma il risultato io l'ho visto solo con firefox, IE continua a mettermi quel margine odioso.
    Per ottenere lo stesso risultato pure con IE io ho dovuto aggiungere nel css anche:

    border-collapse:collapse;

    Inutile dire che ora l'errore di validazione che mi dava prima è scomparso e il CSS risulta sempre valido con il validatore del W3C.

  4. #4

    Re: Grazie!

    Originariamente inviato da ßenJo
    border-spacing=0;
    Occhio che in CSS, per assegnare un valore ad una proprietà, si usano i due-punti e non l'uguale.

  5. #5
    Utente di HTML.it L'avatar di ßenJo
    Registrato dal
    Dec 2000
    Messaggi
    33

    ehm

    Si hai ragione... ho sbagliato a diGGitare... così il foglio di stile non sarebbe stato validato

  6. #6

    Re: ehm

    Originariamente inviato da ßenJo
    Si hai ragione... ho sbagliato a diGGitare... così il foglio di stile non sarebbe stato validato
    ImmaGGinavo.

  7. #7
    Una precisazione: i CSS ammettono due modelli per le tabelle: a bordi collassati e a bordi separati. tieni presente che con il modello a bordi collassati non ti conviene impostare più di uno stile per i bordi, altrimenti incorri nelle regole di precedenza per lo stile, che pongono in prima posizione 'double' e come ultimo 'inset' (in ordine di priorità nel caso di conflitti sui limiti delle celle).

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.