Czy istnieje sposób na ukrycie wierszy tabeli bez wpływu na ogólną szerokość tabeli? Mam javascript, który pokazuje/ukrywa niektóre wiersze tabeli, ale gdy wiersze są ustawione na display: none;
, tabela z kurczy się, aby dopasować zawartość widocznych wierszy.Ukrywanie wierszy tabeli bez zmieniania ogólnej szerokości
Odpowiedz
Jeśli szukasz, aby zachować ogólną szerokość tabeli, można to sprawdzić przed ukrywa rząd i jawnie ustawić właściwość stylu szerokość tej wartości:
Jednak może to spowodować poszczególne kolumny, które mają się ponownie wyświetlać po ukryciu wiersza. Możliwym sposobem na złagodzenie tego jest dodanie stylu do tabeli:
Dla porównania, rozwiązanie levika działa idealnie. W moim przypadku, przy użyciu jQuery, rozwiązanie wyglądało mniej więcej tak:
$('#tableId').width($('#tableId').width());
w CSS, na stole instruuje przeglądarkę na cześć rozmiary już określone dla wysokościach i szerokościach. Z reguły uniemożliwia to automatyczną zmianę rozmiaru przeglądarki, chyba że nie podano żadnych wskazówek dotyczących preferowanych rozmiarów wierszy i kolumn.
dzięki za wyjaśnienie zachowania – garrow
Można to zrobić przy użyciu czystego HTML
<table border="1">
<colgroup>
<col width="150px" />
<col width="10px" />
<col width="220px" />
</colgroup>
<tr>
<td valign="top">1</td>
<td> </td>
<td>2</td>
</tr>
<tr>
<td>3</td>
<td> </td>
<td>4</td>
</tr>
</table>
... aż do zmiany rozmiaru okna, a następnie stałej szerokości stołu nie reflow dłużej, bo to teraz stałą szerokość piksela ... – ijw