@import "variables"; @import "mixins"; .has-switch { display: inline-block; cursor: pointer; .border-radius(5px); border: 1px solid; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); position: relative; text-align: left; overflow: hidden; line-height: 8px; .user-select(none); vertical-align: middle; min-width: 100px; .transition(~"border-color ease-in-out .15s, box-shadow ease-in-out .15s"); &.switch-mini { min-width: 72px; span, label { padding-bottom: 4px; padding-top: 4px; font-size: 10px; line-height: 9px; } i.switch-mini-icons { height: 1.20em; line-height: 9px; vertical-align: text-top; text-align: center; transform: scale(0.6); margin-top: -1px; margin-bottom: -1px; } } &.switch-small { min-width: 80px; span, label { padding-bottom: 3px; padding-top: 3px; font-size: 12px; line-height: 18px; } } &.switch-large { min-width: 120px; span, label { padding-bottom: 9px; padding-top: 9px; font-size: 16px; line-height: normal; } } &.switch-animate { > div { .transition(left 0.5s); } } &.switch-off { > div { left: -50%; } } &.switch-on { > div { left: 0%; } } &.disabled { .opacity(50); cursor: default !important; span, label { cursor: default !important; } } &:focus { border-color: @btnPrimaryBackground; outline: 0; .box-shadow(~"inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(red(@btnPrimaryBackground), green(@btnPrimaryBackground), blue(@btnPrimaryBackground), .6)"); } > div { display: inline-block; width: 150%; position: relative; top: 0; } input[type=radio], input[type=checkbox] { display: none; } span, label { .box-sizing(border-box); cursor: pointer; position: relative; display: inline-block !important; height: 100%; padding-bottom: 4px; padding-top: 4px; font-size: 14px; line-height: 20px; } label { text-align: center; margin-top: -1px; margin-bottom: -1px; z-index: 100; width: 34%; border-left: 1px solid @btnBorder; border-right: 1px solid @btnBorder; .buttonBackground(@btnBackground, @btnBackgroundHighlight, @grayDark); i { color: #000; text-shadow: 0 1px 0 #fff; line-height: 18px; pointer-events: none; } } span { text-align: center; z-index: 1; width: 33%; &.switch-left { .border-left-radius(4px); } &.switch-right { .buttonBackground(@btnBackgroundHighlight, @btnBackground, @grayDark, 0 1px 1px rgba(255,255,255,.75)); } &.switch-primary, &.switch-left { .buttonBackground(@btnPrimaryBackgroundHighlight, @btnPrimaryBackground); } &.switch-info { .buttonBackground(@btnInfoBackgroundHighlight, @btnInfoBackground); } &.switch-success { .buttonBackground(@btnSuccessBackgroundHighlight, @btnSuccessBackground); } &.switch-warning { .buttonBackground(@btnWarningBackgroundHighlight, @btnWarningBackground); } &.switch-danger { .buttonBackground(@btnDangerBackgroundHighlight, @btnDangerBackground); } &.switch-default { .buttonBackground(@btnBackgroundHighlight, @btnBackground, @grayDark, 0 1px 1px rgba(255,255,255,.75)); } } }