Интернет магазин шабонов
Форма входа

Бесплатный раздел

Уважаемые пользователи!
Доводим до вашего сведения, что мы не занимаемся обучениями по системе uCoz и настройками Ваших сайтов.
Подобные просьбы и вопросы - будут игнорироваться!

Анимимрованная панель пользователя

Дата добавления: 03.04.2017 - 20:52
Добавил: Buger
Количество просмотров: 187
Количество комментариев: 0
Размер файла: 13.0Kb
Рейтинг материала: 4.3 / 3
Анимимрованная панель пользователя
рейтинг 4.3
/
голосов 3
Довольно интересная реализация для меню профиля пользователя. Красивый эффект не оставляет без внимания. Данный материал предоставлен в HTML виде, поэтому вы его сможете адаптировать под любую CMS. Вы можете изменить цветовую гамму и назначить нужные вам иконки. Считаю что данный материал, будет очень полезен разработчикам и администраторам сайтов. Удивляйте своих пользователей чем-то необычным и данное решение профиля, заслуживает настоящего внимания.

Установка:
Давайте для начала укажем разметку нашей панели пользователя
HTML разметка
Код
<div class="base">
  <div class="menu">
  <div class="icon">
  <div class="bar"></div>
  </div>
  </div>
  <div class="icons">
  <i class="fa fa-user" aria-hidden="true"></i>
  <i class="fa fa-calendar-o" aria-hidden="true"></i>
  <i class="fa fa-tachometer" aria-hidden="true"></i>
  </div>
  <div class="section">
  <div class="cover1">
  <div class="cover2">
  <a class="content" href="#"></a>
  </div>
  </div>
  </div>
  <a class="section-static top" href="#"></a>
  <a class="section-static bottom" href="#"></a>
</div>


