/** * @copyright 2010-2015, The Titon Project * @license http://opensource.org/licenses/BSD-3-Clause * @link http://titon.io */ @import "../common"; @include export("switch") { #{$switch-class} { @include reset-inline-block; font-size: 0; width: 100px; cursor: pointer; &.is-disabled { opacity: $disabled-opacity; } input { display: none; &:checked + #{$switch-class-bar} { #{$switch-class-toggle} { left: 50%; } &::before { opacity: 1; } &::after { opacity: 0; } } } @include is-small { width: 70px; #{$switch-class-bar} { font-size: $small-size; &::before, &::after { padding: $small-padding; } } #{$switch-class-toggle} { padding: $small-padding; } } @include is-large { width: 130px; #{$switch-class-bar} { font-size: $large-size; &::before, &::after { padding: $large-padding; } } #{$switch-class-toggle} { padding: $large-padding; } } } #{$switch-class-bar} { display: block; position: relative; font-size: $medium-size; transition: background $switch-transition; text-align: left; &::before, &::after { position: absolute; padding: $medium-padding; top: 0; opacity: 1; z-index: 1; transition: opacity $switch-transition; } &::before { left: 0; opacity: 0; content: attr(data-switch-on); } &::after { right: 0; content: attr(data-switch-off); } //----- Effects -----// &#{$shape-round-class} { #{$switch-class-toggle} { border-radius: $round - 0.02; } } @if index($switch-effects, "pill") { &#{$shape-pill-class} { border-radius: $pill; #{$switch-class-toggle} { border-radius: $pill; } } } } #{$switch-class-toggle} { @include reset-inline-block; padding: $medium-padding; width: 50%; z-index: 2; left: 0; user-select: none; transition: left $switch-transition; &::before { content: "\00A0"; } // NBSP } //-------------------- Modifiers --------------------// @if index($switch-modifiers, "stacked") { #{$switch-class-modifier-stacked} { #{$switch-class-bar} { &::before, &::after { z-index: 3; opacity: 1 !important; } } } } }