Сегодня изучим свойство CSS3 transform. Это свойство трансформирует выбранные элементы DOM на странице. Возможны следующие виды трансформации: поворот на угол, масштабирование, отражение, сдвиг, наклон, перспектива и трансформация по матрице. При этом, возможны изменения как в двумерном пространстве, так и в трехмерном. По сути, это CSS3 свойство похоже на функцию трансформации изображения в графическом редакторе PhotoShop. Таким образом, только используя CSS3 определения можно изменить любой элемент на странице до неузнаваемости.
Этот материал будет большим, так как я постараюсь описать все возможные виды CSS3 трансформации. Поэтому наберитесь терпения. Все варианты трансформации будут с рабочими примерами. Если какой-либо пример не работает, то это может означать, что ваш браузер не поддерживает данного CSS3 свойства. Рекомендация одна - обновите браузер, или замените ваш Internet Explorer на какой-нибудь другой браузер.
Трансформация в CSS3 создается при помощи свойства transform. Действует это свойство только для элементов типа block (DIV, P и т.п.) или inline-block (IMG, INPUT и т.п.). Значением свойсту transform передается функция трансформации. Каждому элементу на странице можно задать несколько трансформаций. Для этого нужно перечислять функции в свойстве transform через пробел.
Трансформации поддерживаются браузерами IE10, FF3.6+, Safari 4+, Google Chrome, Opera 11+. Для старых IE есть заплатки, но использовать их не стоит.
Для работы в большинстве браузеров нужно использовать несколько записей трансформации следующего вида (параметры такие же, как и для свойства transform):Список функций трансформации:
Рассмотрим каждую функцию трансформации отдельно.
Функция смещает элемент на определенное расстояние от текущего положения по горизонтали или вертикали.
Пример:
Также существуют такие функции как translateX(dx) и translateY(dy), которые смещают елемент по горизонтали и вертикали.
Масштабирует элемент на странице (увеличение, уменьшение, отражение).
Если задано только одно значение, то оно будет применено для масштабирования как по горизонтали, так и по вертикали.
Пример:
Существуют две похожие функции: scaleX(dx) и scaleY(dy). Они масштабируют элемент только в одну сторону, либо по-горизонтали, либо по-вертикали.
Функция skew наклоняет элемент страницы на определенный градус как по горизонтали, так и по вертикали.
Пример:
Две похожие функции: skewX(dx) и skewY(dy). Они наклоняют элемент только в одну сторону, либо по-горизонтали, либо по-вертикали.
Функция rotate позволяет повернуть блок на угол.
Пример:
Функция matrix позволяет сделать любую трансформацию элемента, аналогично функций выше. Она более сложна к пониманию, но и дает больше возможностей.
Пример:
Компонуя нужные трансформации можно придать элементу желаемую форму. Для примера, скомпонуем поворот на 10 градусов, наклон по горизонтали на 20 градусов и масштаб в 1.3 раз по вертикали:
На этом все, удачи в свершениях!
Вы можете присоедениться к моему микроблогу в Твиттере @SzenProgs. Буду благодарен, если оцените мой труд, и щелкните по звездочкам ниже.
x;z-index:1 }Трансформация в CSS3
Верстка
Скрипты, инструкции, справочники
Категория: | Верстка |
Просмотрено: | 32404 |
Рейтинг: | 3.6/8 |
Дата добавления: | 2011-11-24 09:37, Четверг |
Добавил: | Szen |
Теги: | CSS3, Transform, поворот на угол, трансформация, поворот |
№ 0 | 2011-11-24 09:37 |
Szen | Здесь вы можете задать вопрос или оставить комментарий по теме "Трансформация в CSS3". |
Гость |