71 lines
1.2 KiB
CSS
71 lines
1.2 KiB
CSS
/* 警告訊息進入動畫 */
|
|
@keyframes slideDown {
|
|
from {
|
|
opacity: 0;
|
|
transform: translateY(-10px);
|
|
}
|
|
|
|
to {
|
|
opacity: 1;
|
|
transform: translateY(0);
|
|
}
|
|
}
|
|
|
|
/* Toast 進入動畫 */
|
|
@keyframes slideIn {
|
|
from {
|
|
transform: translateX(400px);
|
|
opacity: 0;
|
|
}
|
|
|
|
to {
|
|
transform: translateX(0);
|
|
opacity: 1;
|
|
}
|
|
}
|
|
|
|
/* Toast 訊息容器樣式 */
|
|
.toast-message {
|
|
position: fixed;
|
|
top: 20px;
|
|
right: 20px;
|
|
padding: 15px 20px;
|
|
border-radius: 4px;
|
|
color: white;
|
|
font-weight: 500;
|
|
z-index: 9999;
|
|
animation: slideIn 0.3s ease-out;
|
|
max-width: 400px;
|
|
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
word-wrap: break-word;
|
|
word-break: break-word;
|
|
}
|
|
|
|
/* Toast 訊息類型樣式 */
|
|
.toast-success {
|
|
background-color: #28a745;
|
|
}
|
|
|
|
.toast-error {
|
|
background-color: #dc3545;
|
|
}
|
|
|
|
.toast-warning {
|
|
background-color: #ffc107;
|
|
color: #333;
|
|
}
|
|
|
|
.toast-info {
|
|
background-color: #17a2b8;
|
|
}
|
|
|
|
/* Vue transition 動畫 */
|
|
.toast-enter-active, .toast-leave-active {
|
|
transition: all 0.3s ease;
|
|
}
|
|
|
|
.toast-enter, .toast-leave-to {
|
|
transform: translateX(100%);
|
|
opacity: 0;
|
|
}
|