<table>
<tr>
<td>Test</td>
<td>A long string blah blah blah</td>
</tr>
</table>
<style>
td{max-width:67%;}
</style>
Das obige funktioniert nicht. Wie kann ich die maximale Breite einer Tabellenzelle mithilfe von Prozentsätzen festlegen?
html
css
html-table
Leo Jiang
quelle
quelle
Antworten:
Gemäß der Definition der maximalen Breite in der CSS 2.1-Spezifikation ist „die Auswirkung von 'min-width' und 'max-width' auf Tabellen, Inline-Tabellen, Tabellenzellen, Tabellenspalten und Spaltengruppen undefiniert.“ Sie können also die maximale Breite für ein td-Element nicht direkt festlegen.
Wenn Sie nur möchten, dass die zweite Spalte höchstens 67% einnimmt, können Sie die Breite (dh die minimale Breite für Tabellenzellen) auf 33% festlegen, z. B. im Beispielfall
Das Einstellen für beide Spalten funktioniert nicht so gut, da Browser dazu neigen, den Spalten die gleiche Breite zu geben.
quelle
Alte Frage, die ich kenne, aber dies ist jetzt mithilfe der CSS-Eigenschaft
table-layout: fixed
für das Tabellen-Tag möglich. Beantworten Sie unten aus dieser Frage die prozentuale CSS-Breite und den Textüberlauf in einer TabellenzelleDies lässt sich leicht mit verwenden
table-layout: fixed
, ist jedoch etwas schwierig, da nicht viele Leute über diese CSS-Eigenschaft Bescheid wissen.Sehen Sie es in Aktion bei der aktualisierten Geige hier: http://jsfiddle.net/Fm5bM/4/
quelle
max-width
in dieser jsfiddle entfernen , bleibt die Breite gleich, so dass es nicht die istmax-width
, die sie festlegt. Es könnte klarer sein, wenn Sie esmax-width: 10%
zum ersten Mal durch ein ersetzentd
... Sie werden sehen, dass es sich nicht ändert. jsfiddle.net/w3f8ey22/1Ich weiß, dass dies buchstäblich ein Jahr später ist, aber ich dachte, ich würde es teilen. Ich habe versucht, das Gleiche zu tun, und bin auf diese Lösung gestoßen, die für mich funktioniert hat. Wir haben eine maximale Breite für die gesamte Tabelle festgelegt und dann mit den Zellengrößen für den gewünschten Effekt gearbeitet.
Fügen Sie die Tabelle in ein eigenes div ein und stellen Sie dann die Breite, minimale und / oder maximale Breite des div wie gewünscht für die gesamte Tabelle ein. Anschließend können Sie die Breite und die Min-Breite für andere Zellen und die maximale Breite für das Div bearbeiten und festlegen, um die gewünschte maximale Breite zu erreichen.
Dann setzen Sie in Ihren Stilen:
Dies gibt Ihnen zwar keine "maximale" Breite einer Zelle an sich, ermöglicht jedoch eine Steuerung, die anstelle einer solchen Option funktionieren könnte. Ich bin mir nicht sicher, ob es für Ihre Bedürfnisse funktioniert. Ich weiß, dass es für unsere Situation funktioniert hat, in der die Navigationsseite auf der Seite bis zu einem Punkt vergrößert und verkleinert werden soll, aber heutzutage für alle Breitbildschirme.
quelle
Der Prozentsatz sollte relativ zu einer absoluten Größe sein. Versuchen Sie Folgendes:
quelle