This commit is contained in:
Kevin Ross 2015-11-21 15:36:03 -06:00
parent a3fc96318d
commit bb4a16657f
16 changed files with 3250 additions and 6053 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

1200
dist/css/material.css vendored

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,148 +1,125 @@
// This file has been autogenerated by grunt task lessToSass. Any changes will be overwritten. // This file has been autogenerated by grunt task lessToSass. Any changes will be overwritten.
// http://www.google.com/design/spec/components/selection-controls.html#selection-controls-checkbox // http://www.google.com/design/spec/components/selection-controls.html#selection-controls-checkbox
.form-horizontal .checkbox {
padding-top: 20px;
}
@mixin form-group-checkbox-variant($placeholder-font-size, $line-height){
.checkbox {
// Label is set in _inputs.less
}
}
.form-group { .form-group {
}
//// default label size/location .checkbox {
@include form-group-checkbox-variant($mdb-input-font-size-base, $mdb-input-line-height-base); label {
cursor: pointer;
// sm label size/location padding-left: 0; // Reset for Bootstrap rule
&.form-group-sm { color: $mdb-checkbox-label-color;
@include form-group-checkbox-variant($mdb-input-font-size-small, $mdb-input-line-height-small);
} }
// lg label size/location // Hide native checkbox
&.form-group-lg { input[type=checkbox] {
@include form-group-checkbox-variant($mdb-input-font-size-large, $mdb-input-line-height-large); opacity: 0;
position: absolute;
margin: 0;
z-index: -1;
width: 0;
height: 0;
overflow: hidden;
left: 0;
pointer-events: none;
} }
.checkbox { .checkbox-material {
label { vertical-align: middle;
cursor: pointer; position: relative;
padding-left: 0; // Reset for Bootstrap rule top: 3px;
color: $mdb-checkbox-label-color; &:before { // FIXME: document why this is necessary (doesn't seem to be on chrome)
display: block;
position: absolute;
left: 0;
content: "";
background-color: rgba(0,0,0,.84);
height: $mdb-checkbox-size;
width: $mdb-checkbox-size;
border-radius: 100%;
z-index: 1;
opacity: 0;
margin: 0;
transform: scale3d(2.3, 2.3, 1);
} }
// Hide native checkbox .check {
input[type=checkbox] { position: relative;
opacity: 0; display: inline-block;
width: $mdb-checkbox-size;
height: $mdb-checkbox-size;
border: 2px solid $mdb-checkbox-border-color;
border-radius: 2px;
overflow: hidden;
z-index: 1;
}
.check:before {
position: absolute; position: absolute;
margin: 0; content: "";
z-index: -1; transform: rotate(45deg);
display: block;
margin-top: -4px;
margin-left: 6px;
width: 0; width: 0;
height: 0; height: 0;
overflow: hidden;
left: 0;
pointer-events: none;
}
.checkbox-material {
vertical-align: middle;
position: relative;
top: 3px;
&:before { // FIXME: document why this is necessary (doesn't seem to be on chrome)
display: block;
position: absolute;
left: 0;
content: "";
background-color: rgba(0,0,0,.84);
height: $mdb-checkbox-size;
width: $mdb-checkbox-size;
border-radius: 100%;
z-index: 1;
opacity: 0;
margin: 0;
transform: scale3d(2.3, 2.3, 1);
}
.check {
position: relative;
display: inline-block;
width: $mdb-checkbox-size;
height: $mdb-checkbox-size;
border: 2px solid $mdb-checkbox-border-color;
border-radius: 2px;
overflow: hidden;
z-index: 1;
}
.check:before {
position: absolute;
content: "";
transform: rotate(45deg);
display: block;
margin-top: -4px;
margin-left: 6px;
width: 0;
height: 0;
box-shadow:
0 0 0 0,
0 0 0 0,
0 0 0 0,
0 0 0 0,
0 0 0 0,
0 0 0 0,
0 0 0 0 inset;
animation: checkbox-off $mdb-checkbox-animation-check forwards;
}
}
input[type=checkbox]:focus + .checkbox-material .check:after {
opacity: 0.2;
}
input[type=checkbox]:checked + .checkbox-material .check:before {
box-shadow: box-shadow:
0 0 0 10px, 0 0 0 0,
10px -10px 0 10px, 0 0 0 0,
32px 0px 0 20px, 0 0 0 0,
0px 32px 0 20px, 0 0 0 0,
-5px 5px 0 10px, 0 0 0 0,
20px -12px 0 11px; 0 0 0 0,
animation: checkbox-on $mdb-checkbox-animation-check forwards; 0 0 0 0 inset;
animation: checkbox-off $mdb-checkbox-animation-check forwards;
} }
input[type=checkbox]:not(:checked) + .checkbox-material:before {
animation: rippleOff $mdb-checkbox-animation-ripple;
}
input[type=checkbox]:checked + .checkbox-material:before {
animation: rippleOn $mdb-checkbox-animation-ripple;
}
// Ripple effect on click
input[type=checkbox]:not(:checked) + .checkbox-material .check:after {
animation: rippleOff $mdb-checkbox-animation-ripple forwards;
}
input[type=checkbox]:checked + .checkbox-material .check:after {
animation: rippleOn $mdb-checkbox-animation-ripple forwards;
}
// Style for disabled inputs
fieldset[disabled] &,
fieldset[disabled] & input[type=checkbox],
input[type=checkbox][disabled]:not(:checked) ~ .checkbox-material .check:before,
input[type=checkbox][disabled]:not(:checked) ~ .checkbox-material .check,
input[type=checkbox][disabled] + .circle {
opacity: 0.5;
}
input[type=checkbox][disabled] + .checkbox-material .check:after {
background-color: $lightbg-text;
transform: rotate(-45deg);
}
@include variations(unquote(" input[type=checkbox]:checked + .checkbox-material .check:after"), background-color, $brand-success);
@include variations(unquote(" input[type=checkbox]:checked + .checkbox-material .check:before"), color, $mdb-checkbox-checked-color);
@include variations(unquote(" input[type=checkbox]:checked + .checkbox-material .check"), color, $mdb-checkbox-checked-color);
@include variations(unquote(" input[type=checkbox]:checked + .checkbox-material .check"), border-color, $mdb-checkbox-checked-color);
} }
input[type=checkbox]:focus + .checkbox-material .check:after {
opacity: 0.2;
}
input[type=checkbox]:checked + .checkbox-material .check:before {
box-shadow:
0 0 0 10px,
10px -10px 0 10px,
32px 0px 0 20px,
0px 32px 0 20px,
-5px 5px 0 10px,
20px -12px 0 11px;
animation: checkbox-on $mdb-checkbox-animation-check forwards;
}
input[type=checkbox]:not(:checked) + .checkbox-material:before {
animation: rippleOff $mdb-checkbox-animation-ripple;
}
input[type=checkbox]:checked + .checkbox-material:before {
animation: rippleOn $mdb-checkbox-animation-ripple;
}
// Ripple effect on click
input[type=checkbox]:not(:checked) + .checkbox-material .check:after {
animation: rippleOff $mdb-checkbox-animation-ripple forwards;
}
input[type=checkbox]:checked + .checkbox-material .check:after {
animation: rippleOn $mdb-checkbox-animation-ripple forwards;
}
// Style for disabled inputs
fieldset[disabled] &,
fieldset[disabled] & input[type=checkbox],
input[type=checkbox][disabled]:not(:checked) ~ .checkbox-material .check:before,
input[type=checkbox][disabled]:not(:checked) ~ .checkbox-material .check,
input[type=checkbox][disabled] + .circle {
opacity: 0.5;
}
input[type=checkbox][disabled] + .checkbox-material .check:after {
background-color: $lightbg-text;
transform: rotate(-45deg);
}
@include variations(unquote(" input[type=checkbox]:checked + .checkbox-material .check:after"), background-color, $brand-success);
@include variations(unquote(" input[type=checkbox]:checked + .checkbox-material .check:before"), color, $mdb-checkbox-checked-color);
@include variations(unquote(" input[type=checkbox]:checked + .checkbox-material .check"), color, $mdb-checkbox-checked-color);
@include variations(unquote(" input[type=checkbox]:checked + .checkbox-material .check"), border-color, $mdb-checkbox-checked-color);
} }
@keyframes checkbox-on { @keyframes checkbox-on {

View File

@ -10,6 +10,10 @@
padding-top: 0px; padding-top: 0px;
} }
.radio {
margin-bottom: 10px;
}
label { label {
text-align: right; text-align: right;
} }

