Это потому, что ваши стрелки обрабатываются как индикаторы, так как они находятся внутри div с классом carousel-indicators
. Вместо этого они должны жить вне этого div и иметь свои собственные классы, такие как carousel-control-prev
и carousel-control-next
.
. Левая стрелка обрабатывается как индекс 0 для счетчика нумерации страниц вместо числа 1
, Итак, bootstrap видит 4 элемента, которые он видит как узлы нумерации страниц [left arrow, 1, 2, 3, right arrow]
, вместо того, чтобы просто иметь [1, 2, 3]
.
Итак, что-то вроде этого будет работать:
<ol class="carousel-indicators">
<li data-target="#carouselExampleIndicators" data-slide-to="0" class="active"></li>
<li data-target="#carouselExampleIndicators" data-slide-to="1"></li>
<li data-target="#carouselExampleIndicators" data-slide-to="2"></li>
</ol>
<a class="carousel-control-prev" href="#carouselExampleIndicators" 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="#carouselExampleIndicators" role="button" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
В документах Bootstrap есть более подробный ответ на этот вопрос. Вот ссылка на документы .