Lock Tabelle Zellen auf Ihre Standard-Größe, die unabhängig vom Inhalt
Wenn ich
<table>
<tr>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</table>
und
table
{ width: 100%; height: 100%; }
Jede Zelle nimmt einen gleich Viertel der Tabelle, und die Tabelle reicht um das Fenster zu passen.
Wie kann ich verhindern, dass diese Zellen aus der Größenänderung von selbst passen sich die Inhalte in den Zellen (während noch der Einbau der Tabelle im container)?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Könnten Sie versuchen
table-layout:fixed;
- dies setzt das layout auf eine bestimmte Feste Größe (angegeben in CSS) und ignoriert den Inhalt der Zellen, so dass die Breite der Zelle ändert sich nie. Ich bin mir nicht sicher, ob sich dies auf vertikale Anordnung oder nicht.Mehr info auf w3schools.
Ich es geschafft habe, dies zu tun, ohne festen Tisch-layout.
Die Zelle ist css:
Können Sie es mit
position: absolute
auf den Inhalt jeder Zelle in der Tabelle: denn wenn man dann die Größe des Inhalts nicht auf die Größe der Zelle.Um dies zu tun, müssen Sie dann auch die position der Zellen der Tabelle (also, die absolute Positionierung der Inhalte ist relativ zu der Zelle in der Tabelle) -- und/oder zur Unterstützung Firefox, position ein zusätzliches div innerhalb von Zellen der Tabelle seit Firefox lässt Sie nicht anwenden position zu die Zellen selbst.
Zum Beispiel bin ich mit diesem HTML:
Zusammen mit dem folgenden CSS, so dass die Größe des Bildes hat keinen Einfluss auf die Größe der Zelle, die ihn enthält:
Ich die
height
undwidth
vondiv.bigimg
zu100%
entsprechend der Größe dertd
enthält es, denn ich bin mit JavaScript, um die Größe der Bilder zur Laufzeit zu passen Ihre Container, die diediv.bigimg
.Hier ist ein weiteres Beispiel, Verwendung von text statt Bilder-das gleiche Prinzip aber, D. H. position: absolute inside position: relative im inneren jeder Zelle und die Zellen passen nicht auf den Inhalt.
position: absolute
dann ist es nicht mehr wirklich zufrieden ist, ist es, also nicht mehr positioniert sich als ein Kind der Zelle. Sind Sie sicher, dass Ihr Handy Inhalt 'position:absolute` (siehe z.B. die HTML-und CSS-Code in meine Antwort)?Könnten Sie versuchen, wählen Sie eine einzelne Zelle zu kauen, bis alle den Raum und auf 100% Höhe und Breite:
und einige CSS:
Und ein live-Beispiel. Sie müssen vorsichtig sein, zu vermeiden unangenehme Zeilenumbruch, wenn
.space-hog
seine Sache macht, damit diewhite-space: nowrap
. Wenn Sie die.space-hog
in der letzten Zeile dann vermeiden Sie drängen die interessanten Teile nach unten.Können Sie auch sperren Sie die Zellen um einen Prozentsatz, um die Reaktionsfähigkeit, z.B.:
td{ width:50%; }
funktionieren erst kommt der Tisch klein genug.Etwas entlang der Linien von mit
overflow:hidden;
vielleicht?Hinzufügen
table-layout:fixed;
auf den Tisch-styling.Wenn Sie bemerken dies hilft zu beheben die Breite aber nicht die Höhe, das ist, weil es möglicherweise existieren noch irgendeine Art von Polsterung in jedem td-Zelle. Hinzufügen
padding:0px;
dem td-styling.