2012-04-23 16 views
5

Una delle risposte a my previous question indica che colgroup/col dovrebbe funzionare solo in IE.Perché colgroup/col non funziona in Chrome

Ho scritto un esempio (vedi sotto) che funziona su IE9 (centra il contenuto delle celle nella terza colonna), ma non funziona sull'ultima versione di Chrome.

Cosa ho fatto di sbagliato?

Esempio di HTML:

<html> 
<head><title>test table centerring</title></head> 
<body> 

    <table border="1"> 
     <colgroup> 
      <col/> 
      <col/> 
      <col align="center"> 
     </colgroup> 
     <thead> 
      <tr> 
       <th>#</th> 
       <th>Name</th> 
       <th>Value</th> 
      </tr> 
     </thead> 
     <tbody> 
      <tr> 
       <td>1</td> 
       <td>Name 1</td> 
       <td>Value 1</td> 
      </tr> 
      <tr> 
       <td>2</td> 
       <td>Name 2, Name 2, Name 2, Name 2</td> 
       <td>Value 2</td> 
      </tr> 
      <tr> 
       <td>3</td> 
       <td>Name 3</td> 
       <td>Value 3</td> 
      </tr> 
      <tr> 
       <td>4</td> 
       <td>Name 4</td> 
       <td>Value 4, Value 4, Value 4, Value 4</td> 
      </tr> 
     </tbody> 
    </table>   

</body></html> 
+0

Hanno dichiarato che funziona solo in IE, il che significa che non funzionerà in Chrome. – ricochet1k

risposta

2

A dire il vero, ero abbastanza sicuro che solo IE supporta tale, ma era confusa da una delle risposte alla domanda Is there any way to center certain columns in table?. L'autore di risposta ha sottolineato anche ad alcune restrizioni: http://www.quirksmode.org/css/columns.html

Purtroppo colonne della tabella sono abbastanza difficili da usare, perché se non li si usa di avere in sostanza un tavolo che è suddiviso in due modi: per righe e colonne. La regola generale è che qualsiasi stile definito su una riga annulla qualsiasi stile definito su una colonna.

In secondo luogo, W3C specifica che possono essere utilizzate solo poche dichiarazioni sulle colonne: bordo, sfondo, larghezza e visibilità. Eccezione: IE7 e versioni precedenti consentono tutte le dichiarazioni.

In terzo luogo, c'è un po 'di confusione se gli stili di colonna sono applicati alla colonna nel suo insieme, o ai singoli <td> s contenuti da esso. La dichiarazione del bordo sembra essere applicata alla colonna nel suo complesso, ma la larghezza viene applicata alle singole celle.

Ciò ha reso praticamente inutile colgroup/col per centrare.

Problemi correlati