Только текстовая карусель

Я не могу иметь карусель только с текстом без img. Текст, кажется, сталкивается с элементами управления. Каждый найденный мной пример использует <img>, Я пытался использовать d-flex класс, блок и даже carousel-caption, Пока ничего не получалось.

<div id="carouselContent" class="carousel slide" data-ride="carousel">
    <div class="carousel-inner" role="listbox">
        <div class="carousel-item active">
            <p>lorem ipsum (imagine longer text)</p>
        </div>
        <div class="carousel-item">
            <p>lorem ipsum (imagine longer text)</p>
        </div>
    </div>
    <a class="carousel-control-prev" href="#carouselContent" role="button" data-slide="prev">
        <span class="carousel-control-prev-icon" aria-hidden="true"></span>
        <span class="sr-only">Previous</span>
    </a>
    <a class="carousel-control-next" href="#carouselContent" role="button" data-slide="next">
        <span class="carousel-control-next-icon" aria-hidden="true"></span>
        <span class="sr-only">Next</span>
    </a>
</div>

4 ответа

Решение

Я думаю carousel-controls предназначены для наложения контента, будь то текст или изображения. Казалось бы, что text-center было бы хорошим вариантом для центрирования текста каждого элемента.

Однако, начиная с BS альфа 6, .carousel-item является display:flex; что ограничивает некоторые позиции, которые вы можете сделать с содержанием carousel-item, Для этого существует открытый вопрос: https://github.com/twbs/bootstrap/issues/21611

В качестве обходного пути вы можете использовать text-center и переопределить display:block для активной карусельной позиции:

 <div class="carousel-item text-center p-4">
       <p>lorem ipsum (imagine longer text)</p>
 </div>

.carousel-item.active {
    display:block;
}

Демо: http://www.codeply.com/go/OJHdvdXimm


Также см.: Вертикальный текст по центру в карусели Bootstrap

Я добавил px-5 везде (в вашем случае в p). Мне нужно было пространство вокруг, и я также добавил к нему класс, который дал ему поле 20 пикселей. Это сработало.

Попробуйте объект-контейнер

          <div id="carouselContent" class="carousel slide" data-ride="carousel">

        <div class="container">
            <div class="carousel-inner text-center text-white m-auto" role="listbox">
                <div class="carousel-item active text-center p-4">
                    <div class="user_text mb-3">
                        <p class="mbr-fonts-style display-7">
                            <strong>
                                Blah
                            </strong><br>
                        </p>
                    </div>

                </div>
                <div class="carousel-item text-center p-4">

                    <div class="user_text mb-3">
                        <p class="mbr-fonts-style display-7">
                            <strong>
                                Blah Blah

                            </strong><br>
                        </p>
                    </div>

                </div>
            </div>
        </div>
            <a class="carousel-control-prev" href="#carouselContent" role="button" data-slide="prev">
                <span class="carousel-control-prev-icon" aria-hidden="true"></span>
                <span class="sr-only">Previous</span>
            </a>
            <a class="carousel-control-next" href="#carouselContent" role="button" data-slide="next">
                <span class="carousel-control-next-icon" aria-hidden="true"></span>
                <span class="sr-only">Next</span>
            </a>
    </div>

Изменять:

      <div class="carousel-caption d-none d-md-block"></div>

К:

      <div class="carousel-caption"></div>

 .slider-wrap {
  background-color: #F0F0F0;
  padding-top: 5rem;
  padding-bottom: 8rem;
  margin-bottom: 5rem;
  text-align: center;
}

.carousel-indicators {
   margin-bottom: 0!important;
}

.carousel-text {
   margin: 1rem;
}

.carousel-caption {
   margin: auto!important;
   position: initial!important;
   padding-right: 8rem;
   padding-left: 8rem;
}
Другие вопросы по тегам