Maak kolommen van gelijke breedte in <table>

Hoe maak ik kolommen van gelijke breedte in <table>?

Ik verander het aantal kolommen dynamisch. Vandaag heb ik 13 kolommen. Morgen wordt het verhoogd naar 16. Ik wil niet echt herberekenen.


Antwoord 1, autoriteit 100%

Ik denk dat dit voldoende zal zijn:

table{
    table-layout: fixed;
    width: 300px;
}

Antwoord 2, autoriteit 9%

Gebruik de volgende eigenschap hetzelfde als tabel en is volledig dynamisch:

ul {
    width: 100%;
    display: table;
    table-layout: fixed; /* optional, for equal spacing */
    border-collapse: collapse;
}
li {
    display: table-cell;
    text-align: center;
    border: 1px solid pink;
    vertical-align: middle;
}
<ul>
  <li>foo<br>foo</li>
  <li>barbarbarbarbar</li>
  <li>baz klxjgkldjklg </li>
  <li>baz</li>
  <li>baz lds.jklklds</li>
</ul>

Snippet uitvouwen


Antwoord 3, autoriteit 5%

Gevonden op HTML-tabel: houd dezelfde breedte voor kolommen

Als u de stijltabel-indeling instelt: vast; op je tafel, dat kan
overschrijf de automatische kolomgrootte van de browser. De browser zal
stel vervolgens kolombreedten in op basis van de breedte van cellen in de eerste rij van
de tafel. Verander je naar en verwijder de binnenkant
ervan en stel vervolgens vaste breedtes in voor de cellen in .

Other episodes