Bootstrap 4.4.1 Поведение / ошибка при прокрутке аккордеона (?) - Chrome - PullRequest
4 голосов
/ 04 августа 2020

Я использую Bootstrap аккордеоны некоторое время, но только недавно эта проблема была замечена.

Если вы запустите приведенный ниже фрагмент (желательно на всю страницу), прокрутите вниз до аккордеона находится в поле зрения, затем переключите среднюю карту, чтобы открыть, страница прокручивается неестественно (вы поймете, что я имею в виду, когда увидите это).

Проблема возникает только при переключении карт ниже текущая активная карта.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Accordion Test</title>

    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
</head>

<body style="height: 200vh;">
    <div class="container-fluid text-center d-flex bg-light" style="height: 500px">
        <div class="row align-items-center mx-auto">
            <div class="col">
                <p class="my-auto mb-0">Container to push accordion down.</p>
            </div>
        </div>        
    </div>

    <div class="col-6 offset-3 mt-5">
        <div class="accordion" id="exampleAccordion">
            <div class="card">
                <div class="card-header bg-light" id="exampleAccordionHeadingOne">
                    <h2 class="mb-0">
                        <button class="btn btn-link btn-block text-capitalize" type="button" data-toggle="collapse" data-target="#exampleAccordionCollapseOne" aria-expanded="true" aria-controls="exampleAccordionCollapseOne">
                            Lorem ipsum dolor sit
                        </button>
                    </h2>
                </div>
                <div id="exampleAccordionCollapseOne" class="collapse show" aria-labelledby="exampleAccordionHeadingOne" data-parent="#exampleAccordion">
                    <div class="card-body">
                        <p class="mb-0">Lorem ipsum, dolor sit amet consectetur adipisicing elit. Vitae dicta odio, corrupti minus aliquam repellat unde, sapiente quo ea corporis aut est soluta ad eveniet molestiae magnam fugiat sequi nostrum blanditiis molestias ducimus! Eum iure eveniet magnam ipsam illum reiciendis. Eius itaque neque, vitae non, placeat deserunt id expedita aliquam, quaerat quo laudantium distinctio. Rerum neque laboriosam fugit quis aut, optio obcaecati nam soluta error enim fuga perferendis doloremque pariatur! Tempora est cupiditate nulla, tenetur accusantium corrupti, quia distinctio recusandae obcaecati, voluptatum explicabo et debitis dolorum blanditiis? Nostrum nam tenetur animi amet, recusandae, delectus at magnam porro deserunt facilis ipsam.</p>
                    </div>
                </div>
            </div>
            <div class="card">
                <div class="card-header bg-light" id="exampleAccordionHeadingTwo">
                    <h2 class="mb-0">
                        <button class="btn btn-link btn-block text-capitalize collapsed" type="button" data-toggle="collapse" data-target="#exampleAccordionCollapseTwo" aria-expanded="false" aria-controls="exampleAccordionCollapseTwo">
                            Lorem ipsum dolor sit
                        </button>
                    </h2>
                </div>
                <div id="exampleAccordionCollapseTwo" class="collapse" aria-labelledby="exampleAccordionHeadingTwo" data-parent="#exampleAccordion">
                    <div class="card-body">
                        <p class="mb-0">Lorem ipsum dolor sit, amet consectetur adipisicing elit. Quidem alias adipisci fugiat tempora enim libero. Dicta, eveniet repellat iusto quae sequi accusamus repellendus id ducimus enim quam iste ullam totam aspernatur eum saepe odit. Dolore culpa impedit cumque quaerat obcaecati commodi necessitatibus minus, sit suscipit dolorum corrupti atque eum expedita tenetur et sint voluptas beatae temporibus optio reiciendis asperiores libero veritatis exercitationem. Repudiandae itaque ullam hic, commodi sapiente in voluptate, maiores corrupti ipsa expedita delectus provident, aliquam eos deleniti! Minima neque vitae laudantium assumenda culpa error temporibus voluptatem enim a? Quae placeat omnis ratione culpa accusantium, incidunt eum aspernatur voluptates!</p>
                    </div>
                </div>
            </div>
            <div class="card">
                <div class="card-header bg-light" id="exampleAccordionHeadingThree">
                    <h2 class="mb-0">
                        <button class="btn btn-link btn-block text-capitalize collapsed" type="button" data-toggle="collapse" data-target="#exampleAccordionCollapseThree" aria-expanded="false" aria-controls="exampleAccordionCollapseThree">
                            Lorem ipsum dolor sit
                        </button>
                    </h2>
                </div>
                <div id="exampleAccordionCollapseThree" class="collapse" aria-labelledby="exampleAccordionHeadingThree" data-parent="#exampleAccordion">
                    <div class="card-body">
                        <p class="mb-0">Lorem ipsum dolor sit amet consectetur adipisicing elit. Ullam, ipsum voluptas nobis, soluta molestias repellat aut reiciendis id quae dolorum recusandae temporibus facilis voluptatem. Voluptates neque veniam consectetur itaque reiciendis fugiat sint dolorem perspiciatis, ex soluta culpa unde eum officia libero impedit quae nesciunt. Enim maiores temporibus ab commodi esse similique optio fuga error nulla dolore quaerat saepe libero ipsam neque doloribus aliquid iusto facere, doloremque sunt! Atque quasi dolorum consequatur. Maiores ipsum doloribus est! Quod, facilis. Voluptates dolores eaque excepturi labore assumenda sapiente, adipisci mollitia, autem et laboriosam ea, aspernatur aliquid quo officiis. Architecto ut minus magni animi consectetur.</p>
                    </div>
                </div>
            </div>
        </div>
    </div>

    <script src="https://code.jquery.com/jquery-3.4.1.slim.min.js" integrity="sha384-J6qa4849blE2+poT4WnyKhv5vZF5SrPo0iEjwBvKU7imGFAV0wwj1yYfoRSJoZ+n" crossorigin="anonymous"></script>
    <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js" integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6" crossorigin="anonymous"></script>   
</body>
</html>

Я считаю, что это проблема, появившаяся в недавнем обновлении Chrome, потому что ранее в этом году и даже в прошлом году созданные мной аккордеоны работали отлично (прокручиваются правильно ).

Любая помощь / предложения будут высоко оценены! :)

Gyazo gif, чтобы показать, что я имею в виду: https://i.gyazo.com/fc794405faa290ab42b3f71d339cd4cd.mp4

1 Ответ

1 голос
/ 05 августа 2020

Проблема, которую я описал выше, действительно возникла в обновлении Chrome и сообщалась здесь .

Дата публикации этого вопроса (4 августа 2020 г.), Bootstrap выпущена v4.5.1, и глюк прокрутки больше не присутствует.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...