【问题标题】:Bootstrap Image carousel text/indicators missing on small screen小屏幕上缺少引导图像轮播文本/指示符
【发布时间】:2017-09-27 10:55:34
【问题描述】:

我有一个在大屏幕上很好的 Bootstrap 轮播,但如果我减小屏幕尺寸,指示器会移动到图像下方,我会完全丢失标题文本。我肯定错过了什么。我希望在图像上显示指示器和文本,就像使用更大的屏幕一样。任何帮助表示赞赏...

<div class="container" id="index">
    <div id="carousel-example-generic" class="carousel slide" data-ride="carousel">

   <!-- Indicators -->
  <ol class="carousel-indicators">
    <li data-target="#carousel-example-generic" data-slide-to="0" class="active"></li>
    <li data-target="#carousel-example-generic" data-slide-to="1"></li>
    <li data-target="#carousel-example-generic" data-slide-to="2"></li>
  </ol>

  <!-- Wrapper for slides -->
  <div class="carousel-inner" role="listbox">
    <div class="item active">
    <div class="carousel-caption">
        <h3>Example headline</h3>
        <p>Example description</p>
      </div>
      <img src="img/lesson8-portfolioheroimage2.jpg" alt="...">

    </div>


    <div class="item">
      <img src="img/portfolioheroimage.jpg" alt="...">
      <div class="carousel-caption">
        <h3>Example headline</h3>
        <p>Example description</p>
      </div>
    </div>
    <div class="item">
      <img src="img/portfolioheroimage3.jpg" alt="...">
      <div class="carousel-caption">
        <h3>Example headline</h3>
        <p>Example description</p>
      </div>
    </div>
  </div>

  <!-- Controls -->
  <a class="left carousel-control" href="#carousel-example-generic" role="button" data-slide="prev">
    <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
    <span class="sr-only">Previous</span>
  </a>
  <a class="right carousel-control" href="#carousel-example-generic" role="button" data-slide="next">
    <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
    <span class="sr-only">Next</span>
  </a>
</div>

【问题讨论】:

  • 这是我的 CSS 如果有帮助的话 .carousel { margin-left: -15px;边距右:-15px; } .carousel-inner{ 高度:400px; } .carousel-caption { padding-bottom: 450px; } .carousel-control { 边距:200px 0; }
  • bootsnipp.com/snippets/featured/simple-responsive-carousel 这是 Bootstrap 响应式轮播的示例。你有 CSS 和 HTML 代码。

标签: twitter-bootstrap carousel


【解决方案1】:

这是因为当您调整屏幕大小时,轮播中的图像会根据其纵横比调整大小。

删除.carousel-control { margin: 200px 0; }.carousel-caption 而不是padding-bottom% 中给出bottom 并根据您在media queries 中的要求进行调整。

同时添加css

.carousel-inner .item{
    height: 100%;
}
.carousel-inner .item img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}

.carousel { margin-left: -15px; margin-right: -15px; }
.carousel-inner{ height: 400px; }
.carousel-caption { bottom: 30% !important; } 
.carousel-inner .item{
    height: 100%;
}
.carousel-inner .item img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}
<!DOCTYPE html>
<html lang="en">
<head>
  <title>Bootstrap Example</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
  
</head>
<body>

<div class="container" id="index">
    <div id="carousel-example-generic" class="carousel slide" data-ride="carousel">

   <!-- Indicators -->
  <ol class="carousel-indicators">
    <li data-target="#carousel-example-generic" data-slide-to="0" class="active"></li>
    <li data-target="#carousel-example-generic" data-slide-to="1"></li>
    <li data-target="#carousel-example-generic" data-slide-to="2"></li>
  </ol>

  <!-- Wrapper for slides -->
  <div class="carousel-inner" role="listbox">
    <div class="item active">
    <div class="carousel-caption">
        <h3>Example headline</h3>
        <p>Example description</p>
      </div>
      <img src="http://placehold.it/200x200" alt="...">

    </div>


    <div class="item">
      <img src="http://placehold.it/200x200" alt="...">
      <div class="carousel-caption">
        <h3>Example headline</h3>
        <p>Example description</p>
      </div>
    </div>
    <div class="item">
      <img src="http://placehold.it/200x200" alt="...">
      <div class="carousel-caption">
        <h3>Example headline</h3>
        <p>Example description</p>
      </div>
    </div>
  </div>

  <!-- Controls -->
  <a class="left carousel-control" href="#carousel-example-generic" role="button" data-slide="prev">
    <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
    <span class="sr-only">Previous</span>
  </a>
  <a class="right carousel-control" href="#carousel-example-generic" role="button" data-slide="next">
    <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
    <span class="sr-only">Next</span>
  </a>
</div>
</body>
</html>

【讨论】:

  • 谢谢!似乎工作完美。我自己永远不会得到那个!干杯。
  • 实际上,我可以问一下....这会使大屏幕上的图像填满页面,而我希望高度更小。尝试更改 CSS 但没有任何反应,有什么想法吗?
  • 对不起,我不清楚你的问题。表示您希望图像具有 100% 的屏幕宽度和限制高度?
  • 对不起。所以宽度是我想要的,(填充容器)但我想调整轮播中图像的高度。这可以通过 CSS 实现还是我应该只裁剪图像本身?我试图改变 .carousel-inner .item img { height: 100% !important; } 到不同的百分比,但它不会影响图像的高度。谢谢。
  • 可以通过调整.carousel-inner{ height: 400px; }调整图片高度
【解决方案2】:

您应该在 CSS 文件中调整图像高度,而不是更改轮播项目的大小。更改轮播项目将显示标题直到屏幕宽度的 80%,但小于它会消失。

img {
max-height: 600px;
}

【讨论】:

    猜你喜欢
    • 2017-07-03
    • 2016-10-31
    • 2019-06-21
    • 1970-01-01
    • 2019-06-27
    • 2020-12-18
    • 1970-01-01
    • 2016-11-19
    • 2020-10-17
    相关资源
    最近更新 更多