Files
tabler/core/scss/ui/_close.scss
T

83 lines
1.9 KiB
SCSS

@use '../config' as *;
.btn-close {
@include focus-ring-transition();
--btn-close-color: currentColor;
--btn-close-bg: #{escape-svg($btn-close-bg)};
--btn-close-opacity: #{$btn-close-opacity};
--btn-close-hover-opacity: #{$btn-close-hover-opacity};
--btn-close-focus-opacity: #{$btn-close-focus-opacity};
--btn-close-disabled-opacity: #{$btn-close-disabled-opacity};
--btn-close-size: #{$btn-close-width};
position: relative;
display: block;
width: var(--btn-close-size);
height: var(--btn-close-size);
padding: $btn-close-padding-y $btn-close-padding-x;
color: var(--btn-close-color);
cursor: pointer;
background-color: var(--btn-close-color);
border: 0;
opacity: var(--btn-close-opacity);
mask: var(--btn-close-bg) no-repeat center/calc(var(--btn-close-size) * 0.75);
@include border-radius(var(--border-radius));
// Invisible overlay extending the hit area to a 24x24px minimum touch target
&::before {
position: absolute;
top: 50%;
left: 50%;
width: max(100%, 24px);
height: max(100%, 24px);
content: '';
transform: translate(-50%, -50%);
}
&:hover {
color: var(--btn-close-color);
text-decoration: none;
background-color: var(--btn-close-color);
opacity: var(--btn-close-hover-opacity);
}
&:focus {
outline: 0;
opacity: var(--btn-close-focus-opacity);
}
&:focus-visible {
@include focus-ring(true);
}
&:disabled,
&.disabled {
pointer-events: none;
user-select: none;
opacity: var(--btn-close-disabled-opacity);
}
@include media-print() {
display: none;
}
}
// @mixin btn-close-white() {
// --btn-close-filter: #{$btn-close-filter-dark};
// }
// .btn-close-white {
// @include btn-close-white();
// }
// :root,
// [data-bs-theme="light"] {
// --btn-close-filter: #{$btn-close-filter};
// }
// @if $enable-dark-mode {
// @include color-mode(dark, true) {
// @include btn-close-white();
// }
// }