improve scrollbar display: smoothly rounded buttons, dark but visible slider backgrou...
[themes.git] / LCARStrek / global / scrollbars.css
index f327f8676fff18c888c7960bfb3731b4ee4b8fe7..04b58a7b3250d2d46bf2e6bb000150563e3149f2 100644 (file)
  *
  * ***** END LICENSE BLOCK ***** */
 
+/* ===== scrollbars.css =================================================
+  == Styles used by XUL scrollbar-related elements.
+  ======================================================================= */
+
 @namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
+@namespace html url("http://www.w3.org/1999/xhtml"); /* namespace for HTML elements */
 
-/********* XP Scrollbar *********/
+/* ::::: scrollbar ::::: */
 
-scrollbar 
-  {
-    -moz-binding          : url("chrome://global/skin/scrollbarBindings.xml#scrollbar"); 
-    cursor                : default;
-    background-color      : black;
-  }
-  
-/********* XP Scrollbar *********/
+scrollbar {
+  -moz-binding: url("chrome://global/content/bindings/scrollbar.xml#scrollbar");
+  cursor: default;
+  background-color: #000000;
+}
 
-thumb 
-  {
-    -moz-binding          : url("chrome://global/skin/scrollbarBindings.xml#thumbh");
-    background-color      : #9C9CFF;
-    padding               : 1px;
-    list-style-image      : url("chrome://global/skin/scroll-thumb-horiz.gif");
-    -moz-box-pack         : center;
-    -moz-box-align        : center;
-  }
+/* ::::: slider ::::: */
 
