github.com/fanux/shipyard@v0.0.0-20161009071005-6515ce223235/controller/static/semantic/src/definitions/elements/loader.less (about) 1 /*! 2 * # Semantic UI - Loader 3 * http://github.com/semantic-org/semantic-ui/ 4 * 5 * 6 * Copyright 2014 Contributors 7 * Released under the MIT license 8 * http://opensource.org/licenses/MIT 9 * 10 */ 11 /******************************* 12 Theme 13 *******************************/ 14 15 @type : 'element'; 16 @element : 'loader'; 17 18 @import (multiple) '../../theme.config'; 19 20 /******************************* 21 Loader 22 *******************************/ 23 24 25 /* Standard Size */ 26 .ui.loader { 27 display: none; 28 position: absolute; 29 top: @loaderTopOffset; 30 left: @loaderLeftOffset; 31 margin: 0px; 32 text-align: center; 33 z-index: 1000; 34 transform: translateX(-50%) translateY(-50%); 35 } 36 37 /* Static Shape */ 38 .ui.loader:before { 39 position: absolute; 40 content: ''; 41 top: 0%; 42 left: 50%; 43 width: 100%; 44 height: 100%; 45 46 border-radius: @circularRadius; 47 border: @loaderLineWidth solid @loaderFillColor; 48 } 49 50 /* Active Shape */ 51 .ui.loader:after { 52 position: absolute; 53 content: ''; 54 top: 0%; 55 left: 50%; 56 width: 100%; 57 height: 100%; 58 59 animation: loader @loaderSpeed linear; 60 animation-iteration-count: infinite; 61 62 border-radius: @circularRadius; 63 64 border-color: @shapeBorderColor; 65 border-style: solid; 66 border-width: @loaderLineWidth; 67 68 box-shadow: 0px 0px 0px 1px transparent; 69 } 70 71 /* Active Animation */ 72 @keyframes loader { 73 from { 74 transform: rotate(0deg); 75 } 76 to { 77 transform: rotate(360deg); 78 } 79 } 80 81 /* Sizes */ 82 .ui.loader:before, 83 .ui.loader:after { 84 width: @medium; 85 height: @medium; 86 margin: @mediumOffset; 87 } 88 .ui.mini.loader:before, 89 .ui.mini.loader:after { 90 width: @mini; 91 height: @mini; 92 margin: @miniOffset; 93 } 94 .ui.small.loader:before, 95 .ui.small.loader:after { 96 width: @small; 97 height: @small; 98 margin: @smallOffset; 99 } 100 .ui.large.loader:before, 101 .ui.large.loader:after { 102 width: @large; 103 height: @large; 104 margin: @largeOffset; 105 } 106 107 /*------------------- 108 Coupling 109 --------------------*/ 110 111 /* Show inside active dimmer */ 112 .ui.dimmer .loader { 113 display: block; 114 } 115 116 /* Black Dimmer */ 117 .ui.dimmer .ui.loader { 118 color: @invertedLoaderTextColor; 119 } 120 .ui.dimmer .ui.loader:before { 121 border-color: @invertedLoaderFillColor; 122 } 123 .ui.dimmer .ui.loader:after { 124 border-color: @invertedShapeBorderColor; 125 } 126 127 /* White Dimmer (Inverted) */ 128 .ui.inverted.dimmer .ui.loader { 129 color: @loaderTextColor; 130 } 131 .ui.inverted.dimmer .ui.loader:before { 132 border-color: @loaderFillColor; 133 } 134 .ui.inverted.dimmer .ui.loader:after { 135 border-color: @shapeBorderColor; 136 } 137 138 /******************************* 139 Types 140 *******************************/ 141 142 143 /*------------------- 144 Text 145 --------------------*/ 146 147 .ui.text.loader { 148 width: auto !important; 149 height: auto !important; 150 text-align: center; 151 font-style: normal; 152 } 153 154 155 /******************************* 156 States 157 *******************************/ 158 159 .ui.indeterminate.loader:after { 160 animation-direction: @indeterminateDirection; 161 animation-duration: @indeterminateSpeed; 162 } 163 164 .ui.loader.active, 165 .ui.loader.visible { 166 display: block; 167 } 168 .ui.loader.disabled, 169 .ui.loader.hidden { 170 display: none; 171 } 172 173 /******************************* 174 Variations 175 *******************************/ 176 177 178 /*------------------- 179 Sizes 180 --------------------*/ 181 182 183 /* Loader */ 184 .ui.inverted.dimmer .ui.mini.loader, 185 .ui.mini.loader { 186 width: @mini; 187 height: @mini; 188 font-size: @miniFontSize; 189 } 190 .ui.inverted.dimmer .ui.small.loader, 191 .ui.small.loader { 192 width: @small; 193 height: @small; 194 font-size: @smallFontSize; 195 } 196 .ui.inverted.dimmer .ui.loader, 197 .ui.loader { 198 width: @medium; 199 height: @medium; 200 font-size: @mediumFontSize; 201 } 202 .ui.inverted.dimmer .ui.loader.large, 203 .ui.loader.large { 204 width: @large; 205 height: @large; 206 font-size: @largeFontSize; 207 } 208 209 /* Text Loader */ 210 .ui.mini.text.loader { 211 min-width: @mini; 212 padding-top: (@mini + @textDistance); 213 } 214 .ui.small.text.loader { 215 min-width: @small; 216 padding-top: (@small + @textDistance); 217 } 218 .ui.text.loader { 219 min-width: @medium; 220 padding-top: (@medium + @textDistance); 221 } 222 .ui.large.text.loader { 223 min-width: @large; 224 padding-top: (@large + @textDistance); 225 } 226 227 228 /*------------------- 229 Inverted 230 --------------------*/ 231 232 .ui.inverted.loader { 233 color: @invertedLoaderTextColor 234 } 235 .ui.inverted.loader:before { 236 border-color: @invertedLoaderFillColor; 237 } 238 .ui.inverted.loader:after { 239 border-top-color: @invertedLoaderLineColor; 240 } 241 242 /*------------------- 243 Inline 244 --------------------*/ 245 246 .ui.inline.loader { 247 position: relative; 248 vertical-align: @inlineVerticalAlign; 249 margin: @inlineMargin; 250 left: 0em; 251 top: 0em; 252 transform: none; 253 } 254 255 .ui.inline.loader.active, 256 .ui.inline.loader.visible { 257 display: inline-block; 258 } 259 260 /* Centered Inline */ 261 .ui.centered.inline.loader.active, 262 .ui.centered.inline.loader.visible { 263 display: block; 264 } 265 266 267 .loadUIOverrides();