yesno-dialog
Version:
Javascript yes no dialog
122 lines • 2.54 kB
CSS
.jsyesnodialog {
--color: #1976d2;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
display: flex;
align-items: flex-start;
justify-content: center;
box-sizing: border-box;
padding: 0 1.2em;
font-size: 16px;
line-height: 1.2;
z-index: 9999;
color: #333;
text-align: left;
}
.jsyesnodialog * {
box-sizing: border-box;
}
.jsyesnodialog__dialog {
background-color: #fff;
padding: 1.2em;
border: 1px solid #c3c3c3;
box-shadow: 0 0.25em 0.625em rgba(0, 0, 0, 0.2);
border-radius: 0 0 0.25em 0.25em;
max-width: 100%;
width: 28em;
opacity: 0;
animation: appear 0.15s forwards cubic-bezier(0.39, 0.58, 0.57, 1);
border-top: none;
}
.jsyesnodialog--closing .jsyesnodialog__dialog {
animation: disappear 0.15s forwards cubic-bezier(0.39, 0.58, 0.57, 1);
}
.jsyesnodialog__dialog__body {
margin-bottom: 1.8em;
}
.jsyesnodialog__dialog__body:before {
content: '';
display: block;
width: 2em;
height: .3em;
border-radius: .3em;
margin-bottom: .5em;
background: var(--color);
}
.jsyesnodialog__dialog__footer {
display: flex;
justify-content: flex-end;
}
.jsyesnodialog__dialog button.jsyesnodialog__dialog__button {
padding: .69em .625em;
width: 5.625em;
border-radius: .375em;
margin-left: .5em;
outline: none;
font-size: .8em;
box-shadow: none;
}
.jsyesnodialog__dialog button.jsyesnodialog__dialog__no {
background-color: #fff;
color: var(--color);
border: 1px solid #ccc;
}
.jsyesnodialog__dialog button.jsyesnodialog__dialog__no:hover {
background-color: #fafafa;
border-color: #ccc;
}
.jsyesnodialog__dialog button.jsyesnodialog__dialog__no:active {
background-color: #f5f5f5;
}
.jsyesnodialog__dialog button.jsyesnodialog__dialog__yes {
background-color: var(--color);
color: #fff;
border: 1px solid var(--color);
}
.jsyesnodialog__dialog button.jsyesnodialog__dialog__yes:hover {
opacity: 0.95;
background-color: var(--color);
border-color: var(--color);
}
.jsyesnodialog__dialog button.jsyesnodialog__dialog__yes:active {
opacity: 0.9;
}
@keyframes appear {
from {
opacity: 0;
transform: scale(0.9) translateY(-.6em);
}
to {
opacity: 1;
transform: scale(1) translateY(0);
}
}
@keyframes disappear {
from {
opacity: 1;
transform: scale(1) translateY(0);
}
to {
opacity: 0;
transform: scale(0.9) translateY(-.6em);
}
}
@keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
@keyframes fadeOut {
from {
opacity: 1;
}
to {
opacity: 0;
}
}