]> git.plutz.net Git - serve0/blobdiff - templates/common.css.sh
full page list for pagination, playctl in listview
[serve0] / templates / common.css.sh
index 02d02f3c45815d47680abf2b7175d70b3856be87..a74e1718cf0ae235f576f8b58dc63c9f66df07ce 100755 (executable)
@@ -1,4 +1,4 @@
-# Copyright 2014 Paul Hänsch
+# Copyright 2014 - 2016 Paul Hänsch
 #
 # This file is part of Serve0
 # 
 cat <<EOF
 
 * {
-  box-sizing: border-box;
   -moz-box-sizing: border-box;
+  box-sizing: border-box;
+  -moz-transition: all .3s linear;
+  transition: all .3s linear;
 }
 
 body {
@@ -28,18 +30,13 @@ body {
   background-color: #000;
   color: #DDD;
 }
+a { color: #EEE; }
+legend, label, .label { font-weight: bold; }
 
 input.tabhandle { display: none; }
 .tabcontent { display: none; }
-input.tabhandle:checked ~ .tabcontent { display: inline-block; }
-
-a {
-  color: #EEE;
-}
-
-label, .label {
-  font-weight: bold;
-}
+input.tabhandle:checked + label.tabhandle + .tabcontent { display: inline-block; }
+input.tabhandle:checked + .tabcontent { display: inline-block; }
 
 textarea {
   display: block;
@@ -56,96 +53,206 @@ textarea {
 .info.tag {
   line-height: 1.6em;
   background-color: #DBB;
+  margin-right: -.75ex;
+}
+
+.pagination_nav {
+  display: inline-block;
+  position: absolute;
+  border: none;
+  right: 0; bottom: .25em;
+  padding: .125em .5em 0 0;
+}
+
+.pagination_nav a {
+  display: none;
+  margin: 1ex 1px;
+  padding: 0 1ex;
+  text-decoration: none;
+}
+
+.pagination_nav a.current {
+  display: inline;
+  color: #F66;
+  font-weight: bold;
+}
+.pagination_nav:hover {
+  position: fixed;
+  bottom: auto;
+  text-align: right;
+  background-color: #333;
+  border-bottom: 1px solid #FFF;
+  line-height: 1.75em;
+  transition: none;
+}
+.pagination_nav:hover a {
+  display: inline;
 }
 
+/* == Panels == */
+
 .panel {
+  position: relative;
   display: block;
   width: 100%;
   margin: 0;
-  padding: .25em 1em;
+  padding: .25em .5em;
   background-color: #333;
   border-width: 1px;
   border-style: none none solid none;
 }
+
 a.panel {
   font-weight: bold;
-}
-a.clearsearch, a.advanced, a.tagger, .pagination_nav {
-  display: inline;
+  display: inline-block;
   border: none;
+  width: auto;
+  padding: 0;
+  margin-right: 1em;
+  margin-bottom: 1ex;
 }
-.pagination_nav {
+
+.panel .help { display: block;}
+
+/* == Top Panel == */
+.panel#advfilter {
   position: absolute;
-  right: 1em;
-  padding-top: .125em;
+  top: 0;
 }
 
-.panel .quicklinks,
-.footer .newtag, .footer input[type=submit] {
-  display: inline-block;
-  vertical-align: top;
-  margin-top: 2em;
+/* == Bottom Panels == */
+.panel#preferences,
+.panel#tagger,
+.panel#foot {
+  position: fixed;
+  bottom: 0px;
+  border-style: solid none none none;
 }
-.panel .help {
-  display: block;
+
+
+/* == Switchable Panels == */
+
+form.panel,
+div.panel {
+  z-index: 1;
+  overflow: hidden;
+  min-height: 0; max-height: 0;
+  padding-top: 0; padding-bottom: 0;
 }
-.footer .newtag select, .footer .newtag .label{
-  display: block;
-  width: 10em;
+
+.panel#search,
+.panel#foot {
+  max-height: 100%;
+  z-index: 0;
+  padding: .25em 6em 0 .5em;
 }
-.panel .filter .help.conjunction {
-  font-weight: bold;
+
+.panel:target {
+  max-height: 100%;
+  overflow-y: scroll;
 }
-.panel .filter .label.category {
+.panel#advfilter:target{ padding-bottom: 1em; }
+
+/* == Panel Switches == */
+
+.panel#playctl a.panel,
+.panel#advfilter a.panel,
+.panel#preferences a.panel,
+.panel#tagger a.panel {
   display: block;
-  margin-top: 1em;
+  border-style: none none solid none;
+  border-width: 1px;
 }
-.panel .quicklinks * {
-  display: block
+.panel#preferences a.panel,
+.panel#tagger a.panel {
+  border-style: solid none none none;
+  margin-top: .5em;
 }
 
-.panel .filter {
+
+/* == Panel Elements == */
+
+.panel#advfilter .quicklinks,
+.panel#advfilter .filter,
+.panel#tagger .newtag,
+.panel#tagger input[type=submit],
+.panel#preferences > * {
+  display: inline-block;
   vertical-align: top;
-  border: solid 1px #FFF; border-radius: .25em;
-  padding: .25em .5em;
-  margin: 0 0 1em 0;
+  margin-top: 1em;
 }
-.panel > label.tabhandle {
-  display: inline-block;
-  text-align: right;
-  width: 4em;
-  margin-left: 4em;
+
+
+/* == Advanced Filters == */
+
+/* == Filter Boxes == */
+#advfilter .filter {
+  border: solid 1px #FFF;
+  border-radius: .25em;
+  padding: .25em .5em;
 }
-.panel > .tabhandle + label { display: none; }
-.panel > .tabhandle + label + .tabcontent { display: none; }
-.panel > .tabhandle:checked + label.tabhandle + .tabcontent { display: inline-block; }
-.panel > .tabhandle:checked + label.tabhandle + .tabcontent + .tabhandle + label{ display: inline-block; }
-.panel > .tabhandle:checked + label.tabhandle + .tabcontent + .tabhandle:checked + label{ display: none; }
-.panel .filter .tabcontainer {
+#advfilter .filter .tabcontainer {
   position: relative;
   width: 16em;
+  font-weight:normal;
 }
-.panel .filter .category.tabhandle {
+#advfilter .filter .tabcontainer input + .category.tabhandle {
   display: block;
+  width: 50%;
 }
-.panel .filter input:checked + .category.tabhandle {
+#advfilter .filter .tabcontainer input:checked + .category.tabhandle {
   background: #FFF;
   color: #000;
 }
-.panel .filter .category.tabcontent {
+#advfilter .filter .tabcontainer .category.tabcontent {
   position: absolute;
   top: 0; right: 0;
-  width: 10em;
+  width: 50%;
   height: 100%;
   min-height: 4em;
+  border: 2px #FFF solid;
+  border-radius: 0 .25em .25em 0;
 }
 
-.panel .filter.final {
+#advfilter > label.tabhandle {
+  text-align: right;
+  width: 4em;
+  margin-left: 4em;
+}
+
+/* == Dynamic Appearance of Boxes == */
+.panel#advfilter > .tabhandle + label { display: none; }
+.panel#advfilter > .tabhandle:checked + label + .tabcontent + .tabhandle + label { display: inline-block; }
+.panel#advfilter > .tabhandle:checked + label + .tabcontent + .tabhandle:checked + label { display: none; }
+.panel#advfilter > .tabhandle + label + .tabcontent {
   display: inline-block;
+  overflow: hidden;
+  max-width: 0;
+  max-height: 0;
+  padding: 0;
+  border: none;
+}
+.panel#advfilter > .tabhandle:checked + label + .tabcontent {
+  max-width: 100%;
+  max-height: 100%;
+  padding: .25em .5em;
+  border: solid 1px #FFF;
+}
+
+#advfilter .filter.final {
   width: 16em;
   margin-left: 1em;
 }
 
+#advfilter .quicklinks {max-width: 100%;}
+#advfilter .quicklinks * {
+  display: block;
+  word-wrap: break-word;
+  margin-bottom: .75em;
+}
+
+/* == Thumblist == */
+
 #thumblist {
   width: 100%;
   padding: .5em 0 3em 0;
@@ -157,18 +264,23 @@ a.clearsearch, a.advanced, a.tagger, .pagination_nav {
   text-align: left;
   width: 90%;
   padding: 0 .5em;
-  margin: auto;
+  margin: .5%;
   margin-bottom: .75em;
   vertical-align: top;
   word-wrap: break-word;
 }
-@media (min-width: 480px){#thumblist .thumb{width: 50%;}}
-@media (min-width: 640px){#thumblist .thumb{width: 33%;}}
-@media (min-width: 1024px){#thumblist .thumb{width: 256px;}}
+@media (min-width: 460px){#thumblist .thumb{width: 48%;}}
+@media (min-width: 620px){#thumblist .thumb{width: 32%;}}
+@media (min-width: 1004px){#thumblist .thumb{width: 250px; margin: 2px;}}
 
 #thumblist .thumb img {
   width: 100%;
 }
+#thumblist .thumb h2 {
+  font-size: 1em;
+  font-weight: normal;
+  margin: 0;
+}
 #thumblist .thumb a {
   display: block;
 }
@@ -180,58 +292,84 @@ a.clearsearch, a.advanced, a.tagger, .pagination_nav {
   margin: .75em .5em;
 }
 
-#advfilter { display: none; }
-#advfilter:target {
-  display: block;
-  position: absolute;
-  top: 0;
-}
+/* == Filelist == */
 
-#tagger { display: none; }
-#tagger:target { display: block; z-index: 1; }
-.footer {
-  position: fixed;
-  min-height: 2em;
-  bottom: 0px;
-  width: 100%;
-  border-style: solid none none none;
-}
-
-#videoview a.panel {
-  position: absolute;
-  right: 1em;
-  width: auto;
-  border: none;
-}
-#videoview .video {
+#thumblist .file {
+  color: #000;
   display: inline-block;
-  width: 60%;
+  text-align: left;
+  width: 90%;
+  padding: .5em .5em;
+  margin: .5%;
+  margin-bottom: .75em;
   vertical-align: top;
+  word-wrap: break-word;
 }
-#videoview .video * {
+@media (min-width: 460px){#thumblist .file{width: 48%;}}
+@media (min-width: 620px){#thumblist .file{width: 32%;}}
+@media (min-width: 1004px){#thumblist .file{width: 250px; margin: 2px;}}
+
+#thumblist .file.directory { background-color: #BBD; }
+#thumblist .file.plain { background-color: #111; color: #777; }
+#thumblist .file.video { background-color: #DBB; }
+
+.panel#tagger .newtag select,
+.panel#tagger .newtag .label{
   display: block;
+  width: 10em;
 }
-#videoview .videoinfo {
-  width: 39%;
-  margin-top: 2em;
-}
-#videoview .videoinfo h2 {
-  display: inline;
-} 
-#videoview .videoinfo .meta:after {
-  content: "\A";
-  white-space: pre;
+
+.panel#preferences > fieldset {
+  border: solid 1px;
+  border-radius: .25em;
 }
-#videoview .videoinfo .label {
-  display: block;
-  margin-top: 1em;
+.panel#preferences > input { display: block; }
+
+#videoview h1, 
+#playctl h1 { font-size: 1.25em;}
+#videoview h1, #videoview > a,
+#playctl h1, #playctl > a {
+  display: inline-block;
+  margin-right: 1em;
+  padding: 0; margin: .5em 0;
 }
