У меня странная проблема, у меня есть DIV завернуть другой DIV, структура, как показано ниже:Flexbox ДИВ простирания отличается в Chrome и Firefox
<div class="col-md-4 view small_img">
<div class="blue"></div>
</div>
Я хочу, чтобы, когда я наведите курсор мыши на div.small_img
черный блок будет охватывать на синем поэтому я установил его на :after
и использовал flexbox
и позиционировал.
Все выглядит отлично в Chrome, но когда я переключаюсь на Firefox, я не знаю, почему этот фон не накрыл мой синий блок, а только показал небольшую площадь рядом с ним.
.small_img {
position: relative;
overflow: hidden;
display: -webkit-box;
/* OLD - iOS 6-, Safari 3.1-6 */
display: -moz-box;
/* OLD - Firefox 19- (buggy but mostly works) */
display: -ms-flexbox;
/* TWEENER - IE 10 */
display: -webkit-flex;
display: flex;
justify-content: center;
align-items: center;
}
.small_img:hover:before,
.small_img:hover:after {
content: '';
position: absolute;
}
.small_img:hover:before {
content: 'view';
border: 2px solid hsl(0, 0%, 100%);
border-radius: 10px;
line-height: 2em;
padding: 5px;
color: white;
z-index: 5;
}
.small_img:hover:after {
width: 92.5%;
height: 92.5%;
background: hsla(0, 0%, 0%, 0.85);
}
.small_img img {
height: 100%;
}
.blue {
background: hsl(220, 100%, 60%);
width: 300px;
height: 300px;
border: 1px solid black;
}
<div id="page-wrapper">
<div class="row">
<h1 class="page-header center">flexbox hover cover effect</h1>
<h4 class="center">I want black block cover my blue block</h4>
<!-- main Content -->
<div class="row col-md-offset-1 col-md-10">
<div class="col-md-4 view small_img">
<div class="blue"></div>
</div>
<div class="col-md-4 view small_img">
<div class="blue"></div>
</div>
<div class="col-md-4 view small_img">
<div class="blue"></div>
</div>
</div>
</div>
</div>
Кто-нибудь знает, что случилось?
Включая мой jsfiddle тоже.
@Anami дайте мне знать ваши мысли по этому поводу, спасибо! – kukkuz
Спасибо за вашу помощь, но я просто хочу знать, почему я не могу просто установить Flexbox и оправдывать контент и выравнивать элементы в середине моего черного блока? Я думал, что оба атрибута уже имеют влияние на выравнивание, пожалуйста, можете ли вы дать какое-то объяснение?/ и Merry X'mas:> – Anami
Это * *, потому что Firefox не реализовал обновленные спецификации для * абсолютно позиционированного * дочернего элемента flexbox - см. это для справки: http://stackoverflow.com/questions/39069320/absolute-positioning-interfering-with-flexbox-positioning-in-firefox – kukkuz