Так что это убивает меня.
Я просмотрел множество форумов, но я не могу найти никаких решений для работы.
По сути, у меня есть сетка плавающих элементов, каждый из которых имеет миниатюру изображения, которое при наведении курсора имеет наложение и текстовое описание того, что содержит эта галерея (это типичный сайт-фолио).
Обычно у меня просто фиксированный макет с полем наложения того же размера, что и каждое изображение, и текстовым контейнером той же ширины, который включается и выключается при наведении курсора, и это нормально. НО - это моя первая адаптивная версия сайта и я понятия не имею, как сделать так, чтобы размер оверлея и текста соответствовал размерам их родителя.
Я попытался обернуть их все в div, но дочерние элементы, похоже, все равно игнорируют размеры родителей - предположительно, потому, что они плавающие.
Я использую галерею fancybox, рассматриваемое миниатюрное изображение помечено комментарием, но в остальном это работает отлично.
Есть ли способ указать одному div, чтобы он соответствовал ширине другого отзывчивого img? Любая помощь приветствуется.
Вот мой html
<div class="flex_one">
<div class="blackbox"><!--black low opacity box - appears on hover--></div>
<div class="textcontainer"><h2>ART</h2></div>
<a class="fancybox-thumb" rel="gallery2" href="image1.jpg"><!--gallery image 1-->
<img class="icon-image" src="thumb.jpg" alt="main icon" /><!--This is the thumbnail image on page-->
</a>
<a class="fancybox-thumb" rel="gallery2" href="image2.jpg"><!--gallery image 2-->
</a>
Это мой CSS
.flex_one {
width:28%;
height:auto;
float:left;
background-color:#000;
overflow:hidden;
margin-left:4%;
margin-top:4%;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.icon-image {
width:100%;
height:auto;
}
.blackbox {
height:???;
width:??;
overflow:auto;
opacity:0;
background-color:#000;
position: absolute;
pointer-events:none;
}
.textcontainer {
width:??;
margin-top:0px;
height: 20px;
background-color:rgba(0,0,0,0);
pointer-events:none;
position:absolute;
background-color:transparent;
}
.textcontainer h2{
text-decoration: none;
font-size: 13px;
font-family: 'Raleway', sans-serif; text-transform: uppercase;
color:#FFF;
z-index:80000;
opacity:0;
transform:scale(0);
}
.flex_one:hover > .textcontainer h2 {
transform:scale(1);
opacity:1;
}
.flex_one:hover > .blackbox {
opacity:.7;
}