我正在尝试使用Bootstrap-4.1.3创建一个在底部具有轮播指示器的轮播滑块。问题是轮播指示器是不可见的,但是当您单击它们时它们确实起作用。
我已经尝试过z-index和指示器的背景颜色,但是它们似乎不起作用。
这是我的代码:
.carousel-indicators {
z-index: 3;
#slide-buttons {
background-color: #999 !important;
background-color: rgba(70, 70, 70, .25) !important;
}
.active {
background-color: #444 !important;
}
}
<div class="carousel slide col-9 mx-auto pt-5 position-relative" data-ride="carousel" id="slides">
<!--Carousel Content-->
<div class="carousel-content carousel-inner" role="listbox">
<div class="slide-1 col-12 carousel-item active" id="slide1">
<h5>Example</h5>
</div>
<div class="slide-2 col-12 carousel-item" id="slide2">
<h5>Example</h5>
</div>
<div class="slide-3 col-12 carousel-item" id="slide3">
<h5>Example</h5>
</div>
</div>
<!-- Carousel Indicators -->
<ul class="carousel-indicators mt-5 pt-5 ">
<li data-target="#slides" id="slides-buttons" data-slide-to="0" class="active"></li>
<li data-target="#slides" id="slides-buttons" data-slide-to="1" class=" "></li>
<li data-target="#slides" id="slides-buttons" data-slide-to="2" class=" "></li>
</ul>
</div>
答案 0 :(得分:0)
您的代码CSS ID中有一个typepo错误。 'slide s -按钮'和'#slide-buttons
答案 1 :(得分:0)
您不应在页面上多次使用相同的ID。尝试改用此解决方案:
.carousel .carousel-indicators li {
background-color: red;
}
.carousel .carousel-indicators li.active {
background-color: blue;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/js/bootstrap.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet"/>
<div id="carouselExampleIndicators" class="carousel slide" data-ride="carousel">
<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>
<div class="carousel-inner">
<div class="carousel-item active">
<img class="d-block w-100" src="https://cdn.pixabay.com/photo/2016/06/18/17/42/image-1465348_1280.jpg" alt="First slide">
</div>
<div class="carousel-item">
<img class="d-block w-100" src="https://cdn.pixabay.com/photo/2016/06/18/17/42/image-1465348_1280.jpg" alt="Second slide">
</div>
<div class="carousel-item">
<img class="d-block w-100" src="https://cdn.pixabay.com/photo/2016/06/18/17/42/image-1465348_1280.jpg" alt="Third slide">
</div>
</div>
<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>
</div>
答案 2 :(得分:0)
基于 Cristiano Soares 的解决方案,我还添加了一些进一步的建议。
确保主要轮播组件包装器将指标设置为活动;
<Carousel indicators={true} .... <Item><ProjectImg><Caption> ... >
我还添加了进一步的样式,因为一旦启用,我仍然看不到指示器;
.carousel-indicators li {
background-color: red;
height: 5px;
width: 20px;
z-index: 5 !important;
margin: 0 5px;
cursor: pointer;
}
.carousel-indicators li.active {
background-color: blue;
height: 5px;
width: 20px;
z-index: 5 !important;
padding: 0 5px;
cursor: pointer;
}