如何使Bootstrap轮播字幕垂直居中?
我有一个自举轮播,并且我正在尝试为该轮播创建标题,该标题始终垂直居中并稍微向左定位。我有用于水平定位的css。但是当我尝试垂直定位时,字幕不会停留在原处。如何使.carousel字幕始终保持垂直居中,并稍微向左对齐?
HTML:
<!-- start JumboCarousel --> <div id="jumboCarousel" class="carousel slide" data-ride="carousel">
<!-- Indicators -->
<ol class="carousel-indicators hidden-xs">
<li data-target="#jumboCarousel" data-slide-to="0" class="active"></li>
<li data-target="#jumboCarousel" data-slide-to="1"></li>
<li data-target="#jumboCarousel" data-slide-to="2"></li>
<li data-target="#jumboCarousel" data-slide-to="3"></li>
</ol><!-- end carousel-indicators -->
<!-- Wrapper for Slides -->
<div class="carousel-inner" role="listbox">
<div class="item active" id="slide1">
<a href="#"><img src="http://placehold.it/1920x720&text=Slide+1" alt="Slide 1"></a>
<div class="carousel-caption">
<h1>Check Out this Moose</h1>
<p class="lead">This text is super engaging and makes you want to click the button.</p>
<a href="#" class="btn btn-lg btn-primary">Learn More</a>
</div><!-- end carousel-caption -->
</div><!-- end slide1 -->
<div class="item" id="slide2">
<img src="http://placehold.it/1920x720&text=Slide+2" alt="Slide 2">
<div class="carousel-caption">
<h1>#Slide Title</h1>
<p class="lead">This text is super engaging and makes you want to click the button.</p>
<a href="#" class="btn btn-lg btn-primary">Learn More</a>
</div><!-- end carousel-caption -->
</div><!-- end slide2 -->
<div class="item" id="slide3">
<img src="http://placehold.it/1920x720&text=Slide+3" alt="Slide 3">
<div class="carousel-caption">
<h1>#Slide Title</h1>
<p class="lead">This text is super engaging and makes you want to click the button.</p>
<a href="#" class="btn btn-lg btn-primary">Learn More</a>
</div><!-- end carousel-caption -->
</div><!-- end slide3 -->
<div class="item" id="slide4">
<img src="http://placehold.it/1920x720&text=Slide+4" alt="Slide 4">
<div class="carousel-caption">
<h1>#Slide Title</h1>
<p class="lead">This text is super engaging and makes you want to click the button.</p>
<button type="button" href="#" class="btn btn-lg btn-primary">Learn More</button>
</div><!-- end carousel-caption -->
</div><!-- end slide4 -->
</div><!-- end carousel-inner -->
</div><!-- end jumboCarousel -->
CSS:
#jumboCarousel { margin-top: 70px;
min-height: 300px;
min-width: 100%;
}
#jumboCarousel img {
min-height: 300px;
min-width: 100%;
}
#jumboCarousel > .carousel-indicators > li {
border-radius: 0px;
min-width: 25px;
background-color: #9d9d9d;
border: 1px solid black;
margin-right: 10px;;
margin-left: 10px;;
}
#jumboCarousel > .carousel-indicators > .active {
background-color: orange;
}
#jumboCarousel .carousel-caption {
color: black;
right: 58%;
text-align: center;
max-width: 500px;
left: auto;
top: auto;
}
为了使字幕垂直对齐,我所做的任何事情都随着屏幕尺寸减小,字幕被从轮播的顶部推出。.谢谢您的帮助。
回答:
您可以使用translateY
CSS属性的功能transform
垂直对齐元素。浏览器支持相当不错,包括IE9。因此,只需将以下内容添加到您的.carousel-caption
CSS中即可。
top: 50%;transform: translateY(-50%);
现在,您需要摆脱bottom
默认引导CSS添加的额外空间。将以下内容也添加到您的.carousel-caption
CSS中。
bottom: initial;
最后但并非最不重要的一点是,在这种情况下.item
,为父元素提供以下CSS,以防止将其放置在半像素上时出现模糊的元素。
-webkit-transform-style: preserve-3d;-moz-transform-style: preserve-3d;
transform-style: preserve-3d;
以上是 如何使Bootstrap轮播字幕垂直居中? 的全部内容, 来源链接: utcz.com/qa/411667.html