Кнопка удалить с эффектом анимации на CSS | |
Эта кнопка создана под функцию удаление, так как изначально идет предупреждение, что точно хотите сделать это, и после клика удаляется. Это отличное решение под любую функцию на сайте, где как пример установлен генератор или функционал, что нужно создавать, а это нажимать на клик. А здесь по удалению, чтоб понять, изначально идет красный цвет, где будет написано "Удалить", после нажатие меняется палитра, где уже написано, "Что вы точно хотите это сделать" и после этого вы только можете произвести функцию по удалению. С одной стороны это отличный вариант, так как иногда бывает, что не разберешь и удаляешь, то что не нужно. А здесь хоть и по времени затянуто, но не намного, то ты точно понимаешь, что правильно делаешь. Здесь вы получите значок корзины, когда вы наведете на нем кнопку, которая будет расширяться и отображать значки корзины вместе с текстом удаления после выполнения щелчка по кнопке. Если вы желаете перекинуть под другой функционал, то нужно изменить шрифтовые иконки, так как в одном элементе, здесь идет 3 версий. Но и нужно понимать, что появится сообщение об успешном подтверждении с зеленым фоном, что означает успешность процесса. Рассмотрим по работе, как изначально все будет появляться. 1. Как раз эта кнопка идет до того, пока вы не навели на ее клик: 2. Здесь наведенный курсор и появляется другаяпалитра: 3. Вы сделали клик, что автоматически сменилась палитра, и за ней появилась новая функция: 4. Когда все решили что нужно удалять, где нажимаете, и через какое-то время появляется кнопки по умолчанию: Приступаем к установке: HTML Код <button class='variousamechanics'> <div class='cleverlypaired'> <i class='fa fa-trash-o'></i> <i class='fa fa-question'></i> <i class='fa fa-check'></i> </div> <div class='kedeverything'> <span>Удалить!</span> </div> </button> CSS Код .variousamechanics { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } button { display: -webkit-box; display: -ms-flexbox; display: flex; cursor: pointer; border: 0; background: transparent; outline: 0; overflow: hidden; } button .cleverlypaired { position: relative; background: #1e272f; line-height: 30px; width: 30px; height: 30px; text-align: center; color: #f8f9f8; font-size: 18px; -webkit-transition: .3s color; transition: .3s color; border-radius: 2px; } button .cleverlypaired .fa { width: 30px; -webkit-transition: .2s all; transition: .2s all; } button .cleverlypaired .fa-check { color: #2ca06a; } button .cleverlypaired .fa-question { color: #2085e8; } button .cleverlypaired:after { content: ' '; display: block; position: absolute; width: 5px; height: 5px; -webkit-transform: rotate(45deg); transform: rotate(45deg); background: #2c343c; top: 12.5px; right: 1px; -webkit-transition: .2s right; transition: .2s right; z-index: 1; } button .kedeverything { position: relative; width: 0; height: 29.8px; overflow: hidden; font-family: "Roboto", sans-serif; background: #da2d29; text-align: center; line-height: 29.9px; color: #f5f3f3; font-weight: 300; -webkit-transition: .3s all; transition: .3s all; border-top-right-radius: 3px; border-bottom-right-radius: 3px; } button .kedeverything span { width: 100%; opacity: 0; position: absolute; top: -30px; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); -webkit-transition: .3s all; transition: .3s all; } button:hover .cleverlypaired { color: #F34541; border-radius: 0; border-top-left-radius: 2px; border-bottom-left-radius: 2px; } button:hover .cleverlypaired:after { right: -2px; } button:hover .kedeverything { width: 119px; } button:hover .kedeverything span { opacity: 1; top: 0; } button.samilpaken .cleverlypaired { border-radius: 0; border-top-left-radius: 2px; border-bottom-left-radius: 2px; } button.samilpaken .cleverlypaired .fa { -webkit-transform: translateY(-30px); transform: translateY(-30px); } button.samilpaken .cleverlypaired:after { right: -2px; } button.samilpaken .kedeverything { background: #2492FF; width: 119px; } button.samilpaken .kedeverything span { opacity: 1; top: 0; } button.done .cleverlypaired { border-radius: 0; border-top-left-radius: 2px; border-bottom-left-radius: 2px; } button.done .cleverlypaired .fa { -webkit-transform: translateY(-60px); transform: translateY(-60px); } button.done .cleverlypaired:after { right: -2px; } button.done .kedeverything { background: #38B87C; width: 119px; } button.done .kedeverything span { opacity: 1; top: 0; } @-webkit-keyframes fadeInZoom { 0% { opacity: 0; -webkit-transform: scale(0.7); transform: scale(0.7); } 100% { opacity: 1; -webkit-transform: scale(1); transform: scale(1); } } @keyframes fadeInZoom { 0% { opacity: 0; -webkit-transform: scale(0.7); transform: scale(0.7); } 100% { opacity: 1; -webkit-transform: scale(1); transform: scale(1); } } JS Код $("button").click(function(){ if($(this).hasClass("samilpaken")){ $(this).addClass("done"); $("span").text("Удалено"); } else { $(this).addClass("samilpaken"); $("span").text("Ты уверен?"); } }); // Reset $("button").on('mouseout', function(){ if($(this).hasClass("samilpaken") || $(this).hasClass("done")){ setTimeout(function(){ $("button").removeClass("samilpaken").removeClass("done"); $("span").text("Удалить"); }, 3000); } }); По ширине здесь установлено по умолчанию, также к здесь скрипт привязан, что отвечает за основные функции всего действия. Когда вы наведете значок корзины с расширением до 120 пикселей и удалите текст, и когда вы нажмете на него, класс подтверждения будет добавлен позади с javascript, если уже будет добавлен класс. Пример работы, где вы можете поменять значение и кнопки: А вообще изначально будет значок корзины, где при наведении он преобразуется в красивую кнопку, там уже нужно читать, что написано по ней. И не забываем, что можно ее увеличить и вписать уже свои функций, которые будут отвечать за совершенно другой функционал. Демонстрация |
Поделиться в социальных сетях
Материал разместил
Комментарии: 0 | |