676 Stimmen

Die Tabellenspaltenbreite unabhängig von der Menge des Textes in den Zellen konstant halten?

In meiner Tabelle habe ich die Breite der ersten Zelle in einer Spalte auf 100px festgelegt.
Jedoch, wenn der Text in einer Zelle in dieser Spalte zu lang ist, wird die Breite der Spalte größer als 100px. Wie kann ich diese Ausdehnung deaktivieren?

6 Stimmen

stackoverflow.com/questions/1258416/word-wrap-in-a-html-tabl‌​e 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.

3voto

Mitja Gustin Punkte 1643

Es hilft auch, die letzte "Filler-Zelle" mit width:auto zu setzen. Diese wird den verbleibenden Platz einnehmen und alle anderen Abmessungen wie angegeben belassen.

3voto

Willy Richardson Punkte 116

Machen Sie die akzeptierte Antwort für kleine Bildschirme reagieren, wenn kleiner als die feste Breite.

HTML:

    header 1
    header 234567895678657

    data asdfasdfasdfasdfasdf
    data 2

CSS

table{
    border: 1px solid black;
    table-layout: fixed;
    max-width: 600px;
    width: 100%;
}

th, td {
    border: 1px solid black;
    overflow: hidden;
    max-width: 300px;
    width: 100%;
}

JS Fiddle

https://jsfiddle.net/w9s3ebzt/

1voto

Aaron Averill Punkte 233

KAsun hat die richtige Idee. Hier ist der richtige Code...

  th.first-col > div, 
  td.first-col > div {
    overflow:hidden;
    white-space:nowrap;
    width:100px
  }

  echt langer Header
  echt langer Text

1voto

Skocdopole Punkte 15160

Ich verwende ein ::after-Element in der Zelle, in der ich unabhängig vom vorhandenen Text eine minimale Breite festlegen möchte, wie folgt:

.cell::after {
    content: "";
    width: 20px;
    display: block;
}

Ich muss die Breite nicht am Tabelleneltern-Element festlegen oder table-layout verwenden.

-4voto

user3229980 Punkte 1

Ich fand KAsuns Antwort funktioniert besser mit vw anstelle von px wie folgt:

...............

Dies war das einzige Styling, das ich anpassen musste, um die Spaltenbreite zu ändern

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X