annotate core/misc/dropbutton/dropbutton.css @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents af1871eacc83
children
rev   line source
Chris@0 1
Chris@0 2 /**
Chris@0 3 * @file
Chris@0 4 * Base styles for dropbuttons.
Chris@0 5 */
Chris@0 6
Chris@0 7 /**
Chris@0 8 * When a dropbutton has only one option, it is simply a button.
Chris@0 9 */
Chris@0 10 .dropbutton-wrapper,
Chris@0 11 .dropbutton-wrapper div {
Chris@0 12 box-sizing: border-box;
Chris@0 13 }
Chris@0 14 .js .dropbutton-wrapper,
Chris@0 15 .js .dropbutton-widget {
Chris@18 16 position: relative;
Chris@0 17 display: block;
Chris@0 18 }
Chris@0 19
Chris@0 20 @media screen and (max-width: 600px) {
Chris@0 21 .js .dropbutton-wrapper {
Chris@0 22 width: 100%;
Chris@0 23 }
Chris@0 24 }
Chris@0 25
Chris@0 26 /* Splitbuttons */
Chris@0 27 @media screen and (min-width: 600px) {
Chris@0 28 .form-actions .dropbutton-wrapper {
Chris@0 29 float: left; /* LTR */
Chris@0 30 }
Chris@0 31 [dir="rtl"] .form-actions .dropbutton-wrapper {
Chris@0 32 float: right;
Chris@0 33 }
Chris@0 34 }
Chris@0 35 .js .form-actions .dropbutton-widget {
Chris@0 36 position: static;
Chris@0 37 }
Chris@0 38 .js td .dropbutton-widget {
Chris@0 39 position: absolute;
Chris@0 40 }
Chris@0 41 .js td .dropbutton-wrapper {
Chris@0 42 min-height: 2em;
Chris@0 43 }
Chris@0 44 .js td .dropbutton-multiple {
Chris@18 45 max-width: 100%;
Chris@18 46 margin-right: 2em; /* LTR */
Chris@0 47 padding-right: 10em; /* LTR */
Chris@0 48 }
Chris@0 49 [dir="rtl"].js td .dropbutton-multiple {
Chris@18 50 margin-right: 0;
Chris@18 51 margin-left: 2em;
Chris@0 52 padding-right: 0;
Chris@0 53 padding-left: 10em;
Chris@0 54 }
Chris@0 55 .js td .dropbutton-multiple .dropbutton-action a,
Chris@0 56 .js td .dropbutton-multiple .dropbutton-action input,
Chris@0 57 .js td .dropbutton-multiple .dropbutton-action button {
Chris@0 58 width: auto;
Chris@0 59 }
Chris@0 60
Chris@0 61 /* UL styles are over-scoped in core, so this selector needs weight parity. */
Chris@0 62 .js .dropbutton-widget .dropbutton {
Chris@18 63 overflow: hidden;
Chris@18 64 margin: 0;
Chris@18 65 padding: 0;
Chris@18 66 list-style-type: none;
Chris@0 67 list-style-image: none;
Chris@0 68 }
Chris@0 69 .js .dropbutton li,
Chris@0 70 .js .dropbutton a {
Chris@0 71 display: block;
Chris@0 72 outline: none;
Chris@0 73 }
Chris@0 74
Chris@0 75 .js .dropbutton li:hover,
Chris@0 76 .js .dropbutton li:focus,
Chris@0 77 .js .dropbutton a:hover,
Chris@0 78 .js .dropbutton a:focus {
Chris@0 79 outline: initial;
Chris@0 80 }
Chris@0 81
Chris@0 82 /**
Chris@0 83 * The dropbutton styling.
Chris@0 84 *
Chris@0 85 * A dropbutton is a widget that displays a list of action links as a button
Chris@0 86 * with a primary action. Secondary actions are hidden behind a click on a
Chris@0 87 * twisty arrow.
Chris@0 88 *
Chris@0 89 * The arrow is created using border on a zero-width, zero-height span.
Chris@0 90 * The arrow inherits the link color, but can be overridden with border colors.
Chris@0 91 */
Chris@0 92 .js .dropbutton-multiple .dropbutton-widget {
Chris@0 93 padding-right: 2em; /* LTR */
Chris@0 94 }
Chris@0 95 .js[dir="rtl"] .dropbutton-multiple .dropbutton-widget {
Chris@18 96 padding-right: 0;
Chris@0 97 padding-left: 2em;
Chris@0 98 }
Chris@0 99 .dropbutton-multiple.open,
Chris@0 100 .dropbutton-multiple.open .dropbutton-widget {
Chris@0 101 max-width: none;
Chris@0 102 }
Chris@0 103 .dropbutton-multiple.open {
Chris@0 104 z-index: 100;
Chris@0 105 }
Chris@0 106 .dropbutton-multiple .dropbutton .secondary-action {
Chris@0 107 display: none;
Chris@0 108 }
Chris@0 109 .dropbutton-multiple.open .dropbutton .secondary-action {
Chris@0 110 display: block;
Chris@0 111 }
Chris@0 112 .dropbutton-toggle {
Chris@18 113 position: absolute;
Chris@18 114 top: 0;
Chris@18 115 right: 0; /* LTR */
Chris@0 116 bottom: 0;
Chris@0 117 display: block;
Chris@18 118 width: 2em;
Chris@18 119 white-space: nowrap;
Chris@0 120 text-indent: 110%;
Chris@0 121 }
Chris@0 122 [dir="rtl"] .dropbutton-toggle {
Chris@18 123 right: auto;
Chris@0 124 left: 0;
Chris@0 125 }
Chris@0 126 .dropbutton-toggle button {
Chris@0 127 display: block;
Chris@18 128 width: 100%;
Chris@0 129 height: 100%;
Chris@0 130 margin: 0;
Chris@0 131 padding: 0;
Chris@18 132 cursor: pointer;
Chris@18 133 border: 0;
Chris@18 134 background: none;
Chris@0 135 }
Chris@0 136 .dropbutton-toggle button:hover,
Chris@0 137 .dropbutton-toggle button:focus {
Chris@0 138 outline: initial;
Chris@0 139 }
Chris@0 140 .dropbutton-arrow {
Chris@18 141 position: absolute;
Chris@18 142 top: 50%;
Chris@18 143 right: 40%; /* 0.6667em; */ /* LTR */
Chris@18 144 display: block;
Chris@18 145 overflow: hidden;
Chris@18 146 width: 0;
Chris@18 147 height: 0;
Chris@18 148 margin-top: -0.1666em;
Chris@18 149 border-width: 0.3333em 0.3333em 0;
Chris@18 150 border-style: solid;
Chris@18 151 border-right-color: transparent;
Chris@0 152 border-bottom-color: transparent;
Chris@0 153 border-left-color: transparent;
Chris@0 154 line-height: 0;
Chris@0 155 }
Chris@0 156 [dir="rtl"] .dropbutton-arrow {
Chris@18 157 right: auto;
Chris@0 158 left: 0.6667em;
Chris@0 159 }
Chris@0 160 .dropbutton-multiple.open .dropbutton-arrow {
Chris@18 161 top: 0.6667em;
Chris@18 162 border-top-color: transparent;
Chris@0 163 border-bottom: 0.3333em solid;
Chris@0 164 }