X-Git-Url: http://git.plutz.net/?p=serve0;a=blobdiff_plain;f=style.css;h=2e461e13a1ca0b7c11496339b6e5f74b1a75e248;hp=05d278fb649bf9c20a9bda6440ad257ea7e1ae85;hb=HEAD;hpb=b22f5dedd33a3c4b3a42f06072923b0f75b6799f diff --git a/style.css b/style.css index 05d278f..79ddfe8 100644 --- a/style.css +++ b/style.css @@ -1,313 +1,301 @@ -* { - box-sizing: border-box; - margin: 0; padding: 0; +body { + color: #EEE; + background-color: #000; + padding-bottom: 2.5em; } -button { padding: .125em .5em; } -a { color: inherit; text-decoration: none;} -input { - border: 1px solid; - padding: .25em .5em; - line-height: 1em; - vertical-align: bottom; -} -input[type=number] { padding-right: 0; } -input[type=radio], input[type=checkbox] { vertical-align: baseline; } -select { - border: 1px solid; - padding: .125em .5em; -} +/* ====== TOP CONTROL BAR ====== */ -body { - color: white; - background-color: black; - min-height: 100%; +#navigation { + text-align: center; + margin-bottom: 1em; padding: 0 2em; + background-color: #333; + box-shadow: .125em .125em .25em #000; +} +#navigation > a { + position: absolute; bottom: .25em; + padding: 0 .125em; + font-size: 1.5em; + text-decoration: none; } +#navigation > a[href="#bookmarks"] { left: 0; } +#navigation > a[href="#prefs"] { right: 0; } -#prefs, #bookmarks, -#multitag, #advsearch { - display: block; - position: relative; - overflow: hidden; +#bookmarks, #advsearch, #prefs, #multitag { + -display: none; height: 0; - text-align: left; - background-color: #333; -} -#prefs:target, -#advsearch:target, -#multitag:target, -#bookmarks:target { - height: auto; - overflow: visible; + overflow: hidden; } -#navigation{ - text-align: center; +#editing { + position: fixed; + bottom: 0; width: 100%; + padding: 0 .5em; background-color: #333; - padding: .25em; - border-bottom: 1px solid; } -#search { display: inline; } - -a[href="#prefs"] { +:target a[href="#"] { position: absolute; - top: 0; right: .25em; + top: 0; right: 0; font-size: 1.5em; + font-weight: bold; + text-decoration: none; + padding: 0 .25em; + z-index: 1; } -a[href="#bookmarks"] { - position: absolute; - top: 0; left: .25em; - font-size: 1.5em; +/* ====== MAIN LIST VIEW ====== */ + +.itemlist { text-align: center; } +.itemlist > * { text-align: left; } +.itemlist .list { + display: inline-block; + vertical-align: top; + width: 99%; + -padding: 0 .25em; + margin: 0 .5%; + margin-bottom: 1em; + overflow: hidden; } -a[href="#advsearch"] { - margin-left: .5em; +.itemlist .list img { + -width: 1000%; height: 11em; + max-width: unset; + background-color: #111; + object-fit: cover; + transform: translate(-05%, 0); + margin-left: 50%; } -a[href="#advsearch"]:before { - content: '\25b8'; - margin: 0 .5em; +.itemlist .list:hover img { + animation: thumbscroll 8s steps(10, end) infinite; +} +@keyframes thumbscroll { + from { transform: translate(-05%, 0);} + to { transform: translate(-105%, 0);} } -#prefs { - position: absolute; - right: 0; width: 13em; - margin-left: auto; - margin-top: -1px; - border: 1px solid; - border-top: none; - border-right: none; - padding: 0 1em; - z-index: 1; +.itemlist .list label { + display: block; + font-weight: bolder; + word-break: break-word; +} +.itemlist .list .time, +.itemlist .list .dim { + position: absolute; top: 9.75em; + background-color: rgba(0,0,0,.5); + padding: .125em .25em; +} +.itemlist .list .time { right: 0; } +.itemlist .list .dim { left: 0; } +.itemlist .list input[type=checkbox] { display: none; } +.itemlist .list .tag, +.itemlist .list input[type=checkbox] + label { + display: inline-block; + background-color: #333; + margin-top: .125em; + margin-left: 0; + padding: 0 .25em; + border-radius: 1pt; +} +.itemlist .list input[type=checkbox]:checked + label { + background-color: #383; } -#prefs a[href="#"] { + +/* ====== PAGINATION LIST ====== */ + +.pagination { display: block; - position: relative; - top: -1.125em; - margin-right: -.5em; - margin-bottom: -1em; - text-align: right; - font-size: 1.5em; - padding-right: .25em; - background-color: inherit; + font-size: 1.25em; + max-width: 98%; + margin: 0 auto; + padding: .25em 0; + background-color: #333; + border-radius: 2pt; +} +.pagination a { + display: inline-block; + padding: 0 .5em; + margin: 0 .5em; + border-radius: 2pt; +} +.pagination a.current { + background-color: #BBB; } -#prefs label[for=prefs_ps] { - font-weight: bold; +/* ====== BOOKMARK PANEL ====== */ + +#bookmarks:target, +#prefs:target { + display: block; position: fixed; + top: 50%; left: 50%; + transform: translate( -50%, -50% ); + width: 40em; max-width: 90%; + height: 30em; max-height: 90vh; + background-color: #333; + padding: 0 .5em; + z-index: 1; + box-shadow: .25em .25em .5em #000; + overflow-y: auto; } -#prefs #prefs_ps { - max-width: 4em; - margin-bottom: 1em; + +#bookmarks label { + display: inline; + font-weight: bold; + font-size: 1.125em; + margin-left: 0; + margin-top: .75em; + word-break: break-word; } -#prefs button { - margin: 1em 0; +#bookmarks label:before, +#bookmarks a.conjunct:after { + content: '\0a'; + white-space: pre; } -#prefs input { vertical-align: top; } -#prefs input[type=radio] + label, -#prefs input[type=checkbox] + label { - display: inline-block; - margin-bottom: .5em; - max-width: 85%; +#bookmarks label:before { + line-height: 2.5em; + vertical-align: top; } + +/* ====== ADVSEARCH / FILTER PANEL ====== */ + #advsearch:target { - display: block; - position: relative; - text-align: center; - border-bottom: 1px solid; -} -#advsearch a[href="#"] { - display: block; - line-height: 2em; - background-color: inherit; - border-bottom: 1px solid; - text-align: left; - padding-left: .5em; - position: relative; - top: -2em; + display: block; position: fixed; + top: 0; width: 100%; + height: 30em; max-height: 90vh; + background-color: #333; + padding: 0 .5em; + z-index: 1; + box-shadow: .25em .25em .5em #000; + overflow-y: auto; } + +-#advsearch { text-align: center; } +-#advsearch > * { text-align: left; } + #advsearch .help { - display: block; - margin: -1em 1em 1em 1em; - padding: .5em 1em; + width: 95%; + margin: 1em auto; padding: 0 .5em; background-color: #444; - line-height: 1.5em; - text-align: left; + white-space: pre-line; } -#advsearch input.and {display: none;} -#advsearch input.and + label {display: none} -#advsearch input.and + label + .select {display: none;} - -#advsearch input.and + label:nth-of-type(2), -#advsearch input.and:checked + label + .select + input + label { +#advsearch input.and + label { display: inline-block; vertical-align: top; - margin: 0 .5% 1em .5%; - width: 4%; - padding: .5em 0; - text-align: center; font-weight: bold; - border: 1px solid; } - -#advsearch input.and:checked + label + .select + input:checked + label, -#advsearch input.and:checked + label:nth-of-type(2), -#advsearch input.and:checked + label { display: none; } - -#advsearch input.and + label + .select:first-of-type, -#advsearch input.and:checked + label + .select { +#advsearch fieldset.select { display: inline-block; - position: relative; - width: 19%; - margin: 0 .5% 1em .5%; - min-width: 200px; - min-height: 12em; - overflow: hidden; - text-align: left; + width: 99%; + margin: 0 .5%; margin-bottom: .75em; padding: 0 .375em; + box-shadow: .125em .125em .25em #000; } -#advsearch .select input.pol { - margin: .5em .25em 0 .5em; -} -#advsearch .select input.pol + label { - font-weight: bold; -} -#advsearch .select label.head { - display: block; - font-weight: bold; - padding: .5em 0 0 .5em; - border-bottom: 1px solid; +#advsearch fieldset.select > label.head { + display: none; + width: 40%; + text-align: right; } - -#advsearch .select select {display: none;} -#advsearch .select input.cat { display: none; } -#advsearch .select input.cat + label { +#advsearch fieldset.select > input.cat { display: none; } +#advsearch fieldset.select > input.cat + label + .catselect { display: none; } +#advsearch fieldset.select > input.cat + label { display: block; - margin-right: 50%; - padding: .25em .5em; - font-size: 1.125em; - border-bottom: 1px solid; + width: 40%; + margin: 0; padding: 0 .5em; + text-align: right; } -#advsearch .select input.cat:checked + label { +#advsearch fieldset.select > input.cat:checked + label { background-color: #444; } +#advsearch fieldset.select > input.cat:checked + label + .catselect { + display: block; position: absolute; + top: 1.5em; bottom: 0; right: 0; + width: 60%; + padding: 0 .25em; background-color: #444; + overflow-y: auto; } -#advsearch .select input.cat:checked + label + select { +#advsearch fieldset.select > input.cat + label + .catselect > * { display: block; - position: absolute; - top: 3.5em; bottom: 0; - right: 0; left: 50%; - width: 50%; + white-space: pre; } -.list { - position: relative; - display: inline-block; - width: 25%; - min-width: 250px; - padding: .25em; - overflow: none; - word-wrap: break-word; - vertical-align: top; - color: black; - overflow: hidden; -} -.list.dir { - padding: .5em 1em; -} +#advsearch input.and { display: none; } +#advsearch input.and + label { display: none; } +#advsearch input.and + label + fieldset { display: none; } +#advsearch input.and:checked + label + fieldset, +#advsearch input.and:first-of-type + label + fieldset { display: inline-block; } +#advsearch input.and:checked + label + fieldset + input + label, +#advsearch input.and:first-of-type + label + fieldset + input + label { display: inline-block; } +#advsearch input.and:checked + label + fieldset + input:checked + label { display: none; } +#advsearch input.and:first-of-type + label + fieldset + input:checked + label { display: none; } -.list:before { - position: absolute; - top: .25em; left: .25em; - bottom: .25em; right: .25em; - z-index: -2; - content: ''; -} -.list.dir:before { background-color: #CCF; } -.list.file:before { background-color: #FDD; } -.list.file:first-of-type { clear: left; } -.list.file a img{ - display: block; - width: 100%; - min-height: 4em; -} -.list.file a label{ - position: absolute; - top: 0; padding: .25em .5em; - color: white; - background-color: rgba(0,0,0,.625); +/* ====== MULTITAG DIALOG ====== */ + +#multitag:target { + display: block; position: fixed; + bottom: 0; left: 0; width: 100%; + height: 30em; max-height: 90vh; + background-color: #333; + padding: 0 .5em; + z-index: 1; + box-shadow: .25em .25em .5em #000; + overflow-y: auto; } -.list.file .time, -.list.file .dim, -.list.file .tag, -.list.file label { +-#multitag { text-align: center; } +-#multitag > * { text-align: left; } + +#multitag fieldset { display: inline-block; - margin-top: .125em; -} -.list.file .time, -.list.file .dim { - color: white; - background-color: #004; - padding: .125em .5em; -} -.list.file .tag { - color: white; - background-color: #400; - padding: .125em .5em; + width: 99%; + margin: 0 .5%; margin-top: 1em; } -.list.file input[type="checkbox"] { display: none; } -.list.file input[type="checkbox"] + label { - border: 1px solid; - border-radius: .125em; - padding: 0 .25em; - background-color: #FBB; +#multitag fieldset select { + width: 100%; height: 10em; } -.list.file input[type="checkbox"]:checked + label { - background-color: #4F4; +#multitag fieldset .tagselect { + height: 10em; + background-color: #444; + overflow-y: auto; } - -.pagination { +#multitag fieldset .tagselect > label { display: block; - text-align: center; - margin-top: 1em; + white-space: pre; } -.page { - display: inline-block; - padding: .25em .5em; - color: black; - background-color: #FDD; - border: 1px solid; - margin: 0 .125em; +#multitag fieldset textarea[name=newtag] + label { + display: block; } -#editing { - text-align: left; - width: 100%; - background-color: #333; - border-top: 1px solid; - padding: .25em; -} -#index label:first-of-type { font-weight: bold; } -#index input, #index button { margin-left: 1em;} +/* ====== VIEW PAGE ====== */ -#multitag:target a[href="#"] { - position: relative; - top: -1em; - padding-right: 10em; - background-color: inherit; +body#view video { + display: block; + max-height: 80vh; + margin: 0 auto; } -#multitag fieldset{ + +body#view .tag { display: inline-block; - width: 25%; min-width: 250px; - vertical-align: top; + background-color: #333; + margin-top: .125em; + margin-left: 0; padding: 0 .25em; - border: none; + border-radius: 1pt; +} + +body#view .itemlist { + margin-top: 2em; } -#multitag fieldset * { width: 100%; } -#multitag fieldset button { width: 50%; } + + +/* ====== SCALE BLOCK ELEMENTS ====== */ + +@media(min-width: 20em) { .itemlist .list, #advsearch fieldset.select, #multitag fieldset { max-width: 49%; } } +@media(min-width: 40em) { .itemlist .list, #advsearch fieldset.select, #multitag fieldset { max-width: 32%; } } +@media(min-width: 60em) { .itemlist .list, #advsearch fieldset.select, #multitag fieldset { max-width: 24%; } } +@media(min-width: 80em) { .itemlist .list, #advsearch fieldset.select, #multitag fieldset { max-width: 19%; } } +@media(min-width: 100em) { .itemlist .list, #advsearch fieldset.select, #multitag fieldset { max-width: 19em; } }