А вот так:

<img src="./petusik.png">
<img src="./petusik.png" class="flip-x">
.flip-x {
  display: block;
  transform: scaleX(-1);
}
Петусики из Дюдюведы

Василий Половнёв и Игорь Петров. ХТМЛ. Вёрстка сайтов для дизайнеров, редакторов и руководителей. Демонстрационная глава «Блочные и строчные элементы»

Значения transform: scaleX(-1), scaleY(-1) или scale(-1) отразят элемент по горизонтали, по вертикали или по обеим осям соответственно. Сработает только с блочными элементами.

Василий Половнёв и Игорь Петров. ХТМЛ. Вёрстка сайтов для дизайнеров, редакторов и руководителей. Демонстрационная глава «Блочные и строчные элементы»

У приёма не так много сценариев применения. Отзеркаливать чужие фото — дурной тон, а отзеркаливать чужие произведения — искажение информации и нарушение авторских прав.

Можно сэкономить на иконках и иллюстрациях, если они позволяют себя отзеркалить, — не использовать дополнительную картинку, а отразить существующую:

.button.is-fold .icon {
  transform: scaleY(-1);
}
Развернуть 
Свернуть 

Или намудрить какой‑нибудь прикол:

<div class="mirror">
  <img src="./iphone.jpg">
  <img src="./iphone.jpg" class="reflection">
</div>
.mirror {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1px;
}

.mirror img {
  width: 100%;
  display: block;
  margin: 0;
}

.mirror .reflection {
  max-height: 40px;
  transform: scaleY(-1);
  opacity: .7;
  filter: blur(.5px);
  -webkit-mask-image: linear-gradient(to top, rgba(0,0,0,1), rgba(0,0,0,0));
  mask-image: linear-gradient(to top, rgba(0,0,0,1), rgba(0,0,0,0));
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  object-fit: cover;
  object-position: bottom center;
}

А вообще — просто полезно знать, что так можно. Иногда подобные костыли трюки в экзотических ситуациях могут сэкономить кучу времени.

P. S. Это был совет о веб‑разработке. Хотите знать всё о коде, тестах, фронтенд‑разработке, цеэсэсе, яваскрипте, рельсах и джейде? Присылайте вопросы.

Веб‑разработка
Отправить
Поделиться
Запинить

Рекомендуем другие советы