@sb1/ffe-modals
Version:
Modals in ffe
102 lines (101 loc) • 2.1 kB
CSS
/* vi har ikke laget denne klassen derav slå av lint */
/* stylelint-disable */
dialog {
position: fixed;
left: 0;
right: 0;
width: -moz-fit-content;
width: -webkit-fit-content;
width: fit-content;
height: -moz-fit-content;
height: -webkit-fit-content;
height: fit-content;
margin: auto;
border: solid;
padding: 1em;
background: white;
color: black;
display: block;
}
dialog:not([open]) {
display: none;
}
dialog + .backdrop {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: rgba(2, 10, 10, 0.5);
backdrop-filter: blur(4px);
}
._dialog_overlay {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
}
dialog.fixed {
position: fixed;
top: 50%;
-webkit-transform: translate(0, -50%);
transform: translate(0, -50%);
}
:root:has(.ffe-modal[open]) {
overflow-y: hidden;
}
.ffe-modal {
border: none;
border-radius: 24px;
padding: 0;
background: var(--ffe-color-surface-primary-default);
}
.ffe-modal[open] {
pointer-events: auto;
}
.ffe-modal:focus {
outline: none;
}
.ffe-modal::-webkit-backdrop {
background-color: rgba(2, 10, 10, 0.5);
backdrop-filter: blur(4px);
}
.ffe-modal::backdrop {
background-color: rgba(2, 10, 10, 0.5);
backdrop-filter: blur(4px);
}
.ffe-modal__body {
max-width: 600px;
}
.ffe-modal__block {
margin: var(--ffe-spacing-md);
}
.ffe-modal__block:first-of-type {
margin-top: 0;
padding-top: var(--ffe-spacing-md);
}
.ffe-modal__block:last-of-type {
margin-bottom: 0;
padding-bottom: var(--ffe-spacing-md);
}
.ffe-modal__close {
width: auto;
aspect-ratio: 1;
font: inherit;
cursor: pointer;
outline: 2px solid transparent;
padding: var(--ffe-spacing-2xs);
border-radius: 50%;
float: right;
margin: var(--ffe-spacing-md);
outline-offset: 4px;
-webkit-transition: all var(--ffe-transition-duration) var(--ffe-ease);
-o-transition: all var(--ffe-transition-duration) var(--ffe-ease);
transition: all var(--ffe-transition-duration) var(--ffe-ease);
}
.ffe-modal__close::after {
content: '';
display: block;
clear: both;
}