You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Sup_File/scss/free/_modals.scss

275 lines
5.9 KiB
SCSS

// Modals
// Styles for body
body {
&.modal-open {
overflow: auto;
padding-right: 0 !important;
}
&.scrollable {
overflow-y: auto;
}
}
// *** ENHANCED BOOTSTRAP MODALS ***///
// General styles
.modal-dialog {
.modal-content {
@extend .z-depth-1-half;
border: 0;
border-radius: $border-radius-base;
.modal-header {
border-top-left-radius: $border-radius-base;
border-top-right-radius: $border-radius-base;
}
}
.btn {
.fa {
color: $white !important;
}
}
[class*="btn-outline-"] .fa {
color: inherit !important;
}
// Cascading modals
&.cascading-modal {
margin-top: 10%;
.close {
opacity: 1;
text-shadow: none;
color: $white;
outline: 0;
}
// Cascading header
.modal-header {
@extend .z-depth-1-half;
margin: $cascading-modal-margin-top $cascading-modal-margin-right $cascading-modal-margin-bottom $cascading-modal-margin-left;
border: none;
border-radius: $border-radius-base;
padding: $cascading-modal-padding;
text-align: center;
.close {
margin-right: $cascading-modal-close-margin-right;
}
.title {
margin-bottom: 0;
width: 100%;
font-size: $cascading-modal-font-size;
.fa {
margin-right: $cascading-modal-fa-margin-right;
}
}
.social-buttons {
margin-top: $cascading-modal-social-margin-top;
a {
font-size: $cascading-modal-a-font-size;
}
}
}
// Cascading tabs nav
.modal-c-tabs {
.nav-tabs {
@extend .z-depth-1;
margin: $cascading-modal-tabs-margin-top $cascading-modal-tabs-margin-x 0 $cascading-modal-tabs-margin-x;
}
.tab-content {
padding: $cascading-modal-tabs-padding-top 0 0 0;
}
}
.nav-tabs {
display: flex;
li {
flex: 1;
a {
text-align: center;
}
}
}
// Footer customization
.modal-body,
.modal-footer {
padding-left: $modal-body-padding-left;
padding-right: $modal-body-padding-right;
color: map-get($grey, darken-2);
.additional-option {
margin-top: $modal-body-margin-top;
text-align: center;
}
}
// Cascading avatar
&.modal-avatar {
margin-top: $modal-avatar-margin-top;
.modal-header {
@extend .z-depth-0;
@extend .img-fluid;
margin: $modal-avatar-header-margin-top 0 $modal-avatar-header-margin-bottom;
img {
width: $modal-avatar-img-width;
@extend .z-depth-2;
margin-left: auto;
margin-right: auto;
}
}
}
}
// Modal notify
&.modal-notify {
.heading {
margin: 0;
padding: $modal-notify-heading-padding;
font-size: $modal-notify-font-size;
color: $white;
}
.modal-header {
@extend .z-depth-1;
border: 0;
}
.close {
opacity: 1;
}
.modal-body {
padding: $modal-notify-body-padding;
color: map-get($grey, darken-2);
}
@each $name, $color in $basic {
&.modal-#{$name} {
.modal-header {
background-color: $color;
}
.fa {
color: $color;
}
.badge {
background-color: $color;
}
}
}
}
}
// Position & Size
.modal {
padding-right: 0 !important;
.modal-dialog {
@media (min-width: 768px) {
&.modal-top {
top: 0;
}
&.modal-left {
left: 0;
}
&.modal-right {
right: 0;
}
&.modal-bottom {
bottom: 0;
}
&.modal-top-left {
top: $modal-distance;
left: $modal-distance;
}
&.modal-top-right {
top: $modal-distance;
right: $modal-distance;
}
&.modal-bottom-left {
bottom: $modal-distance;
left: $modal-distance;
}
&.modal-bottom-right {
bottom: $modal-distance;
right: $modal-distance;
}
}
}
&.fade {
&.top:not(.show) .modal-dialog {
transform: $modal-fade-top-transform;
}
&.left:not(.show) .modal-dialog {
transform: $modal-fade-left-transform;
}
&.right:not(.show) .modal-dialog {
transform: $modal-fade-right-transform;
}
&.bottom:not(.show) .modal-dialog {
transform: $modal-fade-bottom-transform;
}
}
@media (min-width: $medium-screen) {
&.modal-scrolling {
position: relative;
.modal-dialog {
position: fixed;
z-index: 1050;
}
}
&.modal-content-clickable {
top: auto;
bottom: auto;
.modal-dialog {
position: fixed;
}
}
.modal-fluid {
width: 100%;
max-width: 100%;
.modal-content {
width: 100%;
}
}
.modal-frame {
position: absolute;
margin: 0;
width: 100%;
max-width: 100%;
&.modal-bottom {
bottom: 0;
}
}
.modal-full-height {
position: absolute;
display: flex;
margin: 0;
width: $modal-width;
height: 100%;
top: 0;
right: 0;
&.modal-top,
&.modal-bottom {
display: block;
width: 100%;
max-width: 100%;
height: auto;
}
&.modal-top {
bottom: auto;
}
&.modal-bottom {
top: auto;
}
.modal-content {
width: 100%;
}
&.modal-lg {
width: 90%;
max-width: 90%;
@media (min-width: $medium-screen) {
width: $modal-full-height-medium-screen;
max-width: $modal-full-height-medium-screen;
}
@media (min-width: $large-screen) {
width: $modal-full-height-large-screen;
max-width: $modal-full-height-large-screen;
}
}
}
.modal-side {
position: absolute;
bottom: $modal-distance;
right: $modal-distance;
margin: 0;
width: $modal-width;
}
}
}