Бутстрап 3 Наложение надписи на CSS-изображение
Я использую bootstrap и имею проблему для наложения надписи над изображением, div caption просто не может быть помещен в поле, как показано ниже:
![enter image description here]()
HTML:
<div class="col-sm-4">
<a href="#">
<img src="images/upload/projects/21/wolf.jpg" class="img-responsive" alt="" />
<div class="desc">
<p class="desc_content">The pack, the basic unit of wolf social life.</p>
</div>
</a>
</div>
<div class="col-sm-4">
<a href="#">
<img src="images/upload/projects/21/cake.png" class="img-responsive" alt="">
<div class="desc">
<p class="desc_content">The pack, the basic unit of wolf social life.</p>
</div>
</a>
</div>
CSS
div.desc{
position: absolute;
bottom: 0px;
width: 100%;
background-color: #000;
color: #fff;
opacity: 0.5;
filter: alpha(opacity=50);
}
РЕШЕНИЕ:
Спасибо @himanshu, чтобы решить проблему.
div.desc{
background-color: #000;
bottom: 0;
color: #fff;
left: 0;
opacity: 0.5;
position: absolute;
width: 100%;
}
.fix{
width: 100%;
padding: 0px;
}
Ответы
Ответ 1
Я думаю, что проблема заключается в размещении, а не наложениях, div.desc
является абсолютным, а изображение - его родным братом. Поэтому наложение не будет следовать за изображением, за которым будет следовать только тег привязки или ваш div.wrapper
.
Из того, что я вижу, является то, что на изображении или дополнении есть маржа на изображении или дополнении.
Лучшее решение - разместить desc
и изображение в другом div
со 100% шириной с добавлением 0.
<div class="col-sm-4 wrapper">
<a href="#">
<div class="fix">
<img src="images/upload/projects/21/wolf.jpg" class="img-responsive" alt="" />
<div class="desc">
<p class="desc_content">The pack, the basic unit of wolf social life.</p>
</div></div>
</a>
</div>
CSS
.fix{width:100%; padding:0px;}
Ответ 2
Попробуйте это
<div class="wrapper">
<div class="">
<img src="images/upload/projects/21/wolf.jpg" class="img-responsive" alt="" >
</div>
<div class="desc_content" style="">The pack, the basic unit of wolf social life.</div>
</div>
<div class="wrapper">
<div class="">
<img src="images/upload/projects/21/wolf.jpg" class="img-responsive" alt="" >
</div>
<div class="desc_content" style="">The pack, the basic unit of wolf social life.</div>
</div>
CSS
div.desc_content {
background-color: #000;
color: #FFF;
font: bold 11px verdana;
padding-left: 10px;
padding-top: 7px;
height: 23px; opacity: 0.7;
position: relative;
top: -30px;
}
div.wrapper{
float: left;
position: relative;
margin: 10px;
}
Ответ 3
Для других, пытающихся наложить надпись на изображение в Bootstrap, рассмотрите использование подписи карусели.
Смотрите здесь: http://www.w3schools.com/bootstrap/bootstrap_carousel.asp
<div class="carousel-caption">
<h3>Chania</h3>
<p>The atmosphere in Chania has a touch of Florence and Venice.</p>
</div>
Ответ 4
Используйте эти атрибуты для класса div.desc
div.desc{
position: absolute;
bottom: 0;
background-color: #000;
color: #fff;
opacity: 0.5;
left:0; /** new **/
right:0; /** new **/
filter: alpha(opacity=50);
}