jce-mobile-app/www/lib/ionic/scss/_modal.scss

95 lines
2 KiB
SCSS

/**
* Modals
* --------------------------------------------------
* Modals are independent windows that slide in from off-screen.
*/
.modal-backdrop {
@include transition(background-color 300ms ease-in-out);
position: fixed;
top: 0;
left: 0;
z-index: $z-index-modal;
width: 100%;
height: 100%;
background-color: $modal-backdrop-bg-inactive;
&.active {
background-color: $modal-backdrop-bg-active;
}
}
.modal {
display: block;
position: absolute;
top: 0;
z-index: $z-index-modal;
overflow: hidden;
min-height: 100%;
width: 100%;
background-color: $modal-bg-color;
}
@media (min-width: $modal-inset-mode-break-point) {
// inset mode is when the modal doesn't fill the entire
// display but instead is centered within a large display
.modal {
top: $modal-inset-mode-top;
right: $modal-inset-mode-right;
bottom: $modal-inset-mode-bottom;
left: $modal-inset-mode-left;
overflow: visible;
min-height: $modal-inset-mode-min-height;
width: (100% - $modal-inset-mode-left - $modal-inset-mode-right);
}
.modal.ng-leave-active {
bottom: 0;
}
// remove ios header padding from inset header
.platform-ios.platform-cordova .modal-wrapper .modal{
.bar-header:not(.bar-subheader) {
height: $bar-height;
> * {
margin-top: 0;
}
}
.tabs-top > .tabs,
.tabs.tabs-top {
top: $bar-height;
}
.has-header,
.bar-subheader {
top: $bar-height;
}
.has-subheader {
top: $bar-height + $bar-subheader-height;
}
.has-tabs-top {
top: $bar-height + $tabs-height;
}
.has-header.has-subheader.has-tabs-top {
top: $bar-height + $bar-subheader-height + $tabs-height;
}
}
}
// disable clicks on all but the modal
.modal-open {
pointer-events: none;
.modal,
.modal-backdrop {
pointer-events: auto;
}
// prevent clicks on modal when loading overlay is active though
&.loading-active {
.modal,
.modal-backdrop {
pointer-events: none;
}
}
}