summaryrefslogtreecommitdiff
path: root/www/lib/ionic/scss/_modal.scss
diff options
context:
space:
mode:
Diffstat (limited to 'www/lib/ionic/scss/_modal.scss')
-rw-r--r--www/lib/ionic/scss/_modal.scss102
1 files changed, 102 insertions, 0 deletions
diff --git a/www/lib/ionic/scss/_modal.scss b/www/lib/ionic/scss/_modal.scss
new file mode 100644
index 00000000..7450fe9a
--- /dev/null
+++ b/www/lib/ionic/scss/_modal.scss
@@ -0,0 +1,102 @@
+
+/**
+ * Modals
+ * --------------------------------------------------
+ * Modals are independent windows that slide in from off-screen.
+ */
+
+.modal-backdrop,
+.modal-backdrop-bg {
+ position: fixed;
+ top: 0;
+ left: 0;
+ z-index: $z-index-modal;
+ width: 100%;
+ height: 100%;
+}
+
+.modal-backdrop-bg {
+ pointer-events: none;
+}
+
+.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;
+ 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-header.has-tabs-top {
+ top: $bar-height + $tabs-height;
+ }
+ .has-header.has-subheader.has-tabs-top {
+ top: $bar-height + $bar-subheader-height + $tabs-height;
+ }
+ }
+
+ .modal-backdrop-bg {
+ @include transition(opacity 300ms ease-in-out);
+ background-color: $modal-backdrop-bg-active;
+ opacity: 0;
+ }
+
+ .active .modal-backdrop-bg {
+ opacity: 0.5;
+ }
+}
+
+// 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;
+ }
+ }
+}