controls.scss: extract scrollbar styles

This commit is contained in:
He4eT 2023-06-05 02:41:14 +03:00
commit f1a723653d
4 changed files with 24 additions and 16 deletions

View file

@ -62,25 +62,12 @@
box-sizing: border-box;
padding: var(--inner-padding);
scrollbar-color: var(--main-color) var(--bg-color);
scrollbar-width: thin;
}
.ifplayer .output .buffer:empty {
display: none;
}
.ifplayer .output .buffer::-webkit-scrollbar {
width: 8px;
}
.ifplayer .output .buffer::-webkit-scrollbar-thumb {
background-color: var(--main-color);
border: 4px solid var(--bg-color);
border-left-width: 0px;
}
.ifplayer .output .gridBuffer {
flex-shrink: 0;
max-height: 100%;

View file

@ -3,7 +3,7 @@ import { render } from 'preact'
import '@fontsource/open-sans'
import './style/base.scss'
import './style/components.scss'
import './style/controls.scss'
import App from './App'

View file

@ -28,8 +28,10 @@ html, body {
color: var(--main-color);
background-color: var(--bg-color);
/* Fix for Jumping Scrollbar Issue */
padding-left: calc(100vw - 100%);
/* Fix for Jumping Scrollbar Issue */
@media (min-width: 800px) {
padding-left: calc(100vw - 100%);
}
& > main {
flex: 1 1 auto;

128
src/style/controls.scss Normal file
View file

@ -0,0 +1,128 @@
/* Scrollbars */
body {
* {
scrollbar-color: var(--main-color) var(--bg-color);
scrollbar-width: thin;
}
*::-webkit-scrollbar {
width: var(--inner-padding);
}
*::-webkit-scrollbar-thumb {
background-color: var(--main-color);
border: calc(0.5 * var(--inner-padding)) solid var(--bg-color);
border-left-width: 0;
}
}
/* Focus */
*:focus-visible {
outline: calc(0.5 * var(--separator-width)) solid var(--main-color);
outline-offset: calc(1px + var(--separator-width));
}
*::selection {
color: var(--bg-color);
background: var(--main-color);
}
/* Links */
a,
summary {
display: inline;
cursor: pointer;
border-bottom: var(--separator-width) solid currentColor;
color: inherit;
text-decoration: none;
}
a:focus,
a:hover,
summary:focus,
summary:hover {
opacity: 0.8;
}
/* Separators */
hr {
border: 0;
height: 0;
border-top: var(--separator-width) solid var(--main-color);
}
/* Lists */
ul {
list-style: square;
}
/* Buttons */
button {
border: var(--separator-width) solid var(--main-color);
background-color: var(--bg-color);
color: var(--main-color);
padding: var(--inner-padding) calc(4 * var(--inner-padding));
font-family: inherit;
font-size: inherit;
cursor: pointer;
}
/* Inputs */
input::placeholder {
color: var(--main-color);
opacity: 0.8;
}
input,
select {
box-sizing: border-box;
padding: calc(0.5 * var(--inner-padding)) var(--inner-padding);
color: var(--main-color);
background-color: var(--bg-color);
border: var(--separator-width) solid var(--main-color);
font: inherit;
}
select {
width: 250px;
cursor: pointer;
appearance: none;
-webkit-appearance: none;
border-radius: 0;
background-image: repeating-linear-gradient(
315deg,
var(--bg-color),
var(--bg-color) var(--inner-padding),
var(--main-color) var(--inner-padding),
var(--main-color) calc(var(--inner-padding) + var(--separator-width)),
var(--bg-color) calc(var(--inner-padding) + var(--separator-width)),
var(--bg-color) 100%
);
}
label {
display: inline-block;
width: 100%;
max-width: 400px;
}
label input {
width: 100%;
}
input[type='file'] {
position: relative;
font-size: 0;
text-indent: -100%;
cursor: pointer;
}