bootstrap 3を使用してスライドショー画像を表示するこのhtmlがあります。
<div class="col-sm-8">
<div id="myCarousel" class="carousel slide" data-ride="carousel">
<!-- Indicators -->
<ol class="carousel-indicators">
<li data-target="#myCarousel" data-slide-to="0" class="active"></li>
<li data-target="#myCarousel" data-slide-to="1"></li>
<li data-target="#myCarousel" data-slide-to="2"></li>
<li data-target="#myCarousel" data-slide-to="3"></li>
<li data-target="#myCarousel" data-slide-to="4"></li>
<li data-target="#myCarousel" data-slide-to="5"></li>
</ol>
<!-- Wrapper for slides -->
<div class="carousel-inner" role="listbox">
{% for p in posts %}
{% if forloop.counter == 1 %}
<div class="item active">
{% else %}
<div class="item">
{% endif %}
{% if p.headimage %}
<img src="{{ p.headimage.url }}" alt="Image" width="460" height="345">
{% endif %}
<div class="carousel-caption">
<h3>{{ p.title }}</h3>
<p>{{ p.teaser }}</p>
</div>
</div>
{% endfor %}
</div>
<!-- Left and right controls -->
<a class="left carousel-control" href="#myCarousel" 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="#myCarousel" role="button" data-slide="next">
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
</div>
</div>
キャプションを画像の上ではなく、画像の下に表示したい。
私はhtmlとcssを操作しようとしましたが、これを達成できませんでした。
更新:ネイティブブートストラップとは別に、私はこれらのカスタムcssディレクティブを試しました(助けにはなりませんでした):
.carousel-inner { padding-bottom:95px; }
.carousel-caption { bottom:-95px; }
まず、キャプション要素の位置をabsolute
からrelative
に変更します。
.carousel-caption {
position: relative;
left: auto;
right: auto;
}
同じような問題がありましたが、大きな画面の画像の上にキャプションをオーバーレイし、小さいサイズの画像の下にキャプションをオーバーレイする必要がありました。 .carousel-innerのオーバーフローを表示しました。これは、レスポンシブ要素の一部であるかどうかに関係なく、カルーセル画像自体の境界の外側にキャプションテキストを配置するための便利な代替方法になると思います。
編集:画像とキャプションの高さに合わせて、カルーセル(「内部」ではなく、含まれるdiv)の高さも変更する必要があります。
.carousel-inner{
overflow: visible;
}