View File

@ -3,7 +3,7 @@
@import '_inputs-size'; @import '_inputs-size';
// must be broken out for reuse - webkit selector breaks firefox // must be broken out for reuse - webkit selector breaks firefox
@mixin label-position($label-top, $static-font-size, $static-line-height){ @mixin label-static($label-top, $static-font-size, $static-line-height){
label.control-label { label.control-label {
top: $label-top; top: $label-top;
left: 0; left: 0;
@ -13,6 +13,45 @@
} }
} }
@mixin label-size-variant($placeholder-font-size, $vertical-padding, $line-height, $static-font-size, $static-line-height, $help-block-font-size){
.form-control {
@include material-placeholder {
font-size: $placeholder-font-size;
line-height: $line-height;
color: $mdb-input-placeholder-color;
font-weight: 400;
}
// margin-bottom must be specified to give help-block vertical space.
// $see also form-group padding-bottom (and size variants) re: collapsible margins. These work together.
margin-bottom: $vertical-padding;
}
// generic labels used anywhere in the form (not control-label)
.checkbox label,
.radio label,
label {
font-size: $placeholder-font-size;
line-height: $line-height;
color: $mdb-input-placeholder-color;
font-weight: 400;
}
// smaller focused or static size
label.control-label {
font-size: $static-font-size;
line-height: $static-line-height;
color: $mdb-input-placeholder-color;
font-weight: 400;
margin: 16px 0 0 0; // std and lg
}
.help-block {
margin-top: 0px; // allow the input margin to set-off the top of the help-block
font-size: $help-block-font-size;
}
}
@mixin form-group-validation-state($name, $color){ @mixin form-group-validation-state($name, $color){
&.#{$name} { // e.g. has-error &.#{$name} { // e.g. has-error
@ -29,7 +68,7 @@
} }
} }
@mixin form-group-size-variant($placeholder-font-size, $label-top-margin, $vertical-padding, $line-height, $label-as-placeholder-shim){ @mixin form-group-size-variant($parent, $placeholder-font-size, $label-top-margin, $vertical-padding, $line-height, $label-as-placeholder-shim){
$static-font-size: ceil(($mdb-label-static-size-ratio * $placeholder-font-size)) !default; $static-font-size: ceil(($mdb-label-static-size-ratio * $placeholder-font-size)) !default;
$static-line-height: ($mdb-label-static-size-ratio * $line-height) !default; $static-line-height: ($mdb-label-static-size-ratio * $line-height) !default;
@ -39,128 +78,109 @@
$help-block-font-size: ceil(($mdb-help-block-size-ratio * $placeholder-font-size)) !default; $help-block-font-size: ceil(($mdb-help-block-size-ratio * $placeholder-font-size)) !default;
$help-block-line-height: ($mdb-help-block-size-ratio * $line-height) !default; $help-block-line-height: ($mdb-help-block-size-ratio * $line-height) !default;
// form-group margin-top must be large enough for the label and the label's top padding since label is absolutely positioned // this is outside a form-group
margin: ($label-top-margin + $static-font-size) 0 0 0; @if not $parent {
@include label-size-variant($placeholder-font-size, $vertical-padding, $line-height, $static-font-size, $static-line-height, $help-block-font-size);
.form-control {
@include material-placeholder {
font-size: $placeholder-font-size;
}
margin-bottom: $vertical-padding; // must be specified to give help-block vertical space
} }
// upon collapsing margins, the largest margin is honored which collapses the form-control margin, so the form-control margin // this is inside a form-group, may be .form-group.form-group-sm or .form-group.form-group-lg
// must also be expressed as form-group padding @else {
padding-bottom: $vertical-padding; #{$parent} {
@include label-size-variant($placeholder-font-size, $vertical-padding, $line-height, $static-font-size, $static-line-height, $help-block-font-size);
.help-block { // form-group padding-bottom
margin-top: 0px; // allow the input margin to set-off the top of the help-block // upon collapsing margins, the largest margin is honored which collapses the form-control margin-bottom,
font-size: $help-block-font-size; // so the form-control margin-bottom must also be expressed as form-group padding
} padding-bottom: $vertical-padding;
// generic labels used anywhere in the form (not control-label) // form-group margin-top must be large enough for the label and the label's top padding since label is absolutely positioned
label { margin: ($label-top-margin + $static-font-size) 0 0 0;
font-size: $placeholder-font-size;
line-height: $line-height;
font-weight: normal;
}
// smaller focused or static size // larger labels as placeholders
label.control-label { &.label-floating,
font-size: $static-font-size; &.label-placeholder {
line-height: $static-line-height; label.control-label {
} top: $label-as-placeholder-top; // place the floating label to look like a placeholder with input padding
font-size: $placeholder-font-size;
line-height: $line-height;
}
}
// larger labels as placeholders // static, focused, or autofill floating labels
&.label-floating, &.label-static,
&.label-placeholder { &.label-floating.is-focused,
label.control-label { &.label-floating:not(.is-empty) {
top: $label-as-placeholder-top; // place the floating label to look like a placeholder with input padding @include label-static($label-top, $static-font-size, $static-line-height);
font-size: $placeholder-font-size; }
line-height: $line-height; // #559 Fix for webkit/chrome autofill - rule must be separate because it breaks firefox otherwise #731
&.label-floating input.form-control:-webkit-autofill ~ label.control-label {
@include label-static($label-top, $static-font-size, $static-line-height);
}
} }
} }
}
// static, focused, or autofill floating labels // -----
&.label-static, // Inputs
&.label-floating.is-focused, //
&.label-floating:not(.is-empty) { // Reference http://www.google.com/design/spec/components/text-fields.html
@include label-position($label-top, $static-font-size, $static-line-height); // MDL implementation: http://www.getmdl.io/components/index.html#textfields-section
.form-control,
.form-group .form-control {
border: 0;
background-image: linear-gradient($brand-primary, $brand-primary), linear-gradient($mdb-input-underline-color, $mdb-input-underline-color);
background-size: 0 2px, 100% 1px;
background-repeat: no-repeat;
background-position: center bottom, center calc(100% - 1px);
background-color: rgba(0, 0, 0, 0);
transition: background 0s ease-out;
float: none;
box-shadow: none;
border-radius: 0;
// Placeholders and and labels-as-placeholders should look the same
@include material-placeholder {
color: $mdb-input-placeholder-color;
font-weight: 400;
}
//&:textarea { // appears to be an invalid selector
// height: 40px;
//}
&[readonly],
&[disabled],
fieldset[disabled] & {
background-color: rgba(0, 0, 0, 0);
} }
// #559 Fix for webkit/chrome autofill - rule must be separate because it breaks firefox otherwise #731
&.label-floating input.form-control:-webkit-autofill ~ label.control-label { &[disabled],
@include label-position($label-top, $static-font-size, $static-line-height); fieldset[disabled] & {
background-image: none;
border-bottom: 1px dotted $mdb-input-underline-color;
} }
} }
// -----
// Labels with form-group signalled state
//
// Reference http://www.google.com/design/spec/components/text-fields.html
// MDL implementation: http://www.getmdl.io/components/index.html#textfields-section
//.variations(unquote(" label.control-label"), color, $mdb-input-placeholder-color); // default label color variations
.form-group { .form-group {
//border: solid 1px red;
position: relative; position: relative;
// ----- // -----
// Inputs // Labels with form-group signalled state
//
// Reference http://www.google.com/design/spec/components/text-fields.html
// MDL implementation: http://www.getmdl.io/components/index.html#textfields-section
.form-control {
border: 0;
background-image: linear-gradient($brand-primary, $brand-primary), linear-gradient($mdb-input-underline-color, $mdb-input-underline-color);
background-size: 0 2px, 100% 1px;
background-repeat: no-repeat;
background-position: center bottom, center calc(100% - 1px);
background-color: rgba(0, 0, 0, 0);
transition: background 0s ease-out;
float: none;
box-shadow: none;
border-radius: 0;
// Placeholders and and labels-as-placeholders should look the same
@include material-placeholder {
color: $mdb-input-placeholder-color;
font-weight: normal;
}
//&:textarea { // appears to be an invalid selector
// height: 40px;
//}
&[readonly],
&[disabled],
fieldset[disabled] & {
background-color: rgba(0, 0, 0, 0);
}
&[disabled],
fieldset[disabled] & {
background-image: none;
border-bottom: 1px dotted $mdb-input-underline-color;
}
}
&.is-focused .form-control {
outline: none;
background-image: linear-gradient($brand-primary, $brand-primary), linear-gradient($mdb-input-underline-color, $mdb-input-underline-color);
background-size: 100% 2px, 100% 1px;
box-shadow: none;
transition-duration: 0.3s;
.material-input:after {
background-color: $mdb-input-default;
}
}
// -----
// Labels
// //
// Reference http://www.google.com/design/spec/components/text-fields.html // Reference http://www.google.com/design/spec/components/text-fields.html
// MDL implementation: http://www.getmdl.io/components/index.html#textfields-section // MDL implementation: http://www.getmdl.io/components/index.html#textfields-section
&.label-static, &.label-static,
&.label-placeholder, &.label-placeholder,
&.label-floating { &.label-floating {
label.control-label { label.control-label {
position: absolute; position: absolute;
pointer-events: none; pointer-events: none;
@ -168,19 +188,6 @@
} }
} }
// generic labels and control labels
label,
label.control-label {
// same label properties as form-group placeholder
color: $mdb-input-placeholder-color;
font-weight: normal;
}
label.control-label {
// same label properties as form-group placeholder
margin: 16px 0 0 0; // std and lg
}
// hide label-placeholders when the field is not empty // hide label-placeholders when the field is not empty
&.label-placeholder:not(.is-empty){ &.label-placeholder:not(.is-empty){
label.control-label{ label.control-label{
@ -188,30 +195,40 @@
} }
} }
@include variations(unquote(" label.control-label"), color, $mdb-input-placeholder-color); // default label color variations // Help blocks - position: absolute approach - uses no vertical space, text wrapping - not so good.
@include variations(unquote(".is-focused label.control-label"), color, $mdb-input-default); // focused label color variations
@include variations(unquote(".is-focused.label-placeholder label.control-label"), color, $mdb-input-placeholder-color); // default label color variations
// default floating size/location
@include form-group-size-variant($mdb-input-font-size-base, $mdb-label-top-margin-base, $mdb-input-padding-base-vertical, $mdb-input-line-height-base, $mdb-label-as-placeholder-shim-base);
// sm floating size/location
&.form-group-sm {
@include form-group-size-variant($mdb-input-font-size-small, $mdb-label-top-margin-small, $mdb-input-padding-small-vertical, $mdb-input-line-height-small, $mdb-label-as-placeholder-shim-small);
}
// lg floating size/location
&.form-group-lg {
@include form-group-size-variant($mdb-input-font-size-large, $mdb-label-top-margin-large, $mdb-input-padding-large-vertical, $mdb-input-line-height-large, $mdb-label-as-placeholder-shim-large);
}
// Hints - position: absolute approach - uses no vertical space, text wrapping - not so good.
.help-block { .help-block {
position: absolute; // do not use position: absolute because width/wrapping isn't automatic and overflows occur position: absolute; // do not use position: absolute because width/wrapping isn't automatic and overflows occur
display: none; display: none;
} }
// form-group is-focused display
&.is-focused { &.is-focused {
.form-control {
outline: none;
background-image: linear-gradient($brand-primary, $brand-primary), linear-gradient($mdb-input-underline-color, $mdb-input-underline-color);
background-size: 100% 2px, 100% 1px;
box-shadow: none;
transition-duration: 0.3s;
.material-input:after {
background-color: $brand-primary;
}
}
//.variations(unquote(".is-focused label.control-label"), color, $brand-primary); // focused label color variations
label,
label.control-label {
color: $brand-primary;
}
//.variations(unquote(".is-focused.label-placeholder label.control-label"), color, $mdb-input-placeholder-color); // default label color variations
&.label-placeholder {
label,
label.control-label {
color: $mdb-input-placeholder-color;
}
}
.help-block { .help-block {
display: block; display: block;
} }
@ -220,10 +237,10 @@
// SASS conversion note: please mirror any content change in _mixins-shared.scss bg-img-variations-content // SASS conversion note: please mirror any content change in _mixins-shared.scss bg-img-variations-content
@include bg-img-variations(unquote(".is-focused .form-control"), $brand-primary); @include bg-img-variations(unquote(".is-focused .form-control"), $brand-primary);
@include form-group-validation-state(has-warning, $mdb-input-warning); @include form-group-validation-state(has-warning, $brand-warning);
@include form-group-validation-state(has-error, $mdb-input-danger); @include form-group-validation-state(has-error, $brand-danger);
@include form-group-validation-state(has-success, $mdb-input-success); @include form-group-validation-state(has-success, $brand-success);
@include form-group-validation-state(has-info, $mdb-input-info); @include form-group-validation-state(has-info, $brand-info);
textarea { textarea {
resize: none; resize: none;
@ -241,6 +258,19 @@
} }
} }
// default floating size/location without a form-group (will skip form-group styles, and just render default sizing variation)
@include form-group-size-variant(null, $mdb-input-font-size-base, $mdb-label-top-margin-base, $mdb-input-padding-base-vertical, $mdb-input-line-height-base, $mdb-label-as-placeholder-shim-base);
// default floating size/location with a form-group (need margin etc from a default form-group)
@include form-group-size-variant(unquote(".form-group"), $mdb-input-font-size-base, $mdb-label-top-margin-base, $mdb-input-padding-base-vertical, $mdb-input-line-height-base, $mdb-label-as-placeholder-shim-base);
// sm floating size/location
@include form-group-size-variant(unquote(".form-group.form-group-sm"), $mdb-input-font-size-small, $mdb-label-top-margin-small, $mdb-input-padding-small-vertical, $mdb-input-line-height-small, $mdb-label-as-placeholder-shim-small);
// lg floating size/location
@include form-group-size-variant(unquote(".form-group.form-group-lg"), $mdb-input-font-size-large, $mdb-label-top-margin-large, $mdb-input-padding-large-vertical, $mdb-input-line-height-large, $mdb-label-as-placeholder-shim-large);
select.form-control { select.form-control {
border: 0; border: 0;
@ -271,7 +301,7 @@ select.form-control {
// ---------------- // ----------------
// input group/addon related styles // input group/addon related styles
// default margin // default margin - no form-group required
@include input-group-button-variation($mdb-input-padding-base-vertical); @include input-group-button-variation($mdb-input-padding-base-vertical);
.form-group { .form-group {

View File

@ -88,7 +88,7 @@
} }
} }
@media (max-width: 767px) { @media (max-width: $grid-float-breakpoint-max) {
.navbar-text { .navbar-text {
color: inherit; color: inherit;
margin-top: 15px; margin-top: 15px;
@ -193,7 +193,7 @@
background-color: $indigo; background-color: $indigo;
} }
@media (max-width: 1199px) { @media (max-width: $screen-md-max) {
.navbar-brand { .navbar-brand {
height: 50px; height: 50px;

View File

@ -1,31 +1,5 @@
// This file has been autogenerated by grunt task lessToSass. Any changes will be overwritten. // This file has been autogenerated by grunt task lessToSass. Any changes will be overwritten.
.form-horizontal .radio {
margin-bottom: 10px;
}
@mixin form-group-radio-variant($placeholder-font-size, $line-height){
.radio {
// Label is set in _inputs.less
}
}
.form-group {
// default label size/location
@include form-group-radio-variant($mdb-input-font-size-base, $mdb-input-line-height-base);
// sm label size/location
&.form-group-sm {
@include form-group-radio-variant($mdb-input-font-size-small, $mdb-input-line-height-small);
}
// lg label size/location
&.form-group-lg {
@include form-group-radio-variant($mdb-input-font-size-large, $mdb-input-line-height-large);
}
}
.radio { .radio {
label { label {
cursor: pointer; cursor: pointer;

View File

@ -1,90 +1,68 @@
// This file has been autogenerated by grunt task lessToSass. Any changes will be overwritten. // This file has been autogenerated by grunt task lessToSass. Any changes will be overwritten.
@mixin form-group-toggle-variant($placeholder-font-size, $line-height){ .togglebutton {
.togglebutton { vertical-align: middle;
// Label is set in _inputs.less &, label, input, .toggle {
user-select: none;
} }
} label {
cursor: pointer;
color: $mdb-toggle-label-color;
.form-group { // Hide original checkbox
input[type=checkbox] {
//// default label size/location opacity: 0;
@include form-group-toggle-variant($mdb-input-font-size-base, $mdb-input-line-height-base); width: 0;
height: 0;
// sm label size/location
&.form-group-sm {
@include form-group-toggle-variant($mdb-input-font-size-small, $mdb-input-line-height-small);
}
// lg label size/location
&.form-group-lg {
@include form-group-toggle-variant($mdb-input-font-size-large, $mdb-input-line-height-large);
}
.togglebutton {
vertical-align: middle;
&, label, input, .toggle {
user-select: none;
} }
label { // Switch bg off and disabled
cursor: pointer; .toggle,
color: $mdb-toggle-label-color; input[type=checkbox][disabled] + .toggle {
content: "";
// Hide original checkbox display: inline-block;
input[type=checkbox] { width: 30px;
opacity: 0; height: 15px;
width: 0; background-color: rgba(80, 80, 80, 0.7);
height: 0; border-radius: 15px;
} margin-right: 15px;
// Switch bg off and disabled transition: background 0.3s ease;
.toggle, vertical-align: middle;
input[type=checkbox][disabled] + .toggle { }
content: ""; // Handle off
display: inline-block; .toggle:after {
width: 30px; content: "";
height: 15px; display: inline-block;
background-color: rgba(80, 80, 80, 0.7); width: 20px;
border-radius: 15px; height: 20px;
margin-right: 15px; background-color: #F1F1F1;
transition: background 0.3s ease; border-radius: 20px;
vertical-align: middle; position: relative;
} box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4);
// Handle off left: -5px;
.toggle:after { top: -2px;
content: ""; transition: left 0.3s ease, background 0.3s ease, box-shadow 0.1s ease;
display: inline-block; }
width: 20px; // Handle disabled
height: 20px; input[type=checkbox][disabled] + .toggle:after,
background-color: #F1F1F1; input[type=checkbox][disabled]:checked + .toggle:after {
border-radius: 20px; background-color: #BDBDBD;
position: relative; }
box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4); // Ripple off and disabled
left: -5px; input[type=checkbox] + .toggle:active:after,
top: -2px; input[type=checkbox][disabled] + .toggle:active:after {
transition: left 0.3s ease, background 0.3s ease, box-shadow 0.1s ease; box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(0, 0, 0, 0.1);
} }
// Handle disabled input[type=checkbox]:checked + .toggle:after {
input[type=checkbox][disabled] + .toggle:after, left: 15px;
input[type=checkbox][disabled]:checked + .toggle:after {
background-color: #BDBDBD;
}
// Ripple off and disabled
input[type=checkbox] + .toggle:active:after,
input[type=checkbox][disabled] + .toggle:active:after {
box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(0, 0, 0, 0.1);
}
input[type=checkbox]:checked + .toggle:after {
left: 15px;
}
} }
// Switch bg on
// SASS conversion note: please mirror any content change in _mixins-shared.scss bg-color-variations-content
@include bg-color-variations(unquote(" label input[type=checkbox]:checked + .toggle"), $brand-primary, (50/100));
// Handle on
// SASS conversion note: please mirror any content change in _mixins-shared.scss variations-content
@include variations(unquote(" label input[type=checkbox]:checked + .toggle:after"), background-color, $brand-primary);
// Ripple on
@include bg-box-shadow-variations(unquote(" label input[type=checkbox]:checked + .toggle:active:after"), $brand-primary);
} }
// Switch bg on
// SASS conversion note: please mirror any content change in _mixins-shared.scss bg-color-variations-content
@include bg-color-variations(unquote(" label input[type=checkbox]:checked + .toggle"), $brand-primary, (50/100));
// Handle on
// SASS conversion note: please mirror any content change in _mixins-shared.scss variations-content
@include variations(unquote(" label input[type=checkbox]:checked + .toggle:after"), background-color, $brand-primary);
// Ripple on
@include bg-box-shadow-variations(unquote(" label input[type=checkbox]:checked + .toggle:active:after"), $brand-primary);
} }

View File

@ -1,17 +1,17 @@
// This file has been autogenerated by grunt task lessToSass. Any changes will be overwritten. // This file has been autogenerated by grunt task lessToSass. Any changes will be overwritten.
.text-warning { .text-warning {
color: $btn-warning; color: $brand-warning;
} }
.text-primary { .text-primary {
color: $btn-primary; color: $brand-primary;
} }
.text-danger { .text-danger {
color: $btn-danger; color: $brand-danger;
} }
.text-success { .text-success {
color: $btn-success; color: $brand-success;
} }
.text-info { .text-info {
color: $btn-info; color: $brand-info;
} }

View File

@ -39,56 +39,8 @@ $btn-default: transparent !default;
$btn-default-text: $lightbg-text !default; $btn-default-text: $lightbg-text !default;
//--- //---
$btn-primary: $brand-primary !default;
$btn-primary-text: $darkbg-text !default;
$btn-success: $brand-success !default;
$btn-success-text: $darkbg-text !default;
$btn-info: $brand-info !default;
$btn-info-text: $darkbg-text !default;
$btn-warning: $brand-warning !default;
$btn-warning-text: $darkbg-text !default;
$btn-danger: $brand-danger !default;
$btn-danger-text: $darkbg-text !default;
$mdb-input-unchecked: rgba(137, 137, 137, 0.3) !default;
$mdb-input-checked: rgba(15, 157, 88, 0.3) !default;
$mdb-radio-default: $lightbg-text !default; $mdb-radio-default: $lightbg-text !default;
$mdb-radio-primary: $brand-primary !default;
$mdb-radio-success: $brand-success !default;
$mdb-radio-info: $brand-info !default;
$mdb-radio-warning: $brand-warning !default;
$mdb-radio-danger: $brand-danger !default;
$mdb-input-danger: $brand-danger !default;
$mdb-input-default: $brand-primary !default;
$mdb-input-warning: $brand-warning !default;
$mdb-input-success: $brand-success !default;
$mdb-input-info: $brand-info !default;
$alert-success: $brand-success !default;
$alert-info: $brand-info !default;
$alert-warning: $brand-warning !default;
$alert-danger: $brand-danger !default;
$progress-success: $brand-success !default;
$progress-info: $brand-info !default;
$progress-warning: $brand-warning !default;
$progress-danger: $brand-danger !default;
$font-size-base: 14px !default;
$font-size-large: ceil(($font-size-base * 1.25)) !default; // ~18px
$font-size-small: ceil(($font-size-base * 0.85)) !default; // ~12px
$screen-sm: 768px !default;
$screen-sm-min: $screen-sm !default;
// Global Material variables
$mdb-border-radius: 2px !default; $mdb-border-radius: 2px !default;
// -------------------- // --------------------
@ -104,7 +56,7 @@ $mdb-input-font-size-small: ceil(($font-size-base * 0.75)) !default; // ~12px
// FIXME: with #733 customization of bootstrap, consider how these could be based on the original bs customized variables // FIXME: with #733 customization of bootstrap, consider how these could be based on the original bs customized variables
//** Unit-less `line-height` for use in components like buttons. //** Unit-less `line-height` for use in components like buttons.
$mdb-input-line-height-base: 1.428571429 !default; // 20/14 $mdb-input-line-height-base: $line-height-base; //1.428571429 !default; // 20/14
//** Computed "line-height" (`font-size` * `line-height`) for use with `margin`, `padding`, etc. //** Computed "line-height" (`font-size` * `line-height`) for use with `margin`, `padding`, etc.
$mdb-input-line-height-computed: floor(($mdb-input-font-size-base * $mdb-input-line-height-base)) !default; // ~20px $mdb-input-line-height-computed: floor(($mdb-input-font-size-base * $mdb-input-line-height-base)) !default; // ~20px
$mdb-input-line-height-large: 1.3333333 !default; // extra decimals for Win 8.1 Chrome $mdb-input-line-height-large: 1.3333333 !default; // extra decimals for Win 8.1 Chrome