-#videoview .videoinfo .info.description {
+#videoview video {
   display: block;
-  background-color: #DDF;
+  margin: 0;
+  width: 100%;
 }
-#videoview .videoinfo .edit {
-  width: 100%
+
+#playctl form { text-align: center; }
+#playctl form button {
+  display: inline-block;
+  height: 100%;
+  min-height: 4em;
+  margin: 0 -.75ex .5em 0;
+  background-color: #EEE;
+  border: 1px solid #333;
+  vertical-align: bottom;
+  padding-top: 1em;
+}
+#playctl form button[name="seek"],
+#playctl form button[name="ctl"] { width: 40%;}
+#playctl form button[name="amp"] { width: 40%; margin-top: 2em;}
+#playctl form button[name="vol"] { width: 5%; min-height: 1em;}
+#playctl form button[name="vol"].selected { background-color: #FA6;}
+#playctl form button[name="vol"][value="100"],
+#playctl form button[name="vol"][value="0"] { width: 6%;}
+
+@media (min-width: 460px){
+  #playctl form button {
+    max-width: 4em;
+    min-height: 2em;
+    padding-top: 0em;
+    margin-bottom: 2em;
+  }
+  #playctl form button[name="seek"],
+  #playctl form button[name="ctl"] { width: 16%;}
+  #playctl form button[name="amp"] { width: 15%;}
+  #playctl form button[name="vol"] { width: 3%;}
+  #playctl form button[name="amp"] + br {display: none;}
 }
 EOF