Як встановити розмір стовпця в адаптивній таблиці Bootstrap


82

Як встановити розмір стовпця в адаптивній таблиці Bootstrap? Я не хочу, щоб таблиця втратила свої функції, що відповідають умовам. Мені це потрібно для роботи в IE8. Я включив HTML5SHIV та Respond.

Я використовую Bootstrap 3 (3.2.0)

<div class="table-responsive">
    <table id="productSizes" class="table">
        <thead>
            <tr>
                <th>Size</th>
                <th>Bust</th>
                <th>Waist</th>
                <th>Hips</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>6</td>
                <td>79 - 81</td>
                <td>61 - 63</td>
                <td>89 - 91</td>
            </tr>
            <tr>
                <td>8</td>
                <td>84 - 86</td>
                <td>66 - 68</td>
                <td>94 - 96</td>
            </tr>
        </tbody>
    </table>
</div>

1
Ви можете встановити максимальну ширину для стовпця
WhiteLine

Я думав, що в bootstrap ви можете вказати ширину стовпців, використовуючи такі параметри, як:, <tr class='grid_2'><td></td><tr>оскільки bootstrap базується на 12-стовпчиковій реагуючій сітці, вам потрібно буде застосувати grid_6до кожного рядка, припускаючи, що ви хочете 100% ширини - ви зможете знайти всю цю інформацію в API початкового завантаження
Олексій,

Відповіді:


152

Bootstrap 4.0

Будьте в курсі всіх змін міграції з Bootstrap 3 на 4. У таблиці тепер потрібно ввімкнути поле flex, додавши клас d-flex, і відпустіть, xsщоб bootstrap автоматично визначав область перегляду.

<div class="container-fluid">
    <table id="productSizes" class="table">
        <thead>
            <tr class="d-flex">
                <th class="col-1">Size</th>
                <th class="col-3">Bust</th>
                <th class="col-3">Waist</th>
                <th class="col-5">Hips</th>
            </tr>
        </thead>
        <tbody>
            <tr class="d-flex">
                <td class="col-1">6</td>
                <td class="col-3">79 - 81</td>
                <td class="col-3">61 - 63</td>
                <td class="col-5">89 - 91</td>
            </tr>
            <tr class="d-flex">
                <td class="col-1">8</td>
                <td class="col-3">84 - 86</td>
                <td class="col-3">66 - 68</td>
                <td class="col-5">94 - 96</td>
            </tr>
        </tbody>
    </table>

завантажувальний

Бутстрап 3.2

Ширина стовпця таблиці використовує той самий макет, що і сітки ; використання col-[viewport]-[size]. Пам'ятайте, що розміри колонок повинні складати 12; 1 + 3 + 3 + 5 = 12у цьому прикладі.

        <thead>
            <tr>
                <th class="col-xs-1">Size</th>
                <th class="col-xs-3">Bust</th>
                <th class="col-xs-3">Waist</th>
                <th class="col-xs-5">Hips</th>
            </tr>
        </thead>

Не забувайте встановлювати <th>елементи, а не <td>елементи, щоб він встановлював весь стовпець. Ось робочий BOOTPLY .

Дякуємо @Dan за нагадування, що я завжди повинен спочатку працювати на мобільному режимі ( col-xs-*).


1
@ user3362232 виправлення зараз; дякую за коментар; я наголошував на ситуації з різними розмірами колонами. я погуглив математику, щоб переконатись цього разу.
Йорданія. JD

1
Без сумніву, зрозумів, і, можливо, я це пропустив ... Я просто говорив про це, оскільки я вважаю, що за замовчуванням має бути, col-xs-..оскільки це завжди буде чуйним і успадковується більшими екранами. Тоді col-lg-..як працює лише на великих екранах.
Ден

2
Що робити, якщо у мене немає <th>елемента в таблиці?
mrudult

2
Щойно перевірив це за допомогою Bootstrap 4, і він не працює в Chrome та Opera.
JFloresI

1
@JFloresI, поточна відповідь - 3.2, найближчим часом оновиться розділом v4.
Йорданія. JD

32

Ви можете використовувати вбудовані стилі та визначити ширину <th>тегу. Зробіть так, щоб сума ширини = 100%.

    <tr>
        <th style="width:10%">Size</th>
        <th style="width:30%">Bust</th>
        <th style="width:50%">Waist</th>
        <th style="width:10%">Hips</th>
    </tr>

Демонстраційне завантаження

Зазвичай використання вбудованих стилів не є ідеальним, однак це забезпечує гнучкість, оскільки ви можете отримати дуже конкретні та детальні з точною шириною.


2
Працює дуже добре, якщо вам потрібно переконатися, що стовпці мають однакову ширину або якусь пропорційну ширину. Також здається, що ширину у відсотках не потрібно додавати до 100%, тому також легко працює для динамічних таблиць (принаймні для Chrome)
kashiraja

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.