Files
trpic/web/styles/convert/convert.css
Hubert Chen 02a1232806 add filter for files query
src/web:
    filter:
        add Files functions to build `predicate.File` and `queryMap`
    files api and no script page:
        use `predicate.File` and `filter.Files` to query file
web:
    scripts:
        load:
            add `fetchPriority = "high"` to gallery thumbnail images
            add `alt = "spoiler"` for gallery sensitive image mask
        process pages:
            add document title status
            fix preview image will mask original image when img tag has not src attribute in safari
            add `go convert` button for upscayl page
    styles/process pages:
        fix `user-select: none`
    templates/process pages:
        add `title` tags
        add `go convert` button for upscayl page
2026-07-03 21:42:49 +08:00

101 lines
1.5 KiB
CSS

body {
background: #000;
color: #fff;
}
html,
#preview {
scrollbar-width: none;
scrollbar-color: grey #282828;
}
#preview {
position: fixed;
display: none;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
justify-content: left;
align-items: start;
overflow: hidden;
scrollbar-width: none;
z-index: 5;
}
#preview-view {
position: relative;
width: 100%;
height: 100vh;
cursor: grab;
}
#preview-header {
position: absolute;
z-index: 10;
top: 0;
gap: 1em;
width: 100%;
color: white;
fill: white;
box-sizing: border-box;
padding: .7em;
display: flex;
justify-content: space-between;
background-color: #333;
align-items: center;
-webkit-user-select: none;
-ms-user-select: none;
user-select: none;
}
#preview-header select,
#preview-header button {
color: white;
background-color: #444;
border-radius: .2em;
border: none;
padding: .2em .5em;
height: 100%;
}
#preview-header button:hover {
background-color: rgb(40, 40, 40);
}
#preview-header button:active {
background-color: rgb(50, 50, 50);
}
#preview-info {
display: block;
text-align: right;
gap: .5em;
}
#preview-info p {
margin: 0 .2em;
display: inline-block;
}
#image-wrapper {
display: flex;
width: 100%;
height: 100%;
justify-content: center;
align-items: center;
position: relative;
transform-origin: center center;
}
#image-wrapper > * {
position: absolute;
max-width: min(90%, 90svw);
max-height: min(90%, 90svh);
object-fit: contain;
background: #000;
pointer-events: none;
}