CasualKyle
CasualKyle

Reputation: 443

Nested tabs in a pill tab panel not working in Bootstrap

I'm having trouble getting tabs inside of a vertical pill tab panel to work correctly in Bootstrap 4.

Here's a minimal code example:

<html>
<head>
    <link href="bootstrap.min.css" rel="stylesheet">
</head>
<body>
    <script src="popper.min.js"></script>
    <script src="jquery-3.2.1.min.js"></script>
    <script src="bootstrap.min.js"></script>

    <div class="row">
        <div class="col-2">
            <div class="nav flex-column nav-pills" id="v-pills-tab" role="tablist">
                <a class="nav-link active" data-toggle="pill" href="#v-pills-1" role="tab">Pill 1</a>
                <a class="nav-link" data-toggle="pill" href="#v-pills-2" role="tab">Pill 2</a>
                <a class="nav-link" data-toggle="pill" href="#v-pills-3" role="tab">Pill 3</a>
            </div>
        </div>
        <div class="col-10">
            <div class="tab-content" id="v-pills-tabContent">
                <div class="tab-pane fade active show" id="v-pills-1" role="tabpanel">
                    Pill 1 content

                    <!-- tabs
                    <ul class="nav nav-tabs nav-fill" role="tablist">
                        <li class="nav-item">
                            <a class="nav-link active" data-toggle="tab" href="#tabs-1" role="tab">Tab 1</a>
                        </li>
                        <li class="nav-item">
                            <a class="nav-link" data-toggle="tab" href="#tabs-2" role="tab">Tab 2</a>
                        </li>
                        <li class="nav-item">
                            <a class="nav-link" data-toggle="tab" href="#tabs-3" role="tab">Tab 3</a>
                        </li>
                    </ul>

                    <div class="tab-content">
                        <div class="tab-pane active show" id="tabs-1" role="tabpanel">Tab 1 content</div>
                        <div class="tab-pane" id="tabs-2" role="tabpanel">Tab 2 content</div>
                        <div class="tab-pane" id="tabs-3" role="tabpanel">Tab 3 content</div>
                    </div>
                    -->

                </div>
                <div class="tab-pane fade" id="v-pills-2" role="tabpanel">Pill 2 content</div>
                <div class="tab-pane fade" id="v-pills-3" role="tabpanel">Pill 3 content</div>
            </div>
        </div>
    </div>
</body>
</html>

The webpage functions correctly, that is the vertical pills work as expected. Once you uncomment the section that gives the first vertical pill a nested tab, the pills do not function correctly. Clicking on Pill 2 and then Pill 3 will results in the content for both pills to be shown.

Why doesn't this work and how can I fix it?

Upvotes: 0

Views: 1173

Answers (1)

Serhii Berg
Serhii Berg

Reputation: 11

This is a bug in version 4.0.0-beta. It is fixed in version 4.0.0-beta.2:

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/js/bootstrap.min.js"></script>

Upvotes: 1

Related Questions