By
Xandr555
Добрый день. Размещено 2 блока по 3 изображения, отцентрировано flex, по плану при наведении курсора картинка затемняется, сверху появляется описание. Стили работают как задумано только в Chrome и Opera. В Сафари рамка не всплывает, текст не выравнивается. В IE 11 рамка всплывает, текст не выравнивается. Заранее благодарю.
<div class="wrapper">
<div class="demo-content">
<div class="part">
<figure class="img-box">
<img alt=img src=https://s3-us-west-2.amazonaws.com/s.cdpn.io/331810/sample54.jpg>
<figcaption><section class="imgone">По Вашему желанию электропроводку можно уложить в ПВХ-короб</section></figcaption>
</figure>
<figure class="img-box">
<img alt=img src=https://s3-us-west-2.amazonaws.com/s.cdpn.io/331810/sample73.jpg>
<figcaption><section class="imgone">Красиво, эстетично и надежно - наше кредо!</section></figcaption>
</figure>
<figure class="img-box">
<img alt=img src=https://s3-us-west-2.amazonaws.com/s.cdpn.io/331810/sample58.jpg>
<figcaption><section class="imgone">Такой вариант электропроводки рекомендуем, например, в подсобных постройках</section></figcaption>
</figure>
</div>
</div>
</div>
<div class="wrapper">
<div class="demo-content">
<div class="part">
<figure class="img-box">
<img alt=img src=https://s3-us-west-2.amazonaws.com/s.cdpn.io/331810/sample54.jpg>
<figcaption><section class="imgone">Вмонтированный в стену электросчетчик делает Вашу квартиру более объемной</section></figcaption>
</figure>
<figure class="img-box">
<img alt=img src=https://s3-us-west-2.amazonaws.com/s.cdpn.io/331810/sample73.jpg>
<figcaption><section class="imgone">Устанавливайте новые светильники, мы поможем подобрать их по мощности</section></figcaption>
</figure>
<figure class="img-box">
<img alt=img src=https://s3-us-west-2.amazonaws.com/s.cdpn.io/331810/sample58.jpg>
<figcaption><section class="imgone">Мы устанавливаем розетки и выключатели в любой компоновке</section></figcaption>
</figure>
</div>
</div>
</div>
*, *:after, *:before {
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
}
.wrapper{margin:0 auto}
.demo-content {
text-align: center;
}
.part{max-height:310px;max-height:100%;display:flex;display:-moz-flex;display: -webkit-flex;justify-content:center}
figure.img-box {
text-align: center;
position: relative;
display: inline-block;
overflow: hidden;
margin: 3px 3px;
max-width: 300px;
width:100%;
background-color:#DCDCDC;
-webkit-box-shadow: 0 8px 17px 0 hex(#cccccc), 0 6px 20px 0 hex(#cfcfcf);
box-shadow: 0 8px 17px 0 hex(#cccccc), 0 6px 20px 0 hex(#cfcfcf);
}
figure.img-box * {
-webkit-box-sizing: padding-box;
box-sizing: padding-box;
-webkit-transition: all 0.2s ease-out;
transition: all 0.2s ease-out;
}
figure.img-box img {
max-width: 100%;
vertical-align: top;
}
figure.img-box figcaption {
position:absolute;
top:0;
bottom:0;
left:0;
right:0;
align-items:center;
z-index:1;
display: flex;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
flex-direction:column;
-webkit-flex-direction:column;
-moz-flex-direction:column;
-ms-flex-direction:column;
justify-content:center;
opacity:0;
}
figure.img-box:after {
border: 8px solid #FF0000;
position: absolute;
content: "";
display: block;
top: 50%;
bottom: 50%;
left: 0;
right: 0;
-webkit-transition: all 0.7s ease-in-out;
transition: all 0.7s ease-in-out;
-ms-transition: all 0.7s ease-in-out;
opacity: 0;
}
figure.img-box:hover img {
opacity:0.2;
}
figure.img-box:hover:after {
top: 0;
bottom: 0;
opacity: 0.9;
}
.img-box .imgone {
font-family:'Roboto',sans-serif;
color:#00008B;
font-size:16px;
font-weight: 400;
margin: 0;
padding:0 10px;
transform: scale(0);
-webkit-transform:scale(0);
-ms-transform:scale(0);
-webkit-transition: all 1s ease 0s;
transition: all 1s ease 0s;
-ms-transition: all 1s ease 0s;
}
.img-box:hover figcaption, .img-box:hover .imgone {
transform: scale(1);
-webkit-transform: scale(1);
-ms-transform: scale(1);
opacity: 1;
}
скриншоты прилагаю
Question
Боков Глеб
Компоновка: типичный блок .Wrapper, который имеет ширину 100% от ширины окна, и центровщик (margin: 0 auto;) с указанными min-width и max-width:
В IE следующий баг: Wrapper почему-то заканчивается раньше, чем надо, а центровщик с содержимым перекрывает следующую такую же компоновку ниже:
Такой баг был замечен уже практически на свёрстанном лендинге, а потому было очень трудно сделать минимальный работающий пример. Я постарался убрать весь лишний HTML для данного примера, но CSS тоже самое было сделать очень трудно.
Если Вы запустите пример в IE (ещё раз повторюсь, что в других браузерах всё нормально), то увидите следующее:
На StackOverflow уже несколько недель никто не может найти решение (оно и понятно: в разметке-то ошибок нет, это просто баг IE, но с ним надо что-то делать, потому что пользователи IE, увы, ещё превышают критическую отметку 10%). Вот только что удалось выяснить: если контейнеру .FlexPageLayoutWithFixedHeaderAndBottomFooter-Wrapper для основного содержимого (под header) задать min-height вместо height, то отображение станет нормальным. К сожалению, такое решение не годится потому, что исчезнет "прилипание" header-а кверху. Можно, конечно, прилепить его и другими способами, но хотелось бы избежать задания его абсолютной высоты, так как это противоречит концепции адаптивной вёрстки.
Link to comment
Share on other sites
4 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.