Вращающиеся иконки при помощи css3
10 мая 2012 | Опубликовано в css | 6 Комментариев »
Сегодня мы научимся создавать вращающиеся графические элементы при помощи css3. Такие эффекты часто используются в веб-дизайне для логотипов, потому что очень привлекают к себе внимание. Наведите курсором мыши на иконку, и вы увидите, как она вращается по своей собственной оси.
rotate(xdeg). С его помощью можно поворачивать элемент на любое количество градусов по часовой стрелке или против часовой стрелки. Давайте посмотрим несколько примеров (кроссбраузерность (IE10+, FF3.5+, Chrome/Safari, and Opera 10+)
Структура HTML
<p><b>360 degree spin onMouseover and onMouseout</b></p>
<p id="socialicons">
<a href="http://www.dynamicdrive.com/">
<img border="0" src="rss.png" /></a>
<a href="http://www.dynamicdrive.com/">
<img border="0" src="delicious.png" /></a>
<a href="http://www.dynamicdrive.com/">
<img border="0" src="facebook.png" /></a>
<a href="http://www.dynamicdrive.com/">
<img border="0" src="twitter.png" /></a>
<a href="http://www.dynamicdrive.com/">
<img border="0" src="yahoo.png" /></a>
</p>
<p><b>60 degree spin onMouseover and onMouseout</b></p>
<p id="socialicons2">
<a href="http://www.dynamicdrive.com/">
<img border="0" src="rss.png" /></a>
<a href="http://www.dynamicdrive.com/">
<img border="0" src="delicious.png" /></a>
<a href="http://www.dynamicdrive.com/">
<img border="0" src="facebook.png" /></a>
<a href="http://www.dynamicdrive.com/">
<img border="0" src="twitter.png" /></a>
<a href="http://www.dynamicdrive.com/">
<img border="0" src="yahoo.png" /></a>
</p>
<p><b>-360 degree spin onMouseover ONLY</b></p>
<p id="socialicons3">
<a href="http://www.dynamicdrive.com/">
<img border="0" src="rss.png" /></a>
<a href="http://www.dynamicdrive.com/">
<img border="0" src="delicious.png" /></a>
<a href="http://www.dynamicdrive.com/">
<img border="0" src="facebook.png" /></a>
<a href="http://www.dynamicdrive.com/">
<img border="0" src="twitter.png" /></a>
<a href="http://www.dynamicdrive.com/">
<img border="0" src="yahoo.png" /></a>
</p>
Добавляем стили
<style>
p#socialicons img{ /* 1st set of icons. Rotate them 360deg onmouseover and out */
-moz-transition: all 0.8s ease-in-out;
-webkit-transition: all 0.8s ease-in-out;
-o-transition: all 0.8s ease-in-out;
-ms-transition: all 0.8s ease-in-out;
transition: all 0.8s ease-in-out;
}p#socialicons img:hover{
-moz-transform: rotate(360deg);
-webkit-transform: rotate(360deg);
-o-transform: rotate(360deg);
-ms-transform: rotate(360deg);
transform: rotate(360deg);
}p#socialicons2 img{ /* 2nd set of icons. Rotate them 60deg onmouseover and out */
-moz-transition: all 0.2s ease-in-out;
-webkit-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}p#socialicons2 img:hover{
-moz-transform: rotate(70deg);
-webkit-transform: rotate(70deg);
-o-transform: rotate(70deg);
-ms-transform: rotate(70deg);
transform: rotate(70deg);
}p#socialicons3 img{ /* 3rd set of icons. Rotate them -360deg onmouseover ONLY. Note where the "transition prop is added */
}p#socialicons3 img:hover{
-moz-transition: all 0.5s ease-in-out;
-webkit-transition: all 0.5s ease-in-out;
-o-transition: all 0.5s ease-in-out;
-ms-transition: all 0.5s ease-in-out;
transition: all 0.5s ease-in-out;
-moz-transform: rotate(-360deg);
-webkit-transform: rotate(-360deg);
-o-transform: rotate(-360deg);
-ms-transform: rotate(-360deg);
transform: rotate(-360deg);
}</style>
Иконки можно скачать здесь
По материалам dynamicdrive
11 мая 2012 в 6:27
Самая фишка вращения в том, что его можно сделать inital, то есть бесконечным. Вот это выглядит забавно.
июня 8, 2012 at 5:07 пп
А подскажите что нужно сделать, чтобы вращение не прекращалось. Код желательно.
июня 11, 2012 at 1:44 дп
Да, конечно, держите пример jsfiddle.net/Gurylyov/sRnw3/
июня 11, 2012 at 2:07 дп
Спасибо, прикольный эффект, обязательно сделаю)))
июня 11, 2012 at 1:46 дп
кстати, со словом я не нарочно ошибся. не inital, а infinite.
11 мая 2012 в 11:21
Для меня это всёже как то неочень понятно :-[