-thumb[disabled="true"] {
-    list-style-image      : url("chrome://global/skin/scroll-thumb-horiz-disabled.gif");
+slider {
+  height: 13px;
+  background-color: #794900;
 }
 
-scrollbar[orient="vertical"] > slider > thumb {
-    -moz-binding          : url("chrome://global/skin/scrollbarBindings.xml#thumbv"); 
-    list-style-image      : url("chrome://global/skin/scroll-thumb-vert.gif")
+slider[orient="vertical"] {
+  width: 13px;
 }
 
-scrollbar[orient="vertical"] > slider > thumb[disabled="true"] {
-    list-style-image      : url("chrome://global/skin/scroll-thumb-vert-disabled.gif")
+/* ::::: borders for thumb and buttons ::::: */
+
+thumb,
+scrollbarbutton {
+  border: none;
+  background: transparent 50% 50% no-repeat;
+  padding: 1px;
+  min-width: 13px;
+  min-height: 13px;
 }
 
+/* ::::: thumb ::::: */
+
+thumb {
+  background-color: #9C9CFF;
+  background-image: url("chrome://global/skin/scrollbar/thumb-vert-grip.gif");
+}
+
+thumb[orient="horizontal"] {
+  background-image: url("chrome://global/skin/scrollbar/thumb-horiz-grip.gif");
+}
+
+
 thumb:active,
 thumb:hover:active {
    background-color: #008484;
@@ -79,87 +92,167 @@ thumb:hover:active {
 thumb:hover {
    background-color: #FFCF00;
 }
-  
-/**
- * Scrollbar button
- **/  
-scrollbarbutton 
-  {
-    -moz-binding          : url("chrome://global/skin/scrollbarBindings.xml#scrollbarbutton"); 
-/*    border                : 1px outset white;
-    background-color      : #CCCCCC; */
-  }
 
-.scrollbarbutton-box
-  {
-    padding               : 1px;
-  }   
+thumb[disabled="true"] {
+  background-image: url("chrome://global/skin/scrollbar/thumb-vert-grip-disabled.gif");
+}
 
-scrollbarbutton:hover:active 
-  {
-/*    border-style          : inset; */
-  }
-  
-scrollbarbutton:hover:active > .scrollbarbutton-box
-  {
-    padding               : 2px 0px 0px 2px;
-  }   
+thumb[orient="horizontal"][disabled="true"] {
+  background-image: url("chrome://global/skin/scrollbar/thumb-horiz-grip-disabled.gif");
+}
 
-scrollbarbutton[type="decrement"] 
-  {
-    list-style-image      : url("chrome://global/skin/scroll-left-hover.gif");
-    background-image      : url("chrome://global/skin/scrollbtn-left.gif");
-    margin                : 0px;
-    margin-right          : 3px;
+/* ::::: scrollbar button ::::: */
+
+scrollbarbutton {
+  background-color: #FF9F00;
+}
+
+scrollbarbutton:hover:active,
+scrollbarbutton[active="true"] {
+  padding-top: 2px;
+  padding-bottom: 0px;
+  -moz-padding-start: 2px;
+  -moz-padding-end: 0px;
+}
+
+scrollbarbutton:hover {
+  background-color: #FFCF00;
+}
+
+scrollbarbutton:hover:active {
+  background-color: #FF0000;
+}
+
+scrollbarbutton[disabled="true"] {
+  background-color: #8050B0 !important;
+}
+
+/* XXX - scrollbar.xml always grabs the OS settings and we don't want that */
+scrollbarbutton[sbattr="scrollbar-up-bottom"],
+scrollbarbutton[sbattr="scrollbar-down-top"] {
+  display: none;
+}
+
+/* ::::: square at the corner of two scrollbars ::::: */
+
+scrollcorner {
+  -moz-binding: url("chrome://global/content/bindings/scrollbar.xml#scrollbar-base");
+  cursor: default;
+  background-color: #000000;
+  width: 13px;
+}
+
+/* ..... increment .... */
+
+scrollbarbutton[type="increment"] {
+  background-image: url("chrome://global/skin/scrollbar/arrow-right.png");
+  -moz-border-radius: 0 50% 50% 0;
+  margin: 0px;
+  -moz-margin-start: 3px;
+}
+
+scrollbar[orient="vertical"] > scrollbarbutton[type="increment"] {
+  background-image: url("chrome://global/skin/scrollbar/arrow-down.png");
+  -moz-border-radius: 0 0 50% 50%;
+  margin: 3px 0px 0px;
+}
+
+/* ..... decrement .... */
+
+scrollbarbutton[type="decrement"] {
+  background-image: url("chrome://global/skin/scrollbar/arrow-left.png");
+  -moz-border-radius: 50% 0 0 50%;
+  margin: 0px;
+  -moz-margin-end: 3px;
+}
+
+scrollbar[orient="vertical"] > scrollbarbutton[type="decrement"] {
+  background-image: url("chrome://global/skin/scrollbar/arrow-up.png");
+  -moz-border-radius: 50% 50% 0 0;
+  margin: 0px 0px 3px;
+}
+
+/* :::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
+/* ::::::::::::::::::::: MEDIA PRINT :::::::::::::::::::::: */
+/* :::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
+@media print {
+  /* ::::: scrollbar ::::: */
+
+  html|div scrollbar {
+    -moz-appearance: scrollbartrack-horizontal;
+    -moz-binding: url("chrome://global/content/bindings/scrollbar.xml#scrollbar");
+    cursor: default;
+    background: url("chrome://global/skin/scrollbar/slider.gif") scrollbar;
   }
 
-scrollbarbutton[type="decrement"][disabled="true"] 
+  html|div scrollbar[orient="vertical"]
   {
-    list-style-image      : url("chrome://global/skin/scroll-left-disabled.gif") ;
+     -moz-appearance: scrollbartrack-vertical;
   }
 
-scrollbarbutton[type="increment"] 
-  {
-    list-style-image      : url("chrome://global/skin/scroll-right-hover.gif");
-    background-image      : url("chrome://global/skin/scrollbtn-right.gif");
-    margin                : 0px;
-    margin-left           : 3px;
+  /* ::::: borders for thumb and buttons ::::: */
+
+  html|div thumb,
+  html|div scrollbarbutton {
+    border: 2px solid;
+    -moz-border-top-colors: ThreeDLightShadow ThreeDHighlight;
+    -moz-border-right-colors: ThreeDDarkShadow ThreeDShadow;
+    -moz-border-bottom-colors: ThreeDDarkShadow ThreeDShadow;
+    -moz-border-left-colors: ThreeDLightShadow ThreeDHighlight;
+    background-color: -moz-Dialog;
   }
 
+  /* ::::: thumb (horizontal) ::::: */
 
-scrollbarbutton[type="increment"][disabled="true"] 
-  {
-    list-style-image      : url("chrome://global/skin/scroll-right-disabled.gif");
+  html|div thumb {
+    -moz-appearance: scrollbarthumb-vertical;
+    min-height: 8px;
+  }
+
+  html|div thumb[orient="horizontal"] {
+    -moz-appearance: scrollbarthumb-horizontal;
+    min-width: 8px;
   }
 
+  /* ::::: scrollbar button ::::: */
 
-scrollbarbutton[type="decrement"][sborient="vertical"]
-  {
-    list-style-image      : url("chrome://global/skin/scroll-up-hover.gif");
-    background-image      : url("chrome://global/skin/scrollbtn-up.gif");
-    margin                : 0px;
-    margin-bottom         : 3px;
+  html|div scrollbarbutton {
+    background: -moz-Dialog no-repeat 50% 50%;
+    min-width: 16px;
+    min-height: 16px;
   }
 
-scrollbarbutton[type="decrement"][disabled="true"][sborient="vertical"]
-  {
-    list-style-image      : url("chrome://global/skin/scroll-up-disabled.gif") ;
+  html|div scrollbarbutton:hover:active,
+  html|div scrollbarbutton[active="true"] {
+    -moz-border-top-colors: ThreeDShadow -moz-Dialog;
+    -moz-border-right-colors: ThreeDShadow -moz-Dialog;
+    -moz-border-bottom-colors: ThreeDShadow -moz-Dialog;
+    -moz-border-left-colors: ThreeDShadow -moz-Dialog;
+    background-position: 60% 60%;
   }
 
-scrollbarbutton[type="increment"][sborient="vertical"]
-  {
-    list-style-image      : url("chrome://global/skin/scroll-down-hover.gif");
-    background-image      : url("chrome://global/skin/scrollbtn-down.gif");
-    margin                : 0px;
-    margin-top            : 3px;
+  /* ..... increment .... */
+
+  html|div scrollbarbutton[type="increment"] {
+    -moz-appearance: scrollbarbutton-right;
+    background-image: url("chrome://global/skin/arrow/arrow-rit.gif")
   }
 
-scrollbarbutton[type="increment"][disabled="true"][sborient="vertical"]
-  {
-    list-style-image      : url("chrome://global/skin/scroll-down-disabled.gif") ;
+  html|div scrollbar[orient="vertical"] > scrollbarbutton[type="increment"] {
+    -moz-appearance: scrollbarbutton-down;
+    background-image: url("chrome://global/skin/arrow/arrow-dn.gif")
   }
 
-slider 
-  {
-    background-color      : #000000;
+  /* ..... decrement .... */
+
+  html|div scrollbarbutton[type="decrement"] {
+    -moz-appearance: scrollbarbutton-left;
+     background-image: url("chrome://global/skin/arrow/arrow-lft.gif")
   }
+
+  html|div scrollbar[orient="vertical"] > scrollbarbutton[type="decrement"] {
+    -moz-appearance: scrollbarbutton-up;
+     background-image: url("chrome://global/skin/arrow/arrow-up.gif")
+  }
+
+}