
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
//default
.modal-back,
.modal {
display: none;
visibility: hidden;
z-index: -1;
&.in {
visibility: visible;
}
}
.modal-back {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: transparentize($black, 0.25);
//opacity: 0;
//transition: visibility 0s .3s;
&.in {
display: block;
z-index: 1000;
}
}
.modal {
/*@include flex-layout($ai: center, $jc: center, $fd: column);*/
display: none;
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: -1;
visibility: hidden;
overflow-x: hidden;
overflow-y: auto;
width: 100%;
height: 100%;
opacity: 0;
@include reset-text;
transition: visibility .15s .3s, z-index 0s .3s, opacity .2s;
> * {
width: 100%;
}
&.in {
z-index: 1010;
transition-delay: 0s;
opacity: 1;
}
&.shown {
display: block;
}
.modal-dialog { //기본 타입
$p: var(--#{$prefix}spacer-10);
$gap: var(--#{$prefix}spacer-8);
$m: var(--#{$prefix}spacer-20);
@include flex-layout($ai: center);
position: relative;
z-index: 1020;
width: 84.6rem;
height: calc(100% - $m * 2);
min-height: calc(100% - $m * 2);
margin: $m auto;
.modal-content {
@include flex-layout($ai: center, $fd: column);
position: relative;
overflow: hidden;
width: 100%;
max-height: 100%;
background-color: var(--#{$prefix}white);
border-radius: var(--#{$prefix}rd-12);
outline-color: transparent;
transition: outline-color .1s;
> * {
width: 100%;
}
&:focus {
@include focus($offset: .4rem, $color: $white, $alpha: 0.9);
}
}
.modal-header {
width: 100%;
padding: $p 6.8rem $gap $p;
background-color: inherit;
border-top-left-radius: inherit;
border-top-right-radius: inherit;
.modal-title {
@include ellipsis(1);
font-size: var(--#{$prefix}fz-title-sm);
font-weight: map-get($fws, bold);
}
}
.modal-conts {
@include flex-layout($fd: column);
gap: $gap;
position: relative;
overflow-y: auto;
width: 100%;
padding: 0 $p;
color: var(--#{$prefix}gray-90);
> * {
width: 100%;
}
.conts-tit {
font-size: var(--#{$prefix}fz-title-md);
font-weight: map-get($fws, bold);
}
.conts-area {
@include flex-layout($fd: column);
gap: $gap;
> * {
width: 100%;
}
}
}
.modal-btn {
@include flex-layout($ai: center, $jc: flex-end);
gap: .8rem;
width: 100%;
padding: $gap $p $p;
.btn {
min-width: 9.2rem;
}
}
.btn-close {
@include position($t: 3.2rem, $r: 3.2rem);
z-index: 901;
width: 3.6rem;
height: 3.6rem;
background: url(#{$url}/component/common/ico_close_modal.svg) no-repeat center;
background-size: 2rem;
}
}
&.alert { //얼럿 타입
.modal-dialog {
width: 56rem;
.modal-conts {
gap: 2.4rem;
}
.modal-btn {
.btn {
min-width: 7.8rem;
}
}
}
}
}
/* modal open 시 contents (전체모달 아닌경우) */
.modal-open {
/*padding-right: 17px;*/
overflow: hidden;
}
/* mobile */
@include mobile {
.modal {
$w: calc(100% - 3.2rem);
.modal-dialog {
$p: var(--#{$prefix}spacer-6);
$gap: var(--#{$prefix}spacer-6);
$m: var(--#{$prefix}spacer-4);
width: $w;
height: calc(100% - $m * 2);
min-height: calc(100% - $m * 2);
margin: $m auto;
.modal-header {
padding: $p 6.8rem $gap $p;
}
.modal-conts {
gap: $gap;
padding: 0 $p;
.conts-area {
gap: $gap;
> * {
width: 100%;
}
}
}
.modal-btn {
padding: $gap $p $p;
.btn {
width: calc((100% - 0.8rem) / 2);
min-width: 0;
}
}
.btn-close {
@include position($t: 1.6rem, $r: 1.6rem);
}
}
&.alert {
.modal-dialog {
width: $w;
.modal-btn {
.btn {
width: auto;
min-width: 7.8rem;
}
}
}
}
}
}