tuxedo-css-rails 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +12 -0
- data/.rspec +2 -0
- data/.travis.yml +5 -0
- data/CODE_OF_CONDUCT.md +74 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +21 -0
- data/README.md +63 -0
- data/Rakefile +6 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/lib/tuxedo-css-rails.rb +8 -0
- data/tuxedo-css-rails.gemspec +27 -0
- data/vendor/assets/javascripts/three-minified.js +14 -0
- data/vendor/assets/javascripts/three-render.js +172 -0
- data/vendor/assets/javascripts/tuxedo-css.js +118 -0
- data/vendor/assets/stylesheets/_animations.scss +3 -0
- data/vendor/assets/stylesheets/_buttons.scss +68 -0
- data/vendor/assets/stylesheets/_fonts.scss +83 -0
- data/vendor/assets/stylesheets/_footer.scss +14 -0
- data/vendor/assets/stylesheets/_forms.scss +285 -0
- data/vendor/assets/stylesheets/_global.scss +21 -0
- data/vendor/assets/stylesheets/_grid.scss +101 -0
- data/vendor/assets/stylesheets/_helpers.scss +172 -0
- data/vendor/assets/stylesheets/_hero.scss +132 -0
- data/vendor/assets/stylesheets/_mediaQueries.scss +4 -0
- data/vendor/assets/stylesheets/_nav.scss +213 -0
- data/vendor/assets/stylesheets/_reset.scss +9 -0
- data/vendor/assets/stylesheets/_sidebar.scss +53 -0
- data/vendor/assets/stylesheets/_threejs.scss +16 -0
- data/vendor/assets/stylesheets/tuxedo-css.scss +13 -0
- metadata +117 -0
@@ -0,0 +1,118 @@
|
|
1
|
+
$(document).ready(function() {
|
2
|
+
//=================Animation functionality=============//
|
3
|
+
function animations() {
|
4
|
+
$(window).scroll( function(){ /* Every time the window is scrolled ... */
|
5
|
+
|
6
|
+
/* Check the location of each animate-in elements */
|
7
|
+
$('.animate-in').each( function(){
|
8
|
+
var objectBottom = $(this).offset().top + $(this).outerHeight() - 200;
|
9
|
+
var windowBottom = $(window).scrollTop() + $(window).height();
|
10
|
+
|
11
|
+
/* If the object is completely visible in the window, fade it it */
|
12
|
+
if (objectBottom < windowBottom) { //object comes into view (scrolling down)
|
13
|
+
if ($(this).css("opacity")==0) {$(this).fadeTo(500,1);}
|
14
|
+
} else { //object goes out of view (scrolling up) fade out
|
15
|
+
if ($(this).css("opacity")==1) {$(this).fadeTo(500,0);}
|
16
|
+
}
|
17
|
+
});
|
18
|
+
});
|
19
|
+
}
|
20
|
+
|
21
|
+
//=================Mobile menu functionality=============//
|
22
|
+
function mobileMenu() {
|
23
|
+
$('.hamburger').click(function() {
|
24
|
+
$('.flyout').show();
|
25
|
+
$('body').css({'overflow': 'hidden'});
|
26
|
+
});
|
27
|
+
$('.close').click(function() {
|
28
|
+
$('.flyout').hide();
|
29
|
+
$('body').css({'overflow': 'auto'});
|
30
|
+
});
|
31
|
+
$('.fly-dropdown').click(function() {
|
32
|
+
$(this).children('.dropdown-menu').fadeToggle();
|
33
|
+
});
|
34
|
+
$('.sub-fly-dropdown').hover(function() {
|
35
|
+
$(this).children('.sub-dropdown-menu').fadeToggle();
|
36
|
+
});
|
37
|
+
}
|
38
|
+
|
39
|
+
|
40
|
+
// ================Slideshow Functionality ================//
|
41
|
+
function heroSlideshow() {
|
42
|
+
var totalImages = $(".images").children().length; // # of total slideshow images
|
43
|
+
var imageCounter = $(".images").children().length; // keeps track of current image
|
44
|
+
var interval = null;
|
45
|
+
function startSlideshow() { interval = setInterval(function() {
|
46
|
+
var photoNumber = parseInt($(".images .active").attr('class')); // active photo
|
47
|
+
$(".images img").removeClass("active");
|
48
|
+
if (photoNumber < totalImages) {
|
49
|
+
imageCounter = photoNumber + 1;
|
50
|
+
$(".images img:nth-child("+imageCounter+")").addClass("active");
|
51
|
+
} else if (photoNumber === totalImages) {
|
52
|
+
imageCounter = 1;
|
53
|
+
$(".images img:nth-child("+imageCounter+")").addClass("active");
|
54
|
+
} else {
|
55
|
+
imageCounter += 1;
|
56
|
+
$(".images img:nth-child("+imageCounter+")").addClass("active");
|
57
|
+
}
|
58
|
+
photoNumber += 1;
|
59
|
+
$(".circle").removeClass("active");
|
60
|
+
$(".circle:nth-child("+imageCounter+")").addClass("active");
|
61
|
+
}, 5000); }
|
62
|
+
|
63
|
+
function stopSlideshow() { clearInterval(interval)}
|
64
|
+
|
65
|
+
startSlideshow();
|
66
|
+
$('.left-arrow').click(function(){
|
67
|
+
stopSlideshow();
|
68
|
+
var photoNumber = parseInt($(".images .active").attr('class')); // active photo
|
69
|
+
$(".circle").removeClass("active");
|
70
|
+
$(".images img").removeClass("active");
|
71
|
+
if (photoNumber===1) {
|
72
|
+
imageCounter = $(".images").children().length;
|
73
|
+
$(".images img:nth-child("+imageCounter+")").addClass("active");
|
74
|
+
} else {
|
75
|
+
imageCounter -= 1;
|
76
|
+
$(".images img:nth-child("+imageCounter+")").addClass("active");
|
77
|
+
}
|
78
|
+
$(".circle:nth-child("+imageCounter+")").addClass("active");
|
79
|
+
startSlideshow();
|
80
|
+
});
|
81
|
+
|
82
|
+
$('.right-arrow').click(function(){
|
83
|
+
stopSlideshow();
|
84
|
+
var photoNumber = parseInt($(".images .active").attr('class')); // active photo
|
85
|
+
$(".circle").removeClass("active");
|
86
|
+
$(".images img").removeClass("active");
|
87
|
+
if (photoNumber < totalImages) {
|
88
|
+
imageCounter = photoNumber + 1;
|
89
|
+
$(".images img:nth-child("+imageCounter+")").addClass("active");
|
90
|
+
} else if (photoNumber === totalImages) {
|
91
|
+
imageCounter = 1;
|
92
|
+
$(".images img:nth-child("+imageCounter+")").addClass("active");
|
93
|
+
} else {
|
94
|
+
imageCounter += 1;
|
95
|
+
$(".images img:nth-child("+imageCounter+")").addClass("active");
|
96
|
+
}
|
97
|
+
$(".circle:nth-child("+imageCounter+")").addClass("active");
|
98
|
+
startSlideshow();
|
99
|
+
});
|
100
|
+
$(".circle").click(function(){
|
101
|
+
stopSlideshow();
|
102
|
+
var circleNumber = $(this).attr('class').replace(/[^\d]/g, ""); // clicked circle
|
103
|
+
$(".circle").removeClass("active");
|
104
|
+
$(this).addClass("active");
|
105
|
+
$(".images img").removeClass("active");
|
106
|
+
$(".images img:nth-child("+circleNumber+")").addClass("active");
|
107
|
+
imageCounter = circleNumber;
|
108
|
+
startSlideshow();
|
109
|
+
});
|
110
|
+
}
|
111
|
+
|
112
|
+
|
113
|
+
////////// Add Functions to Call HERE//////////
|
114
|
+
heroSlideshow();
|
115
|
+
mobileMenu();
|
116
|
+
animations();
|
117
|
+
|
118
|
+
});
|
@@ -0,0 +1,68 @@
|
|
1
|
+
button {
|
2
|
+
font-family: $header-font;
|
3
|
+
font-size: 1rem;
|
4
|
+
min-height: 50px;
|
5
|
+
font-weight: 500;
|
6
|
+
padding: 15px 40px;
|
7
|
+
margin-bottom: 20px;
|
8
|
+
transition: background ease-in-out 200ms, border ease-in-out 200ms;
|
9
|
+
&:hover, &:focus {
|
10
|
+
cursor: pointer;
|
11
|
+
outline: none;
|
12
|
+
}
|
13
|
+
}
|
14
|
+
.btn-light {
|
15
|
+
color: $dark;
|
16
|
+
background: $light;
|
17
|
+
border: 2px solid $light;
|
18
|
+
&:hover {
|
19
|
+
background: darken($light, 10%);
|
20
|
+
border-color: darken($light, 10%);
|
21
|
+
}
|
22
|
+
}
|
23
|
+
.btn-dark {
|
24
|
+
color: $light;
|
25
|
+
background: $dark;
|
26
|
+
border: 2px solid $dark;
|
27
|
+
&:hover {
|
28
|
+
background: lighten($dark, 20%);
|
29
|
+
border-color: lighten($dark, 20%);
|
30
|
+
}
|
31
|
+
}
|
32
|
+
.btn-pop {
|
33
|
+
color: $light;
|
34
|
+
background: $color-pop;
|
35
|
+
border: 2px solid $color-pop;
|
36
|
+
&:hover {
|
37
|
+
background: darken($color-pop, 10%);
|
38
|
+
border-color: darken($color-pop, 10%);
|
39
|
+
}
|
40
|
+
}
|
41
|
+
[class*="btn-ghost"] {
|
42
|
+
background: none;
|
43
|
+
}
|
44
|
+
.btn-ghost-light {
|
45
|
+
border: 2px solid $light;
|
46
|
+
color: $light;
|
47
|
+
&:hover {
|
48
|
+
background: $light;
|
49
|
+
color: $dark;
|
50
|
+
}
|
51
|
+
}
|
52
|
+
.btn-ghost-dark {
|
53
|
+
border: 2px solid $dark;
|
54
|
+
color: $dark;
|
55
|
+
&:hover {
|
56
|
+
background: $dark;
|
57
|
+
color: $light;
|
58
|
+
}
|
59
|
+
}
|
60
|
+
.btn-ghost-pop {
|
61
|
+
border: 2px solid $color-pop;
|
62
|
+
color: $color-pop;
|
63
|
+
&:hover {
|
64
|
+
border: 2px solid $color-pop;
|
65
|
+
background: $color-pop;
|
66
|
+
color: $light;
|
67
|
+
}
|
68
|
+
}
|
@@ -0,0 +1,83 @@
|
|
1
|
+
h1, h2, h3, h4, h5, blockquote {
|
2
|
+
font-family: $header-font;
|
3
|
+
}
|
4
|
+
h1 {
|
5
|
+
font-size: 36px;
|
6
|
+
line-height: 40px;
|
7
|
+
margin-top: 20px;
|
8
|
+
padding: 10px 0;
|
9
|
+
}
|
10
|
+
|
11
|
+
h2 {
|
12
|
+
font-size: 30px;
|
13
|
+
line-height: 36px;
|
14
|
+
padding: 10px 0;
|
15
|
+
}
|
16
|
+
|
17
|
+
h3 {
|
18
|
+
font-size: 24px;
|
19
|
+
line-height: 28px;
|
20
|
+
padding: 10px 0;
|
21
|
+
}
|
22
|
+
|
23
|
+
h4 {
|
24
|
+
font-size: 18px;
|
25
|
+
line-height: 22px;
|
26
|
+
padding: 5px 0;
|
27
|
+
}
|
28
|
+
|
29
|
+
h5 {
|
30
|
+
font-size: 16px;
|
31
|
+
line-height: 20px;
|
32
|
+
padding: 5px 0;
|
33
|
+
}
|
34
|
+
|
35
|
+
h6 {
|
36
|
+
@extend %body-font;
|
37
|
+
font-size: 18px;
|
38
|
+
line-height: 24px;
|
39
|
+
font-weight: normal;
|
40
|
+
color: $dark-grey;
|
41
|
+
margin-bottom: 10px;
|
42
|
+
letter-spacing: 1px;
|
43
|
+
}
|
44
|
+
p {
|
45
|
+
@extend %body-font;
|
46
|
+
font-size: 16px;
|
47
|
+
line-height: 20px;
|
48
|
+
margin-bottom: 20px;
|
49
|
+
}
|
50
|
+
small {
|
51
|
+
@extend %body-font;
|
52
|
+
font-size: 12px;
|
53
|
+
font-weight: normal;
|
54
|
+
line-height: 14px;
|
55
|
+
}
|
56
|
+
a {
|
57
|
+
color: inherit;
|
58
|
+
text-decoration: none;
|
59
|
+
&:hover {
|
60
|
+
color: $md-grey;
|
61
|
+
cursor: pointer;
|
62
|
+
}
|
63
|
+
}
|
64
|
+
blockquote {
|
65
|
+
font-size: 24px;
|
66
|
+
font-style: italic;
|
67
|
+
font-weight: lighter;
|
68
|
+
max-width: 500px;
|
69
|
+
border-left: 2px solid $dark;
|
70
|
+
padding-left: 30px;
|
71
|
+
line-height: 34px;
|
72
|
+
margin-bottom: 20px;
|
73
|
+
cite {
|
74
|
+
font-style: normal;
|
75
|
+
font-weight: normal;
|
76
|
+
font-size: 18px;
|
77
|
+
}
|
78
|
+
}
|
79
|
+
ul {
|
80
|
+
font-family: $body-font;
|
81
|
+
font-weight: lighter;
|
82
|
+
list-style-position: inside;
|
83
|
+
}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
footer {
|
2
|
+
position: relative;
|
3
|
+
justify-content: space-around;
|
4
|
+
align-items: center;
|
5
|
+
bottom: 0;
|
6
|
+
width: 100%;
|
7
|
+
min-height: 65px;
|
8
|
+
height: auto;
|
9
|
+
background: $light;
|
10
|
+
@media screen and #{$tablet} {
|
11
|
+
height: auto;
|
12
|
+
min-height: 65px;
|
13
|
+
}
|
14
|
+
}
|
@@ -0,0 +1,285 @@
|
|
1
|
+
form {
|
2
|
+
margin: auto; //centers forms
|
3
|
+
padding: 40px;
|
4
|
+
}
|
5
|
+
[class*="form-divide"] { // Form-divide styling
|
6
|
+
margin: 30px 0;
|
7
|
+
height: 1px;
|
8
|
+
}
|
9
|
+
.form-divide-light {
|
10
|
+
border-bottom: 2px solid $light;
|
11
|
+
}
|
12
|
+
.form-divide-dark {
|
13
|
+
border-bottom: 2px solid $dark;
|
14
|
+
}
|
15
|
+
.form-divide-pop {
|
16
|
+
border-bottom: 2px solid $color-pop;
|
17
|
+
}
|
18
|
+
label { // For labels used with selects/inputs/textareas
|
19
|
+
font-size: 1rem;
|
20
|
+
font-family: $header-font;
|
21
|
+
}
|
22
|
+
[class*="form-header"] { // form-header styling
|
23
|
+
font-size: 3rem;
|
24
|
+
padding: 2rem;
|
25
|
+
font-family: $header-font;
|
26
|
+
text-align: center;
|
27
|
+
margin-bottom: 3rem;
|
28
|
+
}
|
29
|
+
.form-header-dark {
|
30
|
+
color: $dark;
|
31
|
+
border-bottom: 2px solid $dark;
|
32
|
+
}
|
33
|
+
.form-header-light {
|
34
|
+
color: $light;
|
35
|
+
border-bottom: 2px solid $light;
|
36
|
+
}
|
37
|
+
input, textarea, select { // Base styling for inputs/textareas/selects
|
38
|
+
display: block;
|
39
|
+
margin: 5px 0 30px 0;
|
40
|
+
width: 100%;
|
41
|
+
font-size: 1rem;
|
42
|
+
font-family: $header-font;
|
43
|
+
&:focus {
|
44
|
+
outline: none;
|
45
|
+
}
|
46
|
+
}
|
47
|
+
// ===============Input Styling==============//
|
48
|
+
input {
|
49
|
+
height: 3rem;
|
50
|
+
padding-left: 20px;
|
51
|
+
background: none;
|
52
|
+
}
|
53
|
+
// Input Placeholder color
|
54
|
+
::-webkit-input-placeholder { /* Chrome/Opera/Safari */
|
55
|
+
color: $md-grey;
|
56
|
+
}
|
57
|
+
::-moz-placeholder { /* Firefox 19+ */
|
58
|
+
color: $md-grey;
|
59
|
+
}
|
60
|
+
:-ms-input-placeholder { /* IE 10+ */
|
61
|
+
color: $md-grey;
|
62
|
+
}
|
63
|
+
:-moz-placeholder { /* Firefox 18- */
|
64
|
+
color: $md-grey;
|
65
|
+
}
|
66
|
+
.input-light {
|
67
|
+
border: 3px solid $light;
|
68
|
+
background: $light;
|
69
|
+
color: $dark;
|
70
|
+
}
|
71
|
+
.input-dark {
|
72
|
+
border: 3px solid $dark;
|
73
|
+
background: $dark;
|
74
|
+
color: $light;
|
75
|
+
}
|
76
|
+
.input-pop {
|
77
|
+
border: 3px solid $color-pop;
|
78
|
+
background: $color-pop;
|
79
|
+
color: $light;
|
80
|
+
}
|
81
|
+
// ===============Select Styling==============//
|
82
|
+
select {
|
83
|
+
height: 3em;
|
84
|
+
-webkit-appearance: none;
|
85
|
+
padding-left: 20px;
|
86
|
+
border-radius: 0px;
|
87
|
+
outline: none;
|
88
|
+
// Dropdown Arrow SVG image:
|
89
|
+
background: url("data:image/svg+xml;utf8,<svg width='17px' height='9px' viewBox='456 21 17 9' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'>
|
90
|
+
<polygon id='Path-2' stroke='none' fill='#F4F4F4' fill-rule='evenodd' points='456 21 473 21 464.5 29.1301693'></polygon>
|
91
|
+
</svg>");
|
92
|
+
background-position: 96% 50%;
|
93
|
+
background-color: white;
|
94
|
+
background-repeat: no-repeat;
|
95
|
+
border: white;
|
96
|
+
}
|
97
|
+
.select-light {
|
98
|
+
border: $light;
|
99
|
+
// Dropdown Arrow SVG image on light background:
|
100
|
+
background: url("data:image/svg+xml;utf8,<svg width='17px' height='9px' viewBox='456 21 17 9' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'>
|
101
|
+
<polygon id='Path-2' stroke='none' fill='#191919' fill-rule='evenodd' points='456 21 473 21 464.5 29.1301693'></polygon>
|
102
|
+
</svg>");
|
103
|
+
background-position: 96% 50%;
|
104
|
+
background-color: $light;
|
105
|
+
background-repeat: no-repeat;
|
106
|
+
}
|
107
|
+
.select-dark {
|
108
|
+
border: $dark;
|
109
|
+
background-color: $dark;
|
110
|
+
color: $light;
|
111
|
+
}
|
112
|
+
.select-pop {
|
113
|
+
border: $color-pop;
|
114
|
+
background-color: $color-pop;
|
115
|
+
color: $light;
|
116
|
+
}
|
117
|
+
|
118
|
+
// ===============Textarea Styling==============//
|
119
|
+
textarea {
|
120
|
+
border: none;
|
121
|
+
max-width: 100%; //keeps textarea from expanding outside container
|
122
|
+
max-height: 300px; //keeps textarea at or under 300px height expanded
|
123
|
+
padding: 20px 0 0 20px;
|
124
|
+
}
|
125
|
+
|
126
|
+
.textarea-light {
|
127
|
+
border: 3px solid $light;
|
128
|
+
background: $light;
|
129
|
+
color: $dark;
|
130
|
+
}
|
131
|
+
.textarea-dark {
|
132
|
+
border: 3px solid $dark;
|
133
|
+
background: $dark;
|
134
|
+
color: $light;
|
135
|
+
}
|
136
|
+
.textarea-pop {
|
137
|
+
border: 3px solid $color-pop;
|
138
|
+
background: $color-pop;
|
139
|
+
color: $light;
|
140
|
+
}
|
141
|
+
|
142
|
+
// ===============Checkbox Styling==============//
|
143
|
+
.checkbox-light {
|
144
|
+
margin: 20px 0;
|
145
|
+
color: $light;
|
146
|
+
}
|
147
|
+
.checkbox-dark {
|
148
|
+
margin: 20px 0;
|
149
|
+
color: $dark;
|
150
|
+
}
|
151
|
+
|
152
|
+
[type="checkbox"]:not(:checked), //Keeps actual checkbox hidden offscreen
|
153
|
+
[type="checkbox"]:checked {
|
154
|
+
position: absolute;
|
155
|
+
left: -9999px;
|
156
|
+
}
|
157
|
+
[type="checkbox"]:not(:checked) + label, //Position of the label
|
158
|
+
[type="checkbox"]:checked + label {
|
159
|
+
position: relative;
|
160
|
+
padding-left: 2.5rem;
|
161
|
+
margin-right: 20px;
|
162
|
+
padding-top: 4px;
|
163
|
+
cursor: pointer;
|
164
|
+
}
|
165
|
+
[type="checkbox"]:not(:checked) + label:before, //Size and styling of box
|
166
|
+
[type="checkbox"]:checked + label:before {
|
167
|
+
content: '';
|
168
|
+
position: absolute;
|
169
|
+
left: 0; top: 0;
|
170
|
+
width: 1rem; height: 1rem;
|
171
|
+
}
|
172
|
+
.checkbox-light [type="checkbox"]:not(:checked) + label:before,
|
173
|
+
.checkbox-light [type="checkbox"]:checked + label:before {
|
174
|
+
border: 3px solid $light;
|
175
|
+
}
|
176
|
+
.checkbox-dark [type="checkbox"]:not(:checked) + label:before,
|
177
|
+
.checkbox-dark [type="checkbox"]:checked + label:before {
|
178
|
+
border: 3px solid $dark;
|
179
|
+
}
|
180
|
+
[type="checkbox"]:not(:checked) + label:after,
|
181
|
+
[type="checkbox"]:checked + label:after { //Check mark styling
|
182
|
+
content: ''; //Add content to make something appear inside box
|
183
|
+
position: absolute;
|
184
|
+
top: 1px; left: 1px;
|
185
|
+
width: 1.3rem;
|
186
|
+
height: 1.3rem;
|
187
|
+
transition: width ease-in 200ms, height ease-in 200ms; //Transitions width and height when changed - if you want to transition another property change width and height values and add 'Starting Values' below
|
188
|
+
}
|
189
|
+
.checkbox-light [type="checkbox"]:not(:checked) + label:after,
|
190
|
+
.checkbox-light [type="checkbox"]:checked + label:after {
|
191
|
+
background: $light;
|
192
|
+
}
|
193
|
+
.checkbox-dark [type="checkbox"]:not(:checked) + label:after,
|
194
|
+
.checkbox-dark [type="checkbox"]:checked + label:after {
|
195
|
+
background: $dark;
|
196
|
+
}
|
197
|
+
[type="checkbox"]:not(:checked) + label:after { //Starting Values for check mark
|
198
|
+
opacity: 0;
|
199
|
+
width: 0;
|
200
|
+
height: 0;
|
201
|
+
}
|
202
|
+
[type="checkbox"]:disabled:not(:checked) + label:before,
|
203
|
+
[type="checkbox"]:disabled:checked + label:before { //Disabled Checkbox Styling
|
204
|
+
border-color: $md-grey;
|
205
|
+
background-color: $md-grey;
|
206
|
+
}
|
207
|
+
[type="checkbox"]:disabled:checked + label:after { //Disabled Label Styling
|
208
|
+
color: $md-grey;
|
209
|
+
}
|
210
|
+
[type="checkbox"]:disabled + label {
|
211
|
+
color: $md-grey;
|
212
|
+
}
|
213
|
+
// ===============Radio Button Styling==============//
|
214
|
+
.radio-light {
|
215
|
+
margin: 20px 0;
|
216
|
+
color: $light;
|
217
|
+
}
|
218
|
+
.radio-dark {
|
219
|
+
margin: 20px 0;
|
220
|
+
color: $dark;
|
221
|
+
}
|
222
|
+
[type="radio"]:not(:checked), //Keeps actual radio button hidden offscreen
|
223
|
+
[type="radio"]:checked {
|
224
|
+
position: absolute;
|
225
|
+
left: -9999px;
|
226
|
+
}
|
227
|
+
[type="radio"]:not(:checked) + label, //Position of the label
|
228
|
+
[type="radio"]:checked + label {
|
229
|
+
position: relative;
|
230
|
+
padding-left: 2.5rem;
|
231
|
+
margin-right: 20px;
|
232
|
+
padding-top: 4px;
|
233
|
+
cursor: pointer;
|
234
|
+
}
|
235
|
+
/* radio button styling */
|
236
|
+
[type="radio"]:not(:checked) + label:before, //Size and styling of button
|
237
|
+
[type="radio"]:checked + label:before {
|
238
|
+
content: '';
|
239
|
+
position: absolute;
|
240
|
+
left: 0; top: 0;
|
241
|
+
width: 1rem; height: 1rem;
|
242
|
+
border-radius: 50%;
|
243
|
+
}
|
244
|
+
.radio-light [type="radio"]:not(:checked) + label:before,
|
245
|
+
.radio-light [type="radio"]:checked + label:before {
|
246
|
+
border: 3px solid $light;
|
247
|
+
}
|
248
|
+
.radio-dark [type="radio"]:not(:checked) + label:before,
|
249
|
+
.radio-dark [type="radio"]:checked + label:before {
|
250
|
+
border: 3px solid $dark;
|
251
|
+
}
|
252
|
+
[type="radio"]:not(:checked) + label:after, //Radio Button selected fill
|
253
|
+
[type="radio"]:checked + label:after {
|
254
|
+
content: ''; //Add content to make something appear inside button
|
255
|
+
position: absolute;
|
256
|
+
top: 1px; left: 1px;
|
257
|
+
width: 1.3rem;
|
258
|
+
height: 1.3rem;
|
259
|
+
border-radius: 100%;
|
260
|
+
transition: width ease-in 200ms, height ease-in 200ms; //Transitions width and height when changed - if you want to transition another property change width and height values and add 'Starting Values' below
|
261
|
+
}
|
262
|
+
.radio-light [type="radio"]:not(:checked) + label:after,
|
263
|
+
.radio-light [type="radio"]:checked + label:after {
|
264
|
+
background: $light;
|
265
|
+
}
|
266
|
+
.radio-dark [type="radio"]:not(:checked) + label:after,
|
267
|
+
.radio-dark [type="radio"]:checked + label:after {
|
268
|
+
background: $dark;
|
269
|
+
}
|
270
|
+
[type="radio"]:not(:checked) + label:after { //Starting Values of button fill
|
271
|
+
opacity: 0;
|
272
|
+
width: 0;
|
273
|
+
height: 0;
|
274
|
+
}
|
275
|
+
[type="radio"]:disabled:not(:checked) + label:before, //Disabled button
|
276
|
+
[type="radio"]:disabled:checked + label:before {
|
277
|
+
border-color: $md-grey;
|
278
|
+
background-color: $md-grey;
|
279
|
+
}
|
280
|
+
[type="radio"]:disabled:checked + label:after { //Disabled label
|
281
|
+
color: $md-grey;
|
282
|
+
}
|
283
|
+
[type="radio"]:disabled + label {
|
284
|
+
color: $md-grey;
|
285
|
+
}
|