Теперь применим стили CSS
CSS стили
Код
.base {
  z-index: 90;
  position: fixed;
  top: 0px;
  left: 0px;
  background-color: #FFFFFF;
  width: 98px;
  height: 98px;
  -webkit-transition: all 1s cubic-bezier(0.5, -0.75, 0.05, 1);
  transition: all 1s cubic-bezier(0.5, -0.75, 0.05, 1);
  border-bottom-right-radius: 100%;
  }
   
  .base .menu {
  z-index: 100;
  background-color: #FFFFFF;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100px;
  height: 100px;
  border-bottom-right-radius: 200px;
  cursor: pointer;
  -webkit-transition: all 1s cubic-bezier(0.5, -0.75, 0.05, 1), background-color 1s ease;
  transition: all 1s cubic-bezier(0.5, -0.75, 0.05, 1), background-color 1s ease;
  }
   
  .base .menu .icon {
  position: absolute;
  width: 25px;
  height: 25px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-100%, -100%);
  transform: translate(-100%, -100%);
  }
   
  .base .menu .icon:before,
  .base .menu .icon:after {
  content: '';
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: top 0.5s ease 0.5s, background-color 0.75s ease 0.25s, -webkit-transform 0.5s ease;
  transition: top 0.5s ease 0.5s, background-color 0.75s ease 0.25s, -webkit-transform 0.5s ease;
  transition: top 0.5s ease 0.5s, transform 0.5s ease, background-color 0.75s ease 0.25s;
  transition: top 0.5s ease 0.5s, transform 0.5s ease, background-color 0.75s ease 0.25s, -webkit-transform 0.5s ease;
  }
   
  .base .menu .icon .bar,
  .base .menu .icon:before,
  .base .menu .icon:after {
  position: absolute;
  height: 5px;
  left: 0px;
  right: 0px;
  border-radius: 5px;
  background-color: #21264B;
  }
   
  .base .menu .icon .bar {
  -webkit-transition: opacity 0s linear 0.5s, background-color 0.75s ease 0.25s;
  transition: opacity 0s linear 0.5s, background-color 0.75s ease 0.25s;
  opacity: 1;
  top: 10px;
  }
   
  .base .menu .icon:before {
  top: 0px;
  }
   
  .base .menu .icon:after {
  top: initial;
  top: 20px;
  }
   
  .base .icons {
  z-index: 98;
  position: absolute;
  top: 0px;
  left: 0px;
  }
   
  .base .icons>* {
  position: absolute;
  font-size: 40px;
  color: #21264B;
  -webkit-transition: 0.3s cubic-bezier(0.5, -0.25, 0.05, 1);
  transition: 0.3s cubic-bezier(0.5, -0.25, 0.05, 1);
  }
   
  .base .icons .fa-user {
  top: 35px;
  left: 0px;
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
  }
   
  .base .icons .fa-calendar-o {
  top: 0px;
  left: 0px;
  color: #fff;
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
  }
   
  .base .icons .fa-tachometer {
  top: 0px;
  left: 35px;
  }
   
  .base .section {
  z-index: 96;
  position: absolute;
  top: 0px;
  left: 0px;
  height: 0px;
  width: 0px;
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  }
   
  .base .section .cover1 {
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
  }
   
  .base .section .cover1,
  .base .section .cover1 .cover2,
  .base .section .cover1 .cover2 .content {
  position: absolute;
  width: 600px;
  height: 600px;
  }
   
  .base .section .cover1,
  .base .section .cover1 .cover2 {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-100%, -100%) rotate(4deg);
  transform: translate(-100%, -100%) rotate(4deg);
  overflow: hidden;
  pointer-events: none;
  -webkit-transition: -webkit-transform 0.5s ease-in;
  transition: -webkit-transform 0.5s ease-in;
  transition: transform 0.5s ease-in;
  transition: transform 0.5s ease-in, -webkit-transform 0.5s ease-in;
  }
   
  .base .section .cover1 .cover2 {
  -webkit-transform: translate(50%, -50%) rotate(-8deg);
  transform: translate(50%, -50%) rotate(-8deg);
  -webkit-transform-origin: 0% 100%;
  transform-origin: 0% 100%;
  }
   
  .base .section .cover1 .cover2 .content {
  width: 150px;
  height: 150px;
  border-radius: 100%;
  background-color: #EE1B59;
  top: 100%;
  left: 0%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: background-color 0s, width 1.5s cubic-bezier(0.5, -0.5, 0.05, 1) 0s, height 1.5s cubic-bezier(0.5, -0.5, 0.05, 1) 0s;
  transition: background-color 0s, width 1.5s cubic-bezier(0.5, -0.5, 0.05, 1) 0s, height 1.5s cubic-bezier(0.5, -0.5, 0.05, 1) 0s;
  pointer-events: auto;
  }
   
  .base .section-static {
  z-index: 94;
  width: 100px;
  height: 100px;
  position: absolute;
  top: 0px;
  left: 0px;
  -webkit-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
  -webkit-transition: width 1s cubic-bezier(0.5, -0.75, 0.05, 1), height 1s cubic-bezier(0.5, -0.75, 0.05, 1);
  transition: width 1s cubic-bezier(0.5, -0.75, 0.05, 1), height 1s cubic-bezier(0.5, -0.75, 0.05, 1);
  }
   
  .base .section-static:hover {
  background-color: #EAEAEA;
  }
   
  .base .section-static.top {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  border-bottom-right-radius: 400px;
  }
   
  .base .section-static.bottom {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  border-bottom-right-radius: 400px;
  }
   
  .base.close {
  width: 300px;
  height: 300px;
  -webkit-transition: all 1.25s cubic-bezier(0.5, 0, 0.05, 8);
  transition: all 1.25s cubic-bezier(0.5, 0, 0.05, 8);
  }
   
  .base.close .menu {
  width: 150px;
  height: 150px;
  -webkit-transition: all 1s cubic-bezier(0.5, 0, 0.05, 1.75), background-color 1s ease;
  transition: all 1s cubic-bezier(0.5, 0, 0.05, 1.75), background-color 1s ease;
  background-color: #21264B;
  }
   
  .base.close .menu .icon .bar,
  .base.close .menu .icon:before,
  .base.close .menu .icon:after {
  background-color: #FFFFFF;
  }
   
  .base.close .menu .icon .bar {
  opacity: 0;
  }
   
  .base.close .menu .icon:before,
  .base.close .menu .icon:after {
  -webkit-transition: top 0.5s linear, background-color 0.75s ease 0.25s, -webkit-transform 0.5s ease 0.5s;
  transition: top 0.5s linear, background-color 0.75s ease 0.25s, -webkit-transform 0.5s ease 0.5s;
  transition: top 0.5s linear, transform 0.5s ease 0.5s, background-color 0.75s ease 0.25s;
  transition: top 0.5s linear, transform 0.5s ease 0.5s, background-color 0.75s ease 0.25s, -webkit-transform 0.5s ease 0.5s;
  }
   
  .base.close .menu .icon:before {
  top: 10px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  }
   
  .base.close .menu .icon:after {
  top: 10px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  }
   
  .base.close .icons {
  position: absolute;
  top: 0px;
  left: 0px;
  }
   
  .base.close .icons>* {
  position: absolute;
  font-size: 40px;
  color: #21264B;
  -webkit-transition: 0.3s cubic-bezier(0.5, 0, 0.05, 1.75) 0.7s;
  transition: 0.3s cubic-bezier(0.5, 0, 0.05, 1.75) 0.7s;
  pointer-events: none;
  }
   
  .base.close .icons .fa-user {
  top: 35px;
  left: 200px;
  }
   
  .base.close .icons .fa-calendar-o {
  top: 141px;
  left: 141px;
  color: #fff;
  -webkit-transition-delay: 0.65s;
  transition-delay: 0.65s;
  }
   
  .base.close .icons .fa-tachometer {
  top: 200px;
  left: 35px;
  -webkit-transition-delay: 0.8s;
  transition-delay: 0.8s;
  }
   
  .base.close .section .cover1 {
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
  }
   
  .base.close .section .cover1,
  .base.close .section .cover1 .cover2,
  .base.close .section .cover1 .cover2 .content {
  position: absolute;
  width: 600px;
  height: 600px;
  }
   
  .base.close .section .cover1,
  .base.close .section .cover1 .cover2 {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-100%, -100%) rotate(16deg);
  transform: translate(-100%, -100%) rotate(16deg);
  overflow: hidden;
  -webkit-transition: -webkit-transform 0.5s ease-in 0.5s;
  transition: -webkit-transform 0.5s ease-in 0.5s;
  transition: transform 0.5s ease-in 0.5s;
  transition: transform 0.5s ease-in 0.5s, -webkit-transform 0.5s ease-in 0.5s;
  }
   
  .base.close .section .cover1 .cover2 {
  -webkit-transform: translate(50%, -50%) rotate(-32deg);
  transform: translate(50%, -50%) rotate(-32deg);
  -webkit-transform-origin: 0% 100%;
  transform-origin: 0% 100%;
  }
   
  .base.close .section .cover1 .cover2 .content {
  border-radius: 100%;
  background-color: #EE1B59;
  top: 100%;
  left: 0%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: background-color 0s, width 1.1s cubic-bezier(0.5, 0, 0.05, 1.75) 0.25s, height 1.1s cubic-bezier(0.5, 0, 0.05, 2) 0.25s;
  transition: background-color 0s, width 1.1s cubic-bezier(0.5, 0, 0.05, 1.75) 0.25s, height 1.1s cubic-bezier(0.5, 0, 0.05, 2) 0.25s;
  }
   
  .base.close .section .cover1 .cover2 .content:hover {
  background-color: #DD1350;
  }
   
  .base.close .section-static {
  width: 300px;
  height: 300px;
  -webkit-transition: width 1.25s cubic-bezier(0.5, 0, 0.05, 2), height 1.25s cubic-bezier(0.5, 0, 0.05, 2);
  transition: width 1.25s cubic-bezier(0.5, 0, 0.05, 2), height 1.25s cubic-bezier(0.5, 0, 0.05, 2);
  }


Для отображения иконок, подключим библиотеку Font Awesome
Код
<link rel='stylesheet prefetch' href='http://fontawesome.io/assets/font-awesome/css/font-awesome.css'>


И нам остается вызвать функцию вызова данной панели на JS
JavaScript
Код
$(".menu").click(function() {
  $(this).parent().toggleClass("close");
});


Источник: http://art-ucoz.ru/
Добавлять комментарии могут только зарегистрированные пользователи.