IMPR: glide slider theme

This commit is contained in:
Tony Air 2023-08-04 20:47:17 +02:00
parent 8eb90bed1f
commit 1ede0c154e

View File

@ -0,0 +1,110 @@
@import '@glidejs/glide/src/assets/sass/variables';
$glide-left-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 320 512"><!--! Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License\) Copyright 2023 Fonticons, Inc. --><path fill="white" d="M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l192 192c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 246.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192z"/></svg>') !default;
$glide-right-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 320 512"><!--! Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="white" d="M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z"/></svg>') !default;
.#{$glide-class} {
$this: &;
$se: $glide-element-separator;
$sm: $glide-modifier-separator;
&#{$se}arrow {
position: absolute;
display: block;
top: 50%;
z-index: 2;
padding: 9px 12px;
background-color: transparent;
opacity: 1;
cursor: pointer;
transition: opacity 150ms ease, border 300ms ease-in-out;
transform: translateY(-50%);
line-height: 1;
background-repeat: no-repeat;
background-position: 50%;
background-size: 50% 50%;
width: 2em;
height: 100%;
overflow: hidden;
text-indent: 5000px;
border: 0;
&:focus {
outline: none;
}
&:hover {
background-color:rgba(0, 0, 0, 0.8);
}
&#{$sm}left {
left: 0;
background-image: $glide-left-icon;
}
&#{$sm}right {
right: 0;
background-image: $glide-right-icon;
}
&#{$sm}disabled {
opacity: 0.33;
}
}
&#{$se}bullets {
position: absolute;
z-index: 2;
bottom: 2em;
left: 50%;
display: inline-flex;
list-style: none;
transform: translateX(-50%);
}
&#{$se}bullet {
background-color: rgba(255, 255, 255, 0.5);
width: 9px;
height: 9px;
padding: 0;
border-radius: 50%;
border: 2px solid transparent;
transition: all 300ms ease-in-out;
cursor: pointer;
line-height: 0;
box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.1);
margin: 0 0.25em;
&:focus {
outline: none;
}
&:hover,
&:focus {
border: 2px solid white;
background-color: rgba(255, 255, 255, 0.5);
}
&#{$sm}active {
background-color: white;
}
}
&#{$sm}swipeable {
cursor: grab;
cursor: -moz-grab;
cursor: -webkit-grab;
}
&#{$sm}dragging {
cursor: grabbing;
cursor: -moz-grabbing;
cursor: -webkit-grabbing;
}
&__slide {
position: relative;
}
}