Ich habe damit gespielt, weil ich Schwierigkeiten hatte, es herauszufinden.
Sie müssen die Zellenbreite festlegen (entweder th
oder td
funktionierten, ich habe beide eingestellt) UND das table-layout
auf fixed
einstellen. Aus irgendeinem Grund bleibt die Zellenbreite nur fest, wenn auch die Tabellenbreite festgelegt ist (ich finde das albern, aber egal).
Außerdem ist es nützlich, die overflow
-Eigenschaft auf hidden
zu setzen, um zu verhindern, dass zusätzlicher Text aus der Tabelle herauskommt.
Sie sollten auch alle Rahmen und Größen für CSS festlegen.
Also hier ist, was ich habe:
table {
border: 1px solid black;
table-layout: fixed;
width: 200px;
}
th,
td {
border: 1px solid black;
width: 100px;
overflow: hidden;
}
header 1
header 234567895678657
data asdfasdfasdfasdfasdf
data 2
Hier ist es in JSFiddle
Dieser Typ hatte ein ähnliches Problem: Table cell widths - fixing width, wrapping/truncating long words
6 Stimmen
stackoverflow.com/questions/1258416/word-wrap-in-a-html-table könnte Ihnen helfen, in die richtige Richtung zu zeigen.
3 Stimmen
In meinem Fall gab es keine Erweiterung, sondern das Gegenteil: unerwünschtes Schrumpfen der Breite trotz meiner expliziten Breitenangabe. lächerlich!
0 Stimmen
Die einzige richtige Lösung dafür besteht darin, colgroup mit cols zu verwenden und die Breite der cols festzulegen.
2 Stimmen
table-layout: fixed;
ist die Lösung