CSS масштабировать изображение и выравнивать центр - PullRequest
0 голосов
/ 03 апреля 2019

У меня есть строка шириной 8 делений рядом друг с другом. Контейнер имеет:

display: flex;
flex-wrap: wrap;

Вещи в контейнере:

text-align: center;
flex: 1 1 0;
width: 0;

Изображения внутри предмета:

-webkit-transform: scale(0.5);
-moz-transform: scale(0.5);
-ms-transform: scale(0.5);
-o-transform: scale(0.5);
transform: scale(0.5);

У всех предметов есть изображение внутри, теперь мне нужно выровнять эти изображения по центру div. Но (я думаю) из-за кода масштаба он не выравнивает их точно по центру ... Есть ли что-то, чтобы это исправить?

Привет

1 Ответ

1 голос
/ 03 апреля 2019

Вы можете просто сделать элементы гибкими контейнерами и центрировать содержимое следующим образом:

.flex {
  display: flex;
  flex-wrap: wrap;
}

.item {
  border: 1px solid red; /* just so we can see the border */
  text-align: center;
  flex: 1 1 0;
  width: 0;
}

.image {
  -webkit-transform: scale(0.5);
  -moz-transform: scale(0.5);
  -ms-transform: scale(0.5);
  -o-transform: scale(0.5);
  transform: scale(0.5);
}

.fixed .item {
  display: flex;
  justify-content: center;
  align-items: center;
}
<h1>Original</h1>
<div class="flex">
  <div class="item">
    <img class="image" src="https://picsum.photos/100" />
  </div>
  <div class="item">
    <img class="image" src="https://picsum.photos/100" />
  </div>
  <div class="item">
    <img class="image" src="https://picsum.photos/100" />
  </div>
  <div class="item">
    <img class="image" src="https://picsum.photos/100" />
  </div>
  <div class="item">
    <img class="image" src="https://picsum.photos/100" />
  </div>
  <div class="item">
    <img class="image" src="https://picsum.photos/100" />
  </div>
  <div class="item">
    <img class="image" src="https://picsum.photos/100" />
  </div>
  <div class="item">
    <img class="image" src="https://picsum.photos/100" />
  </div>
</div>

<h1>Fixed</h1>
<div class="flex fixed">
  <div class="item">
    <img class="image" src="https://picsum.photos/100" />
  </div>
  <div class="item">
    <img class="image" src="https://picsum.photos/100" />
  </div>
  <div class="item">
    <img class="image" src="https://picsum.photos/100" />
  </div>
  <div class="item">
    <img class="image" src="https://picsum.photos/100" />
  </div>
  <div class="item">
    <img class="image" src="https://picsum.photos/100" />
  </div>
  <div class="item">
    <img class="image" src="https://picsum.photos/100" />
  </div>
  <div class="item">
    <img class="image" src="https://picsum.photos/100" />
  </div>
  <div class="item">
    <img class="image" src="https://picsum.photos/100" />
  </div>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...