我希望我的轮播图像位于中心(水平),默认情况下不是这样。我在this topic处遵循解决方案。
然而,使用此解决方案,当轮播调整大小并小于图像时,图像将被裁剪而不是默认缩放。
我如何将图像居中,但要将其拉伸到旋转木马项目?
答案 0 :(得分:61)
现在(在Bootstrap 3和4上)它只是:
.carousel-inner img {
margin: auto;
}
答案 1 :(得分:33)
我假设你有不同大小的图像。我自己测试了这个,它就像你描述的那样工作(总是居中,图像宽度适当)
/*CSS*/
div.c-wrapper{
width: 80%; /* for example */
margin: auto;
}
.carousel-inner > .item > img,
.carousel-inner > .item > a > img{
width: 100%; /* use this, or not */
margin: auto;
}
<!--html-->
<div class="c-wrapper">
<div id="carousel-example-generic" class="carousel slide">
<!-- 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">
<div class="item active">
<img src="http://placehold.it/600x400">
<div class="carousel-caption">
hello
</div>
</div>
<div class="item">
<img src="http://placehold.it/500x400">
<div class="carousel-caption">
hello
</div>
</div>
<div class="item">
<img src="http://placehold.it/700x400">
<div class="carousel-caption">
hello
</div>
</div>
</div>
<!-- Controls -->
<a class="left carousel-control" href="#carousel-example-generic" data-slide="prev">
<span class="icon-prev"></span>
</a>
<a class="right carousel-control" href="#carousel-example-generic" data-slide="next">
<span class="icon-next"></span>
</a>
</div>
</div>
由于变化的高度,这会产生“跳跃”...要解决这个问题,请尝试以下方法:Select the tallest image of a list
或使用媒体查询设置您自己的固定高度。
答案 2 :(得分:4)
在Boostrap 4上,只需将mx-auto
添加到您的轮播图像类中。
<div class="carousel-item">
<img class="d-block mx-auto" src="http://placehold.it/600x400" />
</div>
根据需要与bootstrap carousel documentation的样本结合使用。
答案 3 :(得分:3)
添加此
.carousel .item img {
left: -9999px; /*important */
right: -9999px; /*important */
margin: 0 auto; /*important */
max-width: none; /*important */
min-width: 100%;
position: absolute;
}
当然其中一个父div需要有一个位置:相对,但我相信默认情况下会这样做。
请在此处查看:http://paginacrestinului.ro/
答案 4 :(得分:3)
为carousel html代码中的每个图像添加一个类,然后使用css apply margin: 0 auto
。
答案 5 :(得分:3)
spec/fixtures/test.json
这个简单的解决方案对我有用
答案 6 :(得分:1)
使用CMS时遇到的问题非常类似,但上述解决方案无法解决问题。我所做的解决方法是将以下内容放在适用的css中:
background-size: cover
并且出于放置目的,如果您使用bootstrap,我使用:
background-position: center center /* or whatever position you wanted */
答案 7 :(得分:1)
在bootstrap 3上使用它:
#carousel-example-generic{
margin:auto;
}
答案 8 :(得分:1)
对我来说,这项工作非常简单,只需添加属性align =“ center”。 在Bootstrap 4上进行了测试。
<!-- The slideshow -->
<div class="carousel-inner" align="center">
<div class="carousel-item active">
<img src="image1.jpg" alt="no image" height="550">
</div>
<div class="carousel-item">
<img src="image2.jpg" alt="no image" height="550">
</div>
<div class="carousel-item">
<img src="image3.png" alt="no image" height="550">
</div>
</div>
答案 9 :(得分:0)
尝试给旋转木马中的图像指定宽度%?
.item img {
width:100%;
}
答案 10 :(得分:0)
我已将<div class="carousel" id...>
放在另一个div中,并带有类容器(<div class="container"><div class="carousel" id="my-carousel">...</div></div>
)。这也解决了这个问题。
答案 11 :(得分:0)
在bootstrap v4中,我居中并使用
将轮播img填充到屏幕上<img class="d-block mx-auto" max-width="100%" max-height="100%">
非常确定这需要设置父元素的高度或宽度
html,body{height:100%;}
.carousel,.carousel-item,.active{height:100%;}
.carousel-inner{height:100%;}
答案 12 :(得分:0)
以上解决方案均不适用于我。可能还有其他样式冲突。
对我自己而言,以下工作有效,希望它可以对其他人有所帮助。我正在使用引导程序4。
.carousel-inner img {
display:block;
height: auto;
max-width: 100%;
}