UNPKG

frontmessageplugin

Version:
187 lines (140 loc) 3.37 kB
:root { --darkMessage:rgb(111, 100, 100); --lightMessage: rgba(255, 255, 255); --successMessage: #2dc74e; --errorMessage: #e24d4c; --warningMessage: #e9bd0c; --infoMessage: #0091f1; } * { padding: 0; margin: 0; box-sizing: border-box; } .notifications_electrolux :where(.toast_electrolux, .column) { display: flex; align-items: center; } .notifications_electrolux { position: fixed; top: 30px; right: 20px; z-index: 99999; } .notifications_electrolux .toast_electrolux { width: 400px; list-style: none; position: relative; overflow: hidden; border-radius: 4px; padding: 16px 17px; margin-bottom: 10px; background-color: var(--darkMessage); justify-content: space-between; color: var(--lightMessage); animation: show_toast 0.3s forwards; /* 水平 垂直 模糊强度 */ box-shadow: rgb(143, 141, 141) 2px 2px 15px; } .toast_electrolux::before{ /* width: 100%; margin-left: -16px; height: 100%; z-index: -1; position: absolute; background: red; content: ""; */ } @keyframes show_toast { 0% { transform: translateX(100%); } 40% { transform: translateX(-5%); } 80% { transform: translateX(0); } 100% { transform: translateX(-10px); } } .toast_electrolux .column i { font-size: 1.75rem; } .toast_electrolux.hide { /* backwards是保持第一帧的状态 */ /* forwards当动画完成后,保持最后一帧的状态(也就是最后一个关键帧中定义的状态) */ animation: hide_toast 0.3s forwards; } @keyframes hide_toast { 0% { transform: translateX(-10%); } 40% { transform: translateX(0%); } 80% { transform: translateX(-5%); } 100% { transform: translateX(calc(100% + 20px)); } } .toast_electrolux .column span { font-size: 1.07rem; margin-left: 12px; } .toast_electrolux i:last-child { color: #aeb0d7; cursor: pointer; } .btn_electrolux#success { background-color: var(--successMessage); } .btn_electrolux#error { background-color: var(--errorMessage); } .btn_electrolux#warning { background-color: var(--warningMessage); } .btn_electrolux#info { background-color: var(--infoMessage); } .column i { color: var(--successMessage); } .toast_electrolux.error .column i { color: var(--errorMessage); } .toast_electrolux.warning .column i { color: var(--warningMessage); } .toast_electrolux.info .column i { color: var(--infoMessage); } .ev-button .btn_electrolux { border: none; outline: none; color: var(--darkMessage); cursor: pointer; padding: 10px 20px; font-size: 1.2rem; border-radius: 4px; } @media screen and (max-width: 530px) { .notifications_electrolux { width: 95%; z-index: 99999; } .notifications_electrolux .toast_electrolux { width: 100%; font-size: 1rem; margin-left: 20px; } .ev-button .btn_electrolux { margin: 0 1px; font-size: 1.1rem; padding: 8px 15px; } }