Perché Safari ignora gli attributi di altezza della riga della tabella CSS (TR) dopo il ridisegno?

StackOverflow https://stackoverflow.com/questions/1627083

Domanda

Faccio fatica ad applicare lo stile css a una tabella html generata da GWT (Google Web Toolkit) in Safari. In particolare, non riesco a far sì che Safari rispetti l'attributo height di una riga della tabella dopo aver attivato qualsiasi tipo di ridisegno della tabella.

Il seguente esempio di base illustra il problema:

<html>
    <head>
        <style type="text/css">
            tr {
                height: 50px;
                font-weight: bold; /* added to prove that other style rules are re-applied when enabling css again */
            } 
        </style>
    </head>
    <body>
        <table border="1px">
            <tr>
                <td>one</td>
                <td>two</td>
                <td>three</td>
            </tr>
        </table>
    </body>
</html>

Se apro questa pagina in Safari, all'inizio viene visualizzato correttamente. Se poi scelgo " disabilita gli stili " dal menu Sviluppo e quindi riattivarli immediatamente, la regola dell'altezza viene ignorata e l'altezza della riga della tabella viene calcolata come se fosse impostata su "quotazione automatica".

Questo è esattamente ciò che accade quando le righe / celle vengono aggiunte o rimosse in modo programmatico nella mia GWT FlexTable.

Qualcuno sa cosa causa questo comportamento e se esiste una soluzione alternativa che non richiede l'impostazione di un'altezza fissa sull'intera tabella?

Dettagli: Esecuzione di Safari versione 4.0.3 (5531.9) su Mac OSX Leopard
Il problema si verifica anche utilizzando il browser GWT Hosted Mode (che essenzialmente è Safari quando lo si esegue su un mac)

È stato utile?

Soluzione

I tag

TR non hanno attributi di altezza nelle specifiche del W3C. Dovresti invece impostare l'altezza dei tag TD che contiene,

Altri suggerimenti

WebKit è ottimizzato per le prestazioni e talvolta si rifiuta di ridisegnare determinate aree, se ritiene di non doverlo fare. Potresti essere in grado di aggirare questo innescando un ridisegno totale, ad es. ridimensionando la finestra di 1px e 1px indietro (ci deve essere un modo più intelligente).

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