#html #css #google-chrome #firefox #flexbox
#HTML #css #google-chrome #firefox #flexbox
Вопрос:
Я прочитал несколько статей на тему различий в том, как flexbox отображается в разных браузерах, но ничто из этого не помогает мне исправить мои проблемы с макетом. Я реализовал свою собственную базовую сетку flexbox. Вот как выглядит правильный макет в Firefox: . И вот как выглядит макет с ошибками в chrome:
CSS:
//Actual page css
.point-one {
background-color: $off-white;
padding: 20px 20px;
.point-text {
padding: 0 20px;
}
}
// flexbox grid css
.grid {
display: flex;
flex-flow: row wrap;
align-items: stretch;
}
.grid-col {
display: flex;
flex-flow: column wrap;
align-items: center;
}
.fill {
flex-shrink: 0;
}
.col-1-10 {
flex: 10% 0 1;
}
.col-2-10 {
flex: 20% 0 1;
}
.col-3-10 {
flex: 30% 0 1;
}
.col-4-10 {
flex: 40% 0 1;
}
.col-5-10 {
flex: 50% 0 1;
}
.col-6-10 {
flex: 60% 0 1;
}
.col-7-10 {
flex: 70% 0 1;
}
.col-8-10 {
flex: 80% 0 1;
}
.col-9-10 {
flex: 90% 0 1;
}
.align-center{
align-items: center;
}
.even-spacing{
justify-content: space-around;
}
HTML:
<div className = "fill">
<div className = "point-one grid align-center ">
<div className = "col-2-10">
</div>
<div className = "col-6-10 point-text">
<h4> Aggregate all your cloud storage accounts in one place. All your
dropbox, onedrive, box, and google drive documents are here! </h4>
</div>
<div className = "col-2-10">
</div>
<div className = "col-1-10">
</div>
<div className = "col-8-10 grid even-spacing point-icons">
<img className="col-1-10 logo" id="db_logo" src={require("../images/dropbox-logos_dropbox-glyph-blue.png")} />
<img className="col-2-10 logo" src={require("../images/box_cyan.png")} />
<img className="col-1-10 logo" src={require("../images/product512.png")} />
<img className="col-3-10 logo" src={require("../images/OneDrive_rgb_Blue2728.png")} />
</div>
<div className = "col-1-10">
</div>
</div>
</div>
Я пробовал возиться с заполнением и префиксами поставщиков, но, похоже, ничего из этого не помогает. Я не думаю, что это должно быть массовое изменение, но я не так уверен.
Комментарии:
1. О боже, я думал, что где-то читал это, но, похоже, я этого не пробовал. работает как шарм! Можете ли вы дать официальный ответ на это?
2. Конечно, вот так.
Ответ №1:
Изображения в качестве дочерних элементов flex в некоторых случаях реагируют странно.
Обычно лучше обернуть их в их собственные divs.
Как минимум, переопределите align-items:stretch
[который также используется по умолчанию].