Slowwie
Slowwie

Reputation: 1246

Bootstrap 4 tables not fits full width with d-flex

With the new Bootstrap 4 it's not possible anymore to simply apply classes like col-md-2 to the or the tags of a table.

So the solution seems to use class="d-flex" in the parent :

<tr class="d-flex">

but when I do it my whole table don't fit anymore in the parent div. And I can not do anything against it.

enter image description here

Can somebody help me to get the clue?

Here is the code of the table:

<div class="card-body">
   <h3 class="col-12 mt-2">Lehrer</h3>
   <table class="table table-light">
       <tbody>
            <tr class="d-flex">
                <td class="col-md-1">Florian</td>
                <td class="col-md-2">Wassermair</td>
                <td class="col-md-4">Schulbuchbeauftragter</td>

                <td class="col-md-1">
                   <a class="btn btn-primary" href="/profile/show/4">
                      <i class="icon icon-eye"></i>
                   </a>
                </td>

                <td class="col-md-1">
                   <a class="btn btn-success" href="/personal/4/edit">
                       <i class="icon icon-edit"></i>
                   </a>
                </td>
           </tr>

           <tr class="d-flex">
                <td class="col-md-1">Bernadette</td>
                <td class="col-md-2">Mayr</td>
                <td class="col-md-4"></td>

                <td class="col-md-1">
                    <a class="btn btn-primary" href="/profile/show/3">
                        <i class="icon icon-eye"></i>
                    </a>
                </td>

                <td class="col-md-1">
                    <a class="btn btn-success" href="/personal/6/edit">
                        <i class="icon icon-edit"></i>
                    </a>
                </td>
           </tr>                                                                                         
      </tbody>
   </table>
</div>

Upvotes: 1

Views: 2797

Answers (1)

Carol Skelly
Carol Skelly

Reputation: 362700

If you want the table cells to fill the width, use 12 columns units...

<tr class="row mx-0">
    <td class="col-md-2">Bernadette</td>
    <td class="col-md-2">Mayr</td>
    <td class="col-md-6"></td>
    <td class="col-md-1">
        <a class="btn btn-primary" href="/profile/show/3">
            <i class="icon icon-eye"></i>
        </a>
    </td>
    <td class="col-md-1">
        <a class="btn btn-success" href="/personal/6/edit">
            <i class="icon icon-pencil"></i>
        </a>
    </td>
</tr>

Or, use ml-auto to push the columns to the right..

<tr class="row mx-0">
    <td class="col-md-2">Florian</td>
    <td class="col-md-2">Wassermair</td>
    <td class="col-md-4">Schulbuchbeauftragter</td>
    <td class="col-md-1 ml-auto">
        <a class="btn btn-primary" href="/profile/show/4">
            <i class="icon icon-eye"></i>
        </a>
    </td>
    <td class="col-md-1">
        <a class="btn btn-success" href="/personal/4/edit">
            <i class="icon icon-pencil"></i>
        </a>
    </td>
</tr>

https://www.codeply.com/go/xRodoKUKBf

Upvotes: 1

Related Questions