X-Git-Url: https://git.plutz.net/?p=confetti;a=blobdiff_plain;f=style_new.css;h=f74df8637be540ca26501abb43036b9341dc9884;hp=24b01ac4fe95b6fe78661221bff292c8b42471fa;hb=521f8b855c2aed5e229779ba40a0e62078e61988;hpb=b5ffb9d90da32513277d4c65a4a0e37854d4dee2 diff --git a/style_new.css b/style_new.css index 24b01ac..f74df86 100644 --- a/style_new.css +++ b/style_new.css @@ -1,4 +1,5 @@ * { + box-sizing: border-box; font-family: sans-serif; font-weight: normal; font-size: initial; @@ -25,6 +26,7 @@ a { i, em { font-style: italic; } b, strong { font-weight: bolder; } ul, ol { margin-left: 1.125em; } +table th { font-weight: bold; } h1, h2, h3 { font-weight: bold; @@ -64,6 +66,7 @@ select { padding: .375em 0; } input[type=radio], input[type=checkbox] { vertical-align: baseline; } +input[type=number] { text-align: right; padding-right: 0; } button, input[type=button], .control a { @@ -75,9 +78,65 @@ input + label { margin-left: .375em; } +/* =========== FILTER AND SEARCH Headers ========= */ + +form.search, form.sort, form.filter, form.newcard, form.newcourses { + margin-top: 1em; padding: 0 1em; + z-index: 1; +} +form.filter > h1 { display: none; } + +form.filter fieldset { margin-top: .5em; } +form.filter fieldset.item + fieldset.item legend { display: none; } +form.filter fieldset.item input[type=radio] { display: none; } +form.filter fieldset.item input[type=radio] + label { + display: table-cell; + padding: .5em 1em; + background-color: #EEE; + border-style: solid; + border-width: .5pt .25pt 0 .25pt; +} +form.filter fieldset.item input[type=radio] + label:first-of-type { + border-left: 1pt solid; +} +form.filter fieldset.item input[type=radio]:checked + label { + position: relative; + background-color: #FFF; + box-shadow: .125em -.125em .125em #888; + z-index: 1; +} +form.filter fieldset.item input[type=text], +form.filter fieldset.item fieldset.categories { + position: relative; + display: block; + width: 100%; + margin-top: -1pt; + padding: .25em .75em; + border: 1pt solid; + box-shadow: .125em .125em .25em #888; +} +form.filter fieldset.item fieldset.categories { display: none; } +form.filter fieldset.item input[value=CATEGORIES]:checked + label + input[type=text] { display: none; } +form.filter fieldset.item input[value=CATEGORIES]:checked + label + input[type=text] + fieldset.categories { display: block; } + +form.filter fieldset.order legend { + float: left; margin-right: 1em; +} + +form.filter fieldset label, +form.filter fieldset a { white-space: pre;} +form.filter button[type=submit] { + margin-top: .5em; margin-bottom: .5em; +} + +body.courses form .order { display: inline-block; margin-right: 2em;} + + +/* ============ LIST ITEMS, Generic ============= */ + body > form, div.card, -div.courselist { +div.course { position: relative; width: 98%; width: calc(100% - 2em); margin-left: auto; margin-right: auto; @@ -169,25 +228,30 @@ form .section button[value^=addfield] { margin-top: .5em; padding: 0 .375em; } -form input.delete { display: none; } -form input.delete + label { - float: right; - font-size: .75em; - line-height: 1; - max-width: .75em; height: .875em; overflow: hidden; - color: #FBB; background-color: #444; - margin: 0; padding: .125em .5em 0 .5em; - border-radius: 4pt 4pt 0 0; - transition: max-width .3s; -} -form input.delete + label:before { content: '\274c '; margin-right: .5em; } -form input.delete + label:hover { max-width: 10em; } --form input.delete + label:hover:before { content: ''; } --form input.delete + label:hover:after { content: ' \274c'; } -form input.delete:checked + label, -form input.delete:checked + label + * { - display: none; -} +/* HACK: "responsive" Delete Button above each field */ + form input.delete { display: none; } + form input.delete + label { + float: right; + font-size: .75em; + line-height: 1; + max-width: 1.75em; height: 1.125em; overflow: hidden; + color: #FBB; background-color: #444; + margin: 0; padding: .125em .5em 0 .5em; + border-radius: 4pt 4pt 0 0; + transition: max-width .3s; + } + form input.delete + label:before { content: '\274c '; margin-right: .5em; } + form input.delete + label:hover { max-width: 10em; } + -form input.delete + label:hover:before { content: ''; } + -form input.delete + label:hover:after { content: ' \274c'; } + form input.delete:checked + label, + form input.delete:checked + label + * { + display: none; + } +/**/ + + +/* ====== right hand Control Buttons on list items ====== */ form .control { position: relative; @@ -200,21 +264,40 @@ form .control .item { vertical-align: text-bottom; } -form .control .item.newfield { - box-shadow: .125em .125em .25em; -} -form .control .item.newfield select { - margin-right: -1pt; -} -form .control .item.newfield button { - box-shadow: none; -} +/* Combined Select/Submit Box */ + form .control .item.newfield { box-shadow: .125em .125em .25em; } + form .control .item.newfield select { margin-right: -1pt; } + form .control .item.newfield button { box-shadow: none; } +/**/ -form .control .item.delete { - position: absolute; - bottom: .375em; left: .25em; width: auto; - padding-bottom: calc(2.25em + 2pt); -} +/* HACK: Delete Checkbox before delete Button */ + form .control .item.delete { + position: absolute; + bottom: .375em; left: .25em; width: auto; + padding-bottom: calc(2.25em + 2pt); + } + + form .control .item.delete input + label + button { + display: none; + position: absolute; + bottom: 0; width: 100%; + color: #800; + background-color: #FEE; + z-index: 1; + } + form .control .item.delete:after { + content: attr(label); + display: block; + position: absolute; + bottom: 0; width: 100%; + text-align: center; + color: #BAA; + padding: .25em 0; + border: 1pt solid; + box-shadow: .125em .125em .25em; + } + form .control .item.delete input:checked + label + button { display: block; } +/**/ @media(min-width: 80em) { form .control { padding: .25em; min-height: 16em; } @@ -222,23 +305,60 @@ form .control .item.delete { form .control .item.newfield select { width: calc(100% - 2.5em); } form .control .item.delete { bottom: .125em; right: .25em; } } -form .control .item.delete input + label + button { - display: none; - position: absolute; - bottom: 0; width: 100%; - color: #800; - background-color: #FEE; - z-index: 1; -} -form .control .item.delete:after { - content: attr(label); + +/* ======= LIST ITEMS, Courses ======= */ + +form.course .dtstart input[name=DTS_YEAR], +form.course .dtstart select[name=DTS_MONTH] { width: calc(50% - 1.25em); } +form.course .dtstart input[name=DTS_YEAR] { margin-right: -.375em; } +form.course .dtstart table { width: 100%; margin: 1em 0; } +form.course .dtstart table td { text-align: right; -border: .5pt solid; } +form.course .dtstart table input[type=radio] { display: none; } +form.course .dtstart table input[type=radio] + label { display: block; - position: absolute; - bottom: 0; width: 100%; - text-align: center; - color: #BAA; - padding: .25em 0; - border: 1pt solid; + width: 100%; + margin: 0; padding: 0 3pt; +} +form.course .dtstart table input[type=radio]:checked + label { + font-weight: bold; + padding: 0 2pt; box-shadow: .125em .125em .25em; } -form .control .item.delete input:checked + label + button { display: block; } + +form.course .dtstart label.DTSTIME { + display: inline-block; + font-weight: bold; + margin: 0; + width: calc(100% - 7.875em); +} +form.course .dtstart input[name=DTS_HOUR], +form.course .dtstart input[name=DTS_MINUTE] { + vertical-align: baseline; + width: 3.5em; + margin-bottom: 0; +} + +form.course .recur .item { white-space: nowrap; } +form.course .recur .item > * { margin-bottom: 0; vertical-align: baseline; } +form.course .recur input[name=RRULE_INTERVAL], +form.course .recur input[name=RRULE_COUNT], +form.course .recur input[name=RRULE_UMONTH], +form.course .recur input[name=RRULE_UDAY] { width: 3.5em; } +form.course .recur input[name=RRULE_UYEAR] { width: 4.5em; } +form.course .recur input[name=RRULE_UYEAR], +form.course .recur input[name=RRULE_UMONTH], +form.course .recur input[name=RRULE_UDAY] { + margin-right: -.375em; +} + +form.course .attendance div.attendance { + max-height: 16em; + overflow-y: scroll; +} +form.course .attendance label { + display: inline-block; + max-width: calc(100% - 2em); + vertical-align: top; + margin-bottom: 0; +} +form.course .attendance input { margin-top: .375em; }