123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180 |
- /**
- * Checkbox
- * --------------------------------------------------
- */
- .checkbox {
- // set the color defaults
- @include checkbox-style($checkbox-off-border-default, $checkbox-on-bg-default, $checkbox-on-border-default);
- position: relative;
- display: inline-block;
- padding: ($checkbox-height / 4) ($checkbox-width / 4);
- cursor: pointer;
- }
- .checkbox-light {
- @include checkbox-style($checkbox-off-border-light, $checkbox-on-bg-light, $checkbox-off-border-light);
- }
- .checkbox-stable {
- @include checkbox-style($checkbox-off-border-stable, $checkbox-on-bg-stable, $checkbox-off-border-stable);
- }
- .checkbox-positive {
- @include checkbox-style($checkbox-off-border-positive, $checkbox-on-bg-positive, $checkbox-off-border-positive);
- }
- .checkbox-calm {
- @include checkbox-style($checkbox-off-border-calm, $checkbox-on-bg-calm, $checkbox-off-border-calm);
- }
- .checkbox-assertive {
- @include checkbox-style($checkbox-off-border-assertive, $checkbox-on-bg-assertive, $checkbox-off-border-assertive);
- }
- .checkbox-balanced {
- @include checkbox-style($checkbox-off-border-balanced, $checkbox-on-bg-balanced, $checkbox-off-border-balanced);
- }
- .checkbox-energized{
- @include checkbox-style($checkbox-off-border-energized, $checkbox-on-bg-energized, $checkbox-off-border-energized);
- }
- .checkbox-royal {
- @include checkbox-style($checkbox-off-border-royal, $checkbox-on-bg-royal, $checkbox-off-border-royal);
- }
- .checkbox-dark {
- @include checkbox-style($checkbox-off-border-dark, $checkbox-on-bg-dark, $checkbox-off-border-dark);
- }
- .checkbox input:disabled:before,
- .checkbox input:disabled + .checkbox-icon:before {
- border-color: $checkbox-off-border-light;
- }
- .checkbox input:disabled:checked:before,
- .checkbox input:disabled:checked + .checkbox-icon:before {
- background: $checkbox-on-bg-light;
- }
- .checkbox.checkbox-input-hidden input {
- display: none !important;
- }
- .checkbox input,
- .checkbox-icon {
- position: relative;
- width: $checkbox-width;
- height: $checkbox-height;
- display: block;
- border: 0;
- background: transparent;
- cursor: pointer;
- -webkit-appearance: none;
- &:before {
- // what the checkbox looks like when its not checked
- display: table;
- width: 100%;
- height: 100%;
- border-width: $checkbox-border-width;
- border-style: solid;
- border-radius: $checkbox-border-radius;
- background: $checkbox-off-bg-color;
- content: ' ';
- @include transition(background-color 20ms ease-in-out);
- }
- }
- .checkbox input:checked:before,
- input:checked + .checkbox-icon:before {
- border-width: $checkbox-border-width + 1;
- }
- // the checkmark within the box
- .checkbox input:after,
- .checkbox-icon:after {
- @include transition(opacity .05s ease-in-out);
- @include rotate(-45deg);
- position: absolute;
- top: 33%;
- left: 25%;
- display: table;
- width: ($checkbox-width / 2);
- height: ($checkbox-width / 4) - 1;
- border: $checkbox-check-width solid $checkbox-check-color;
- border-top: 0;
- border-right: 0;
- content: ' ';
- opacity: 0;
- }
- .platform-android .checkbox-platform input:before,
- .platform-android .checkbox-platform .checkbox-icon:before,
- .checkbox-square input:before,
- .checkbox-square .checkbox-icon:before {
- border-radius: 2px;
- width: 72%;
- height: 72%;
- margin-top: 14%;
- margin-left: 14%;
- border-width: 2px;
- }
- .platform-android .checkbox-platform input:after,
- .platform-android .checkbox-platform .checkbox-icon:after,
- .checkbox-square input:after,
- .checkbox-square .checkbox-icon:after {
- border-width: 2px;
- top: 19%;
- left: 25%;
- width: ($checkbox-width / 2) - 1;
- height: 7px;
- }
- .platform-android .item-checkbox-right .checkbox-square .checkbox-icon::after {
- top: 31%;
- }
- .grade-c .checkbox input:after,
- .grade-c .checkbox-icon:after {
- @include rotate(0);
- top: 3px;
- left: 4px;
- border: none;
- color: $checkbox-check-color;
- content: '\2713';
- font-weight: bold;
- font-size: 20px;
- }
- // what the checkmark looks like when its checked
- .checkbox input:checked:after,
- input:checked + .checkbox-icon:after {
- opacity: 1;
- }
- // make sure item content have enough padding on left to fit the checkbox
- .item-checkbox {
- padding-left: ($item-padding * 2) + $checkbox-width;
- &.active {
- box-shadow: none;
- }
- }
- // position the checkbox to the left within an item
- .item-checkbox .checkbox {
- position: absolute;
- top: 50%;
- right: $item-padding / 2;
- left: $item-padding / 2;
- z-index: $z-index-item-checkbox;
- margin-top: (($checkbox-height + ($checkbox-height / 2)) / 2) * -1;
- }
- .item-checkbox.item-checkbox-right {
- padding-right: ($item-padding * 2) + $checkbox-width;
- padding-left: $item-padding;
- }
- .item-checkbox-right .checkbox input,
- .item-checkbox-right .checkbox-icon {
- float: right;
- }
|