Bootstrap 轮播内容未显示在箭头之间

r6hnlfcb  于 2023-06-27  发布在  Bootstrap
关注(0)|答案(2)|浏览(122)

我在尝试向项目中添加carousel元素时遇到了这个问题。我的代码的结果是一个工作的carousel;箭头工作得很好,如果我添加一个自动播放选项,它也工作。然而,内容本身并不在箭头之间。
首先,我在bootstrap的header部分包含了以下代码行,这些代码是我通过npm下载的:

<link rel="stylesheet" href="./src/main.css">
    <script src="./node_modules/@popperjs/core/dist/umd/popper.min.js"></script>
    <script src="./node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"></script>

然后,我为carousel添加了与bootstrap文档中完全相同的元素:

<div id="projectsCarousel" class="carousel slide carousel-fade carousel-dark">
                <div class="carousel-inner">
                    <div class="carousel-item active"><h3>hello</h3></div>
                    <div class="carousel-item">2</div>
                    <div class="carousel-item">3</div>
                    <div class="carousel-item">4</div>
                    <div class="carousel-item">5</div>
                </div>
                <button class="carousel-control-prev" type="button" data-bs-target="#projectsCarousel" data-bs-slide="prev">
                    <span class="carousel-control-prev-icon"></span>
                </button>
                <button class="carousel-control-next" type="button" data-bs-target="#projectsCarousel" data-bs-slide="next">
                    <span class="carousel-control-next-icon"></span>
                </button>
            </div>

如前所述,内容本身不在箭头之间。

如果有人能帮我弄清楚为什么会发生这种情况,我会非常感谢他们!

<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" integrity="sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65" crossorigin="anonymous">

<div id="projectsCarousel" class="carousel slide carousel-fade carousel-dark">
  <div class="carousel-inner">
    <div class="carousel-item active">
      <h3>hello</h3>
    </div>
    
    <div class="carousel-item">2</div>
    <div class="carousel-item">3</div>
    <div class="carousel-item">4</div>
    <div class="carousel-item">5</div>
  </div>
  
  <button class="carousel-control-prev" type="button" data-bs-target="#projectsCarousel" data-bs-slide="prev">
      <span class="carousel-control-prev-icon"></span>
  </button>
  
  <button class="carousel-control-next" type="button" data-bs-target="#projectsCarousel" data-bs-slide="next">
      <span class="carousel-control-next-icon"></span>
  </button>
</div>

<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-kenU1KFdBIe4zVF0s0G1M5b4hcpxyD9F7jL+jjXkk+Q2h455rYXK/7HAuoJl+0I4" crossorigin="anonymous"></script>
carvr3hs

carvr3hs1#

内容不应该在箭头之间。如果您使用浏览器的检查器查看演示,您将看到控件位于内容上方。内容紧紧地坐在容器的左边缘,不管那是什么。控制按钮也是紧向左(定位绝对),但它有一些填充,使它看起来向内移位。
要么对内容应用填充,要么使用CSS来移动控件。translateX()可以很好地工作。参见Carousel Controls Outside of Carousel

jfewjypa

jfewjypa2#

我认为carousel-inner采用全宽度,并将项目向左对齐,因此使carousel-inner display-flex(d-flex),justify-content-center,align-item-center。如果没有单词,请尝试将其添加到carousel-item中。

相关问题