mirror of
https://github.com/GoogleChromeLabs/squoosh.git
synced 2025-11-14 01:37:26 +00:00
* wip * Commenting stuff to keep the build happy * Revealing sections * Custom select elements & more form work * Range input styles * Text fields with inputs do the right thing * Safari & Firefox fixes * Large compress select * oops * MozJPEG options updated * OptPNG options * These asserts weren't true * Generic options * WebP options * Hiding "edit" when "original image" * Download icon * Copy setting button - still not happy with this * Progress indicator * Loading icon enter/exit anim * Preventing controls going under options * Ahh so that's what was causing scrolling * Ahh so that's what was causing outlines * Simplifying range styles and fixing cross-browser * Processing custom element styles * Get precision from step by default * I don't know how or when this happened. * Don't need that many steps * Avoid having an element that covers the pinch zoom * Preventing overlap with zoom controls * Prevent ts warning * Fixing spinner position * Simplifying FileSize
69 lines
1.2 KiB
SCSS
69 lines
1.2 KiB
SCSS
.app {
|
|
position: absolute;
|
|
left: 0;
|
|
top: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
overflow: hidden;
|
|
contain: strict;
|
|
}
|
|
|
|
.drop {
|
|
overflow: hidden;
|
|
touch-action: none;
|
|
height: 100%;
|
|
width: 100%;
|
|
|
|
&:global {
|
|
&::after {
|
|
content: '';
|
|
position: absolute;
|
|
display: block;
|
|
left: 10px;
|
|
top: 10px;
|
|
right: 10px;
|
|
bottom: 10px;
|
|
border: 2px dashed #fff;
|
|
background-color:rgba(88, 116, 88, 0.2);
|
|
border-color: rgba(65, 129, 65, 0.5);
|
|
border-radius: 10px;
|
|
opacity: 0;
|
|
transform: scale(0.95);
|
|
transition: all 200ms ease-in;
|
|
transition-property: transform, opacity;
|
|
pointer-events: none;
|
|
}
|
|
|
|
&.drop-valid::after {
|
|
opacity: 1;
|
|
transform: scale(1);
|
|
transition-timing-function: ease-out;
|
|
}
|
|
}
|
|
}
|
|
|
|
.option-pair {
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
width: 100%;
|
|
height: 100%;
|
|
|
|
&.horizontal {
|
|
justify-content: space-between;
|
|
align-items: flex-end;
|
|
}
|
|
|
|
&.vertical {
|
|
flex-direction: column;
|
|
}
|
|
}
|
|
|
|
.app-loader {
|
|
position: absolute;
|
|
top: 50%;
|
|
left: 50%;
|
|
transform: translate(-50%, -50%);
|
|
--size: 225px;
|
|
--stroke-width: 26px;
|
|
}
|