Nehmen wir an, ich habe eine HTML-Tabelle mit einer CSS-Breite von 750px deklariert. Es hat 5 Spalten und jede Spalte hat eine Breite von 50px, deklariert mit CSS (alle Tds haben eine 50px Breite). Offensichtlich ist die Summe der Spaltenbreiten 250px, was weniger als 750px ist.Die berechnete Spaltenbreite unterscheidet sich von der css-deklarierten Breite für die Spalte. Wie entscheidet der Browser über die Breite?
Wenn der Browser die Tabelle rendert, hat jede Spalte eine andere berechnete Breite. Ich habe eine Spalte, die nur 5 Leerzeichen hat, aber eine berechnete Breite von über 100px (viel mehr als 5 ).
Alle Spalten passen ihren enthaltenen Text plus einige zusätzliche Leerzeichen. Im Markup befinden sich keine fest codierten Spaltenbreiten. Nur eine einzige 50px in der CSS für die 'td'.
Wie berechnet der Browser die gerenderte Breite jeder Spalte?
Der längste Inhalt in jeder Spalte ist kleiner als die berechnete Breite. Jede Spalte hat zusätzliche Leerzeichen. Keine Spalte ist schmaler als meine Breite. Versucht der Browser, zusätzliche Leerzeichen in jede Spalte * gleich * zu werfen, um zur Tabellenbreite zu gelangen? Das Schlüsselwort ist gleichermaßen hier. Ich habe eine Spalte, die nur fest codierte Leerzeichen, keinen Text, aber es endet mit einer breiteren Spalte als die Summe der Leerzeichen. –
@Tony_Henrich: Ja, der zusätzliche Speicherplatz wird gemäß einem unbekannten Algorithmus im Browser gleichmäßig oder proportional über die Spalten verteilt. – Guffa