<table>
<tr>
<td>Test</td>
<td>A long string blah blah blah</td>
</tr>
</table>
<style>
td{max-width:67%;}
</style>
Powyższe nie działa. Jak ustawić maksymalną szerokość komórki tabeli za pomocą wartości procentowych?
html
css
html-table
Leo Jiang
źródło
źródło
Odpowiedzi:
Zgodnie z definicją max-width w specyfikacji CSS 2.1, „wpływ„ min-width ”i„ max-width ”na tabele, tabele wbudowane, komórki tabel, kolumny tabel i grupy kolumn jest nieokreślony.” Więc nie możesz bezpośrednio ustawić max-width w elemencie td.
Jeśli chcesz, aby druga kolumna zajmowała najwyżej 67%, możesz ustawić szerokość (która jest w efekcie minimalną szerokością dla komórek tabeli) na 33%, np. W przykładzie
Ustawienie tego dla obu kolumn nie zadziała zbyt dobrze, ponieważ zwykle powoduje, że przeglądarki nadają kolumnom równą szerokość.
źródło
Stare pytanie, które znam, ale jest to teraz możliwe przy użyciu właściwości css
table-layout: fixed
w tagu tabeli. Odpowiedź poniżej na to pytanie Procentowa szerokość CSS i przepełnienie tekstu w komórce tabeliMożna to łatwo zrobić za pomocą
table-layout: fixed
, ale jest to trochę skomplikowane, ponieważ niewiele osób wie o tej właściwości CSS.Zobacz to w akcji na zaktualizowanych skrzypcach tutaj: http://jsfiddle.net/Fm5bM/4/
źródło
max-width
w tym jsfiddle, szerokość pozostanie taka sama, więc to nie jest to,max-width
co ją ustawia. Może to być bardziej zrozumiałe, jeśli zastąpisz go jakomax-width: 10%
pierwszytd
... zobaczysz, że się nie zmienia. jsfiddle.net/w3f8ey22/1Wiem, że to dosłownie rok później, ale pomyślałem, że się tym podzielę. Próbowałem zrobić to samo i znalazłem to rozwiązanie, które działało dla mnie. Ustawiliśmy maksymalną szerokość dla całego stołu, a następnie pracowaliśmy z rozmiarami komórek, aby uzyskać pożądany efekt.
Umieść tabelę we własnym elemencie div, a następnie ustaw szerokość, minimalną szerokość i / lub maksymalną szerokość elementu div zgodnie z potrzebami dla całej tabeli. Następnie możesz pracować i ustawić szerokość i minimalną szerokość dla innych komórek oraz maksymalną szerokość elementu div, efektywnie pracującego dookoła i do tyłu, aby osiągnąć maksymalną szerokość, jaką chcieliśmy.
Następnie w swoich stylach umieść:
Wprawdzie nie daje to „maksymalnej” szerokości komórki jako takiej, ale pozwala na pewną kontrolę, która może działać zamiast takiej opcji. Nie jestem pewien, czy będzie działać na Twoje potrzeby. Wiem, że zadziałało w naszej sytuacji, w której chcemy, aby strona nawigacji na stronie była skalowana w górę iw dół do pewnego punktu, ale w dzisiejszych czasach na wszystkich szerokich ekranach.
źródło
procent powinien odnosić się do wielkości bezwzględnej, spróbuj tego:
źródło