Простой эффект 3D вращения при наведении с помощью CSS3 преобразований


Простой эффект 3D вращения при наведении с помощью CSS3 преобразо...

456
7.6 из 10
Проголосовало: 6






3D захватывает мир и WEB не исключение. Часто разработчики пытаются удивить пользователя различными эффектами на своем сайте. Мы бы хотели вам показать как можно сделать 3D эффект при перемещении мыши.

Напишем небольшую разметку для нашего элемента, который мы будем перемещать.

HTML
Код

<div class="card">  
  <div class="card-content">  
  <h1>Водите мышкой по экрану</h1>  
  </div>  
</div>


CSS
Код

body {  
  background: #edf2f4;  
  -webkit-perspective: 1000px;  
  perspective: 1000px;  
  -webkit-transform-style: preserve-3d;  
  transform-style: preserve-3d;  
  display: -webkit-box;  
  display: -webkit-flex;  
  display: -ms-flexbox;  
  display: flex;  
  height: 100vh;  
  font-family: "Playfair Display",georgia,serif;  
}  

.card {  
  pointer-events: none;  
  -webkit-transform: translateZ(0);  
  transform: translateZ(0);  
  padding: 30px;  
  background: white;  
  border-radius: 5px;  
  width: 400px;  
  height: 200px;  
  margin: auto;  
  -webkit-transform-style: preserve-3d;  
  transform-style: preserve-3d;  
  -webkit-backface-visibility: hidden;  
  backface-visibility: hidden;  
  display: -webkit-box;  
  display: -webkit-flex;  
  display: -ms-flexbox;  
  display: flex;  
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);  
  position: relative;  
}  
.card:after {  
  content: " ";  
  position: absolute;  
  width: 100%;  
  height: 10px;  
  border-radius: 50%;  
  left: 0;  
  bottom: -50px;  
  box-shadow: 0 30px 20px rgba(0, 0, 0, 0.3);  
}  
.card .card-content {  
  margin: auto;  
  text-align: center;  
  -webkit-transform-style: preserve-3d;  
  transform-style: preserve-3d;  
}  
.card h1 {  
  -webkit-transform: translateZ(100px);  
  transform: translateZ(100px);  
}  
.card p {  
  -webkit-transform: translateZ(50px);  
  transform: translateZ(50px);  
  display: block;  
}  
.card p.related {  
  -webkit-transform: translateZ(80px);  
  transform: translateZ(80px);  
  font-style: italic;  
}  
.card a {  
  color: #69c6b8;  
  pointer-events: auto;  
}


Jquery
А теперь самая главная часть, нужно написать скрипт, который будет отслеживать положение нашей мыши. В этом нам поможет jquery.

Код

var card = $(".card");  

  $(document).on("mousemove",function(e) {  
  var ax = -($(window).innerWidth()/2- e.pageX)/20;  
  var ay = ($(window).innerHeight()/2- e.pageY)/10;  
  card.attr("style", "transform: rotateY("+ax+"deg) rotateX("+ay+"deg);-webkit-transform: rotateY("+ax+"deg) rotateX("+ay+"deg);-moz-transform: rotateY("+ax+"deg) rotateX("+ay+"deg)");  
});
Автор публикации: Загрузка
Загрузка
Вовчик, это его n материал
  • Всего комментариев: 2

CbIPoK2513
0
CbIPoK2513 написал: Написано 25 Января 2016 в 14:42
Комментарий №1
Где демо?!

Вовчик
0
Вовчик написал: Написано 25 Января 2016 в 14:51
Комментарий №2
установи и будет демо...

  • Оставить комментарий:
Добавлять комментарии могут только зарегистрированные пользователи.
Регистрация | Вход
Меню сайта
Категории
Для помощи создания сайта uCoz 25
Скрипты и модификации для Ucoz 2112
Шаблоны форумов Ucoz 28
Шаблоны сайтов Ucoz 431
Авторство Webo4ki 309
php скрипты для ucoz 57
Графика для uCoz 40
Мини-чат
Последние комментарии
  • 1488 написал:
  • 1488 написал:
  • Смысл исходный код? он возвращает после обновление страницы на то положение которое было... или как?
  • 1488 написал:
  • как поставить галки как скрине?
    а то невозможно поставить...
  • Handyman написал:
  • Не появляется код безопасности для обычных пользователей
  • MeVeR написал:
  • Вовка, привет. А вот такой интереснейший вопрос, возможно ли изменить количество посетителей онлайн на форуме?
    Моё авторство:)
    Последние темы
    Опрос
    431
    А
    Р
    Оцените новый дизай:)
    Статистика
    Анализ интернет сайта
    0
    онлайн
    0
    наших
    0
    чужих
    Онлайн всего: 2
    Гостей: 1
    Пользователей: 1
    0
    Сегодня были
    Топ пользователей: