3D повороты при помощи CSS
Сегодня мы поговорим о CSS трансформации объектов. В особенности о 3D повороте.
Сглаживания краев
Поворот различного рода элементов с помощью CSS может привести, что их крайние стороны станут несколько кривыми. Конечно же всё зависит от браузера и от вашей GPU (графического процессора).
Мы убрали браузерные префиксы, чтобы не нагружать код:
.church { perspective: 700px; padding: 2rem; } .church img { transform: rotateY(12deg); }
Для того чтобы исправить неровные края, применим одну фишку: добавим прозрачную рамку в 1 px:
.church img { transform: rotateY(12deg); outline: 1px solid transparent; }
Однако, если вы сделаете изображения обтекаемыми (float), при применении свойства perspective, то можете увидеть странный результат. Дело в том, что в этих условиях, размер контейнера содержащий изображение теряет размер высоты.
К примеру, если применить эффект к изображению (с float или position:absolute) в div-е, получится примерно такой результат:
<div class=taj> <img src=taj-mahal-full.jpg alt="A photograph the Taj Mahal at sunset" style=width:300px> </div>
.taj { perspective: 700px; border: 1px solid red; } .taj img { transform: rotateY(12deg); float: left; outline: 1px solid transparent; }
Решение данной проблемы заключается в выставлении контейнеру фиксированной высоты, такой же как изображение. Достичь этого можно так же при добавлении внутренних отступов, overflow: hidden, или комбинации нескольких рецептов.
Данный урок подготовлен для вас командой сайта ruseller.com
Источник урока: http://demosthenes.info/blog/689/More-Tricks-and-Tips-For-CSS-3D-Smoothing-Transforms-amp-Fixing-Floated-Elements
Перевел: Станислав Протасевич
Урок создан: 24 Мая 2013
Просмотров: 24935
Правила перепечатки
5 последних уроков рубрики "CSS"
-
Забавные эффекты для букв
Небольшой эффект с интерактивной анимацией букв.
-
Реализация забавных подсказок
Небольшой концепт забавных подсказок, которые реализованы на SVG и anime.js. Помимо особого стиля в примере реализована анимация и трансформация графических объектов.
-
Анимированные буквы
Эксперимент: анимированные SVG буквы на базе библиотеки anime.js.
-
Солнцезащитные очки от первого лица
Прикольный эксперимент веб страницы отображение которой осуществляется “от первого лица” через солнцезащитные очки.
-
Раскрывающаяся навигация
Экспериментальный скрипт раскрывающейся навигации.