apx-docs-theme 0.1.7 → 0.1.15
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 +4 -4
- data/_includes/footer.html +8 -9
- data/_includes/head.html +20 -9
- data/_includes/js_files.html +21 -3
- data/_includes/navbar.html +28 -0
- data/_includes/sidebar.html +43 -0
- data/_layouts/default.html +10 -10
- data/_layouts/docs.html +12 -20
- data/_sass/bootstrap/_alert.scss +51 -0
- data/_sass/bootstrap/_badge.scss +53 -0
- data/_sass/bootstrap/_breadcrumb.scss +41 -0
- data/_sass/bootstrap/_button-group.scss +163 -0
- data/_sass/bootstrap/_buttons.scss +73 -101
- data/_sass/bootstrap/_card.scss +310 -0
- data/_sass/bootstrap/_carousel.scss +130 -202
- data/_sass/bootstrap/_close.scss +23 -15
- data/_sass/bootstrap/_code.scss +15 -36
- data/_sass/bootstrap/_custom-forms.scss +507 -0
- data/_sass/bootstrap/_dropdown.scss +191 -0
- data/_sass/bootstrap/_forms.scss +215 -498
- data/_sass/bootstrap/_functions.scss +86 -0
- data/_sass/bootstrap/_grid.scss +29 -61
- data/_sass/bootstrap/_images.scss +42 -0
- data/_sass/bootstrap/_input-group.scss +193 -0
- data/_sass/bootstrap/_jumbotron.scss +9 -47
- data/_sass/bootstrap/_list-group.scss +70 -79
- data/_sass/bootstrap/_media.scss +3 -61
- data/_sass/bootstrap/_mixins.scss +19 -18
- data/_sass/bootstrap/_modal.scss +186 -0
- data/_sass/bootstrap/_nav.scss +120 -0
- data/_sass/bootstrap/_navbar.scss +192 -555
- data/_sass/bootstrap/_pagination.scss +59 -70
- data/_sass/bootstrap/_popover.scss +183 -0
- data/_sass/bootstrap/_print.scss +89 -49
- data/_sass/bootstrap/_progress.scss +34 -0
- data/_sass/bootstrap/_reboot.scss +462 -0
- data/_sass/bootstrap/_root.scss +19 -0
- data/_sass/bootstrap/_spinners.scss +53 -0
- data/_sass/bootstrap/_tables.scss +119 -166
- data/_sass/bootstrap/_toasts.scss +43 -0
- data/_sass/bootstrap/_tooltip.scss +93 -79
- data/_sass/bootstrap/_transitions.scss +22 -0
- data/_sass/bootstrap/_type.scss +66 -239
- data/_sass/bootstrap/_utilities.scss +16 -55
- data/_sass/bootstrap/_variables.scss +926 -709
- data/_sass/bootstrap/bootstrap-grid.scss +29 -0
- data/_sass/bootstrap/bootstrap-reboot.scss +12 -0
- data/_sass/bootstrap/bootstrap.scss +44 -0
- data/_sass/bootstrap/mixins/_alert.scss +13 -0
- data/_sass/bootstrap/mixins/_background-variant.scss +14 -5
- data/_sass/bootstrap/mixins/_badge.scss +11 -0
- data/_sass/bootstrap/mixins/_border-radius.scss +25 -8
- data/_sass/bootstrap/mixins/_box-shadow.scss +5 -0
- data/_sass/bootstrap/mixins/_breakpoints.scss +123 -0
- data/_sass/bootstrap/mixins/_buttons.scss +86 -40
- data/_sass/bootstrap/mixins/_caret.scss +62 -0
- data/_sass/bootstrap/mixins/_clearfix.scss +3 -18
- data/_sass/bootstrap/mixins/_float.scss +11 -0
- data/_sass/bootstrap/mixins/_forms.scss +176 -66
- data/_sass/bootstrap/mixins/_gradients.scss +17 -30
- data/_sass/bootstrap/mixins/_grid-framework.scss +51 -66
- data/_sass/bootstrap/mixins/_grid.scss +34 -105
- data/_sass/bootstrap/mixins/_hover.scss +37 -0
- data/_sass/bootstrap/mixins/_image.scss +18 -15
- data/_sass/bootstrap/mixins/_list-group.scss +10 -21
- data/_sass/bootstrap/mixins/_lists.scss +7 -0
- data/_sass/bootstrap/mixins/_nav-divider.scss +4 -4
- data/_sass/bootstrap/mixins/_pagination.scss +10 -12
- data/_sass/bootstrap/mixins/_reset-text.scss +7 -8
- data/_sass/bootstrap/mixins/_resize.scss +1 -1
- data/_sass/bootstrap/mixins/_screen-reader.scss +33 -0
- data/_sass/bootstrap/mixins/_size.scss +1 -5
- data/_sass/bootstrap/mixins/_table-row.scss +26 -15
- data/_sass/bootstrap/mixins/_text-emphasis.scss +7 -5
- data/_sass/bootstrap/mixins/_text-hide.scss +13 -0
- data/_sass/bootstrap/mixins/{_text-overflow.scss → _text-truncate.scss} +2 -2
- data/_sass/bootstrap/mixins/_transition.scss +16 -0
- data/_sass/bootstrap/mixins/_visibility.scss +7 -0
- data/_sass/bootstrap/utilities/_align.scss +8 -0
- data/_sass/bootstrap/utilities/_background.scss +19 -0
- data/_sass/bootstrap/utilities/_borders.scss +63 -0
- data/_sass/bootstrap/utilities/_clearfix.scss +3 -0
- data/_sass/bootstrap/utilities/_display.scss +38 -0
- data/_sass/bootstrap/utilities/_embed.scss +39 -0
- data/_sass/bootstrap/utilities/_flex.scss +51 -0
- data/_sass/bootstrap/utilities/_float.scss +9 -0
- data/_sass/bootstrap/utilities/_overflow.scss +5 -0
- data/_sass/bootstrap/utilities/_position.scss +32 -0
- data/_sass/bootstrap/utilities/_screenreaders.scss +11 -0
- data/_sass/bootstrap/utilities/_shadows.scss +6 -0
- data/_sass/bootstrap/utilities/_sizing.scss +20 -0
- data/_sass/bootstrap/utilities/_spacing.scss +73 -0
- data/_sass/bootstrap/utilities/_text.scss +67 -0
- data/_sass/bootstrap/utilities/_visibility.scss +11 -0
- data/_sass/markdown/code.scss +65 -0
- data/_sass/markdown/color-system.scss +114 -0
- data/_sass/markdown/images.scss +119 -0
- data/_sass/markdown/markdown-body.scss +103 -0
- data/_sass/markdown/markdown.scss +15 -0
- data/_sass/rouge.scss +209 -0
- data/_sass/theme.scss +35 -0
- data/_sass/{_typeahead.scss → typeahead.scss} +0 -0
- data/assets/css/main.scss +1 -90
- data/assets/img/{bg.jpg → jumbotron.jpg} +0 -0
- data/assets/js/bootstrap.min.js +6 -6
- data/assets/js/jquery-3.3.1.min.js +2 -0
- data/assets/js/main.js +2 -1
- data/assets/js/search.json +11 -0
- data/assets/js/typeahead.bundle.js +2621 -0
- data/assets/js/typeahead.bundle.min.js +4 -4
- metadata +81 -50
- data/_includes/pages_nav.html +0 -40
- data/_includes/topnav.html +0 -37
- data/_sass/_bootstrap.scss +0 -56
- data/_sass/_syntax-highlighting.scss +0 -71
- data/_sass/bootstrap/_alerts.scss +0 -73
- data/_sass/bootstrap/_badges.scss +0 -68
- data/_sass/bootstrap/_breadcrumbs.scss +0 -28
- data/_sass/bootstrap/_button-groups.scss +0 -244
- data/_sass/bootstrap/_component-animations.scss +0 -37
- data/_sass/bootstrap/_dropdowns.scss +0 -216
- data/_sass/bootstrap/_glyphicons.scss +0 -307
- data/_sass/bootstrap/_input-groups.scss +0 -171
- data/_sass/bootstrap/_labels.scss +0 -66
- data/_sass/bootstrap/_modals.scss +0 -150
- data/_sass/bootstrap/_navs.scss +0 -242
- data/_sass/bootstrap/_normalize.scss +0 -424
- data/_sass/bootstrap/_pager.scss +0 -54
- data/_sass/bootstrap/_panels.scss +0 -271
- data/_sass/bootstrap/_popovers.scss +0 -131
- data/_sass/bootstrap/_progress-bars.scss +0 -87
- data/_sass/bootstrap/_responsive-embed.scss +0 -35
- data/_sass/bootstrap/_responsive-utilities.scss +0 -179
- data/_sass/bootstrap/_scaffolding.scss +0 -161
- data/_sass/bootstrap/_theme.scss +0 -291
- data/_sass/bootstrap/_thumbnails.scss +0 -38
- data/_sass/bootstrap/_wells.scss +0 -29
- data/_sass/bootstrap/mixins/_alerts.scss +0 -14
- data/_sass/bootstrap/mixins/_center-block.scss +0 -7
- data/_sass/bootstrap/mixins/_hide-text.scss +0 -21
- data/_sass/bootstrap/mixins/_labels.scss +0 -12
- data/_sass/bootstrap/mixins/_nav-vertical-align.scss +0 -9
- data/_sass/bootstrap/mixins/_opacity.scss +0 -8
- data/_sass/bootstrap/mixins/_panels.scss +0 -24
- data/_sass/bootstrap/mixins/_progress-bar.scss +0 -10
- data/_sass/bootstrap/mixins/_reset-filter.scss +0 -8
- data/_sass/bootstrap/mixins/_responsive-visibility.scss +0 -21
- data/_sass/bootstrap/mixins/_tab-focus.scss +0 -9
- data/_sass/bootstrap/mixins/_vendor-prefixes.scss +0 -222
- data/assets/css/font-awesome.min.css +0 -4
- data/assets/fonts/FontAwesome.otf +0 -0
- data/assets/fonts/fontawesome-webfont.eot +0 -0
- data/assets/fonts/fontawesome-webfont.svg +0 -2671
- data/assets/fonts/fontawesome-webfont.ttf +0 -0
- data/assets/fonts/fontawesome-webfont.woff +0 -0
- data/assets/fonts/fontawesome-webfont.woff2 +0 -0
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
// The dropdown wrapper (`<div>`)
|
|
2
|
+
.dropup,
|
|
3
|
+
.dropright,
|
|
4
|
+
.dropdown,
|
|
5
|
+
.dropleft {
|
|
6
|
+
position: relative;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.dropdown-toggle {
|
|
10
|
+
// Generate the caret automatically
|
|
11
|
+
@include caret;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
// The dropdown menu
|
|
15
|
+
.dropdown-menu {
|
|
16
|
+
position: absolute;
|
|
17
|
+
top: 100%;
|
|
18
|
+
left: 0;
|
|
19
|
+
z-index: $zindex-dropdown;
|
|
20
|
+
display: none; // none by default, but block on "open" of the menu
|
|
21
|
+
float: left;
|
|
22
|
+
min-width: $dropdown-min-width;
|
|
23
|
+
padding: $dropdown-padding-y 0;
|
|
24
|
+
margin: $dropdown-spacer 0 0; // override default ul
|
|
25
|
+
font-size: $font-size-base; // Redeclare because nesting can cause inheritance issues
|
|
26
|
+
color: $body-color;
|
|
27
|
+
text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer)
|
|
28
|
+
list-style: none;
|
|
29
|
+
background-color: $dropdown-bg;
|
|
30
|
+
background-clip: padding-box;
|
|
31
|
+
border: $dropdown-border-width solid $dropdown-border-color;
|
|
32
|
+
@include border-radius($dropdown-border-radius);
|
|
33
|
+
@include box-shadow($dropdown-box-shadow);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
@each $breakpoint in map-keys($grid-breakpoints) {
|
|
37
|
+
@include media-breakpoint-up($breakpoint) {
|
|
38
|
+
$infix: breakpoint-infix($breakpoint, $grid-breakpoints);
|
|
39
|
+
|
|
40
|
+
.dropdown-menu#{$infix}-right {
|
|
41
|
+
right: 0;
|
|
42
|
+
left: auto;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
@each $breakpoint in map-keys($grid-breakpoints) {
|
|
48
|
+
@include media-breakpoint-up($breakpoint) {
|
|
49
|
+
$infix: breakpoint-infix($breakpoint, $grid-breakpoints);
|
|
50
|
+
|
|
51
|
+
.dropdown-menu#{$infix}-left {
|
|
52
|
+
right: auto;
|
|
53
|
+
left: 0;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
// Allow for dropdowns to go bottom up (aka, dropup-menu)
|
|
59
|
+
// Just add .dropup after the standard .dropdown class and you're set.
|
|
60
|
+
.dropup {
|
|
61
|
+
.dropdown-menu {
|
|
62
|
+
top: auto;
|
|
63
|
+
bottom: 100%;
|
|
64
|
+
margin-top: 0;
|
|
65
|
+
margin-bottom: $dropdown-spacer;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.dropdown-toggle {
|
|
69
|
+
@include caret(up);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.dropright {
|
|
74
|
+
.dropdown-menu {
|
|
75
|
+
top: 0;
|
|
76
|
+
right: auto;
|
|
77
|
+
left: 100%;
|
|
78
|
+
margin-top: 0;
|
|
79
|
+
margin-left: $dropdown-spacer;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.dropdown-toggle {
|
|
83
|
+
@include caret(right);
|
|
84
|
+
&::after {
|
|
85
|
+
vertical-align: 0;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.dropleft {
|
|
91
|
+
.dropdown-menu {
|
|
92
|
+
top: 0;
|
|
93
|
+
right: 100%;
|
|
94
|
+
left: auto;
|
|
95
|
+
margin-top: 0;
|
|
96
|
+
margin-right: $dropdown-spacer;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.dropdown-toggle {
|
|
100
|
+
@include caret(left);
|
|
101
|
+
&::before {
|
|
102
|
+
vertical-align: 0;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
// When enabled Popper.js, reset basic dropdown position
|
|
108
|
+
// stylelint-disable-next-line no-duplicate-selectors
|
|
109
|
+
.dropdown-menu {
|
|
110
|
+
&[x-placement^="top"],
|
|
111
|
+
&[x-placement^="right"],
|
|
112
|
+
&[x-placement^="bottom"],
|
|
113
|
+
&[x-placement^="left"] {
|
|
114
|
+
right: auto;
|
|
115
|
+
bottom: auto;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
// Dividers (basically an `<hr>`) within the dropdown
|
|
120
|
+
.dropdown-divider {
|
|
121
|
+
@include nav-divider($dropdown-divider-bg);
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
// Links, buttons, and more within the dropdown menu
|
|
125
|
+
//
|
|
126
|
+
// `<button>`-specific styles are denoted with `// For <button>s`
|
|
127
|
+
.dropdown-item {
|
|
128
|
+
display: block;
|
|
129
|
+
width: 100%; // For `<button>`s
|
|
130
|
+
padding: $dropdown-item-padding-y $dropdown-item-padding-x;
|
|
131
|
+
clear: both;
|
|
132
|
+
font-weight: $font-weight-normal;
|
|
133
|
+
color: $dropdown-link-color;
|
|
134
|
+
text-align: inherit; // For `<button>`s
|
|
135
|
+
white-space: nowrap; // prevent links from randomly breaking onto new lines
|
|
136
|
+
background-color: transparent; // For `<button>`s
|
|
137
|
+
border: 0; // For `<button>`s
|
|
138
|
+
|
|
139
|
+
&:first-child {
|
|
140
|
+
@include border-top-radius($dropdown-inner-border-radius);
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
&:last-child {
|
|
144
|
+
@include border-bottom-radius($dropdown-inner-border-radius);
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
@include hover-focus {
|
|
148
|
+
color: $dropdown-link-hover-color;
|
|
149
|
+
text-decoration: none;
|
|
150
|
+
@include gradient-bg($dropdown-link-hover-bg);
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
&.active,
|
|
154
|
+
&:active {
|
|
155
|
+
color: $dropdown-link-active-color;
|
|
156
|
+
text-decoration: none;
|
|
157
|
+
@include gradient-bg($dropdown-link-active-bg);
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
&.disabled,
|
|
161
|
+
&:disabled {
|
|
162
|
+
color: $dropdown-link-disabled-color;
|
|
163
|
+
pointer-events: none;
|
|
164
|
+
background-color: transparent;
|
|
165
|
+
// Remove CSS gradients if they're enabled
|
|
166
|
+
@if $enable-gradients {
|
|
167
|
+
background-image: none;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
.dropdown-menu.show {
|
|
173
|
+
display: block;
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
// Dropdown section headers
|
|
177
|
+
.dropdown-header {
|
|
178
|
+
display: block;
|
|
179
|
+
padding: $dropdown-padding-y $dropdown-item-padding-x;
|
|
180
|
+
margin-bottom: 0; // for use with heading elements
|
|
181
|
+
font-size: $font-size-sm;
|
|
182
|
+
color: $dropdown-header-color;
|
|
183
|
+
white-space: nowrap; // as with > li > a
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
// Dropdown text
|
|
187
|
+
.dropdown-item-text {
|
|
188
|
+
display: block;
|
|
189
|
+
padding: $dropdown-item-padding-y $dropdown-item-padding-x;
|
|
190
|
+
color: $dropdown-link-color;
|
|
191
|
+
}
|
data/_sass/bootstrap/_forms.scss
CHANGED
|
@@ -1,141 +1,48 @@
|
|
|
1
|
-
//
|
|
2
|
-
// Forms
|
|
3
|
-
// --------------------------------------------------
|
|
4
|
-
|
|
1
|
+
// stylelint-disable selector-no-qualifying-type
|
|
5
2
|
|
|
6
|
-
// Normalize non-controls
|
|
7
3
|
//
|
|
8
|
-
//
|
|
9
|
-
|
|
10
|
-
fieldset {
|
|
11
|
-
padding: 0;
|
|
12
|
-
margin: 0;
|
|
13
|
-
border: 0;
|
|
14
|
-
// Chrome and Firefox set a `min-width: min-content;` on fieldsets,
|
|
15
|
-
// so we reset that to ensure it behaves more like a standard block element.
|
|
16
|
-
// See https://github.com/twbs/bootstrap/issues/12359.
|
|
17
|
-
min-width: 0;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
legend {
|
|
21
|
-
display: block;
|
|
22
|
-
width: 100%;
|
|
23
|
-
padding: 0;
|
|
24
|
-
margin-bottom: $line-height-computed;
|
|
25
|
-
font-size: ($font-size-base * 1.5);
|
|
26
|
-
line-height: inherit;
|
|
27
|
-
color: $legend-color;
|
|
28
|
-
border: 0;
|
|
29
|
-
border-bottom: 1px solid $legend-border-color;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
label {
|
|
33
|
-
display: inline-block;
|
|
34
|
-
max-width: 100%; // Force IE8 to wrap long content (see https://github.com/twbs/bootstrap/issues/13141)
|
|
35
|
-
margin-bottom: 5px;
|
|
36
|
-
font-weight: bold;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
// Normalize form controls
|
|
4
|
+
// Textual form controls
|
|
41
5
|
//
|
|
42
|
-
// While most of our form styles require extra classes, some basic normalization
|
|
43
|
-
// is required to ensure optimum display with or without those classes to better
|
|
44
|
-
// address browser inconsistencies.
|
|
45
|
-
|
|
46
|
-
// Override content-box in Normalize (* isn't specific enough)
|
|
47
|
-
input[type="search"] {
|
|
48
|
-
@include box-sizing(border-box);
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
// Position radios and checkboxes better
|
|
52
|
-
input[type="radio"],
|
|
53
|
-
input[type="checkbox"] {
|
|
54
|
-
margin: 4px 0 0;
|
|
55
|
-
margin-top: 1px \9; // IE8-9
|
|
56
|
-
line-height: normal;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
input[type="file"] {
|
|
60
|
-
display: block;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
// Make range inputs behave like textual form controls
|
|
64
|
-
input[type="range"] {
|
|
65
|
-
display: block;
|
|
66
|
-
width: 100%;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
// Make multiple select elements height not fixed
|
|
70
|
-
select[multiple],
|
|
71
|
-
select[size] {
|
|
72
|
-
height: auto;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
// Focus for file, radio, and checkbox
|
|
76
|
-
input[type="file"]:focus,
|
|
77
|
-
input[type="radio"]:focus,
|
|
78
|
-
input[type="checkbox"]:focus {
|
|
79
|
-
@include tab-focus;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
// Adjust output element
|
|
83
|
-
output {
|
|
84
|
-
display: block;
|
|
85
|
-
padding-top: ($padding-base-vertical + 1);
|
|
86
|
-
font-size: $font-size-base;
|
|
87
|
-
line-height: $line-height-base;
|
|
88
|
-
color: $input-color;
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
// Common form controls
|
|
93
|
-
//
|
|
94
|
-
// Shared size and type resets for form controls. Apply `.form-control` to any
|
|
95
|
-
// of the following form controls:
|
|
96
|
-
//
|
|
97
|
-
// select
|
|
98
|
-
// textarea
|
|
99
|
-
// input[type="text"]
|
|
100
|
-
// input[type="password"]
|
|
101
|
-
// input[type="datetime"]
|
|
102
|
-
// input[type="datetime-local"]
|
|
103
|
-
// input[type="date"]
|
|
104
|
-
// input[type="month"]
|
|
105
|
-
// input[type="time"]
|
|
106
|
-
// input[type="week"]
|
|
107
|
-
// input[type="number"]
|
|
108
|
-
// input[type="email"]
|
|
109
|
-
// input[type="url"]
|
|
110
|
-
// input[type="search"]
|
|
111
|
-
// input[type="tel"]
|
|
112
|
-
// input[type="color"]
|
|
113
6
|
|
|
114
7
|
.form-control {
|
|
115
8
|
display: block;
|
|
116
9
|
width: 100%;
|
|
117
|
-
height: $input-height
|
|
118
|
-
padding: $padding-
|
|
119
|
-
font-size: $font-size
|
|
120
|
-
|
|
10
|
+
height: $input-height;
|
|
11
|
+
padding: $input-padding-y $input-padding-x;
|
|
12
|
+
font-size: $input-font-size;
|
|
13
|
+
font-weight: $input-font-weight;
|
|
14
|
+
line-height: $input-line-height;
|
|
121
15
|
color: $input-color;
|
|
122
16
|
background-color: $input-bg;
|
|
123
|
-
background-
|
|
124
|
-
border:
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
@
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
@
|
|
17
|
+
background-clip: padding-box;
|
|
18
|
+
border: $input-border-width solid $input-border-color;
|
|
19
|
+
|
|
20
|
+
// Note: This has no effect on <select>s in some browsers, due to the limited stylability of `<select>`s in CSS.
|
|
21
|
+
@if $enable-rounded {
|
|
22
|
+
// Manually use the if/else instead of the mixin to account for iOS override
|
|
23
|
+
border-radius: $input-border-radius;
|
|
24
|
+
} @else {
|
|
25
|
+
// Otherwise undo the iOS default
|
|
26
|
+
border-radius: 0;
|
|
27
|
+
}
|
|
131
28
|
|
|
132
|
-
|
|
133
|
-
@include
|
|
29
|
+
@include box-shadow($input-box-shadow);
|
|
30
|
+
@include transition($input-transition);
|
|
134
31
|
|
|
135
32
|
// Unstyle the caret on `<select>`s in IE10+.
|
|
136
33
|
&::-ms-expand {
|
|
137
|
-
border: 0;
|
|
138
34
|
background-color: transparent;
|
|
35
|
+
border: 0;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// Customize the `:focus` state to imitate native WebKit styles.
|
|
39
|
+
@include form-control-focus();
|
|
40
|
+
|
|
41
|
+
// Placeholder
|
|
42
|
+
&::placeholder {
|
|
43
|
+
color: $input-placeholder-color;
|
|
44
|
+
// Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526.
|
|
45
|
+
opacity: 1;
|
|
139
46
|
}
|
|
140
47
|
|
|
141
48
|
// Disabled and read-only inputs
|
|
@@ -143,320 +50,206 @@ output {
|
|
|
143
50
|
// HTML5 says that controls under a fieldset > legend:first-child won't be
|
|
144
51
|
// disabled if the fieldset is disabled. Due to implementation difficulty, we
|
|
145
52
|
// don't honor that edge case; we style them as disabled anyway.
|
|
146
|
-
|
|
147
|
-
&[readonly]
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
opacity: 1;
|
|
53
|
+
&:disabled,
|
|
54
|
+
&[readonly] {
|
|
55
|
+
background-color: $input-disabled-bg;
|
|
56
|
+
// iOS fix for unreadable disabled content; see https://github.com/twbs/bootstrap/issues/11655.
|
|
57
|
+
opacity: 1;
|
|
151
58
|
}
|
|
59
|
+
}
|
|
152
60
|
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
61
|
+
select.form-control {
|
|
62
|
+
&:focus::-ms-value {
|
|
63
|
+
// Suppress the nested default white text on blue background highlight given to
|
|
64
|
+
// the selected option text when the (still closed) <select> receives focus
|
|
65
|
+
// in IE and (under certain conditions) Edge, as it looks bad and cannot be made to
|
|
66
|
+
// match the appearance of the native widget.
|
|
67
|
+
// See https://github.com/twbs/bootstrap/issues/19398.
|
|
68
|
+
color: $input-color;
|
|
69
|
+
background-color: $input-bg;
|
|
156
70
|
}
|
|
157
|
-
|
|
158
|
-
// [converter] extracted textarea& to textarea.form-control
|
|
159
71
|
}
|
|
160
72
|
|
|
161
|
-
//
|
|
162
|
-
|
|
163
|
-
|
|
73
|
+
// Make file inputs better match text inputs by forcing them to new lines.
|
|
74
|
+
.form-control-file,
|
|
75
|
+
.form-control-range {
|
|
76
|
+
display: block;
|
|
77
|
+
width: 100%;
|
|
164
78
|
}
|
|
165
79
|
|
|
166
80
|
|
|
167
|
-
// Search inputs in iOS
|
|
168
81
|
//
|
|
169
|
-
//
|
|
170
|
-
//
|
|
171
|
-
// be added to `.form-control` as it's not specific enough. For details, see
|
|
172
|
-
// https://github.com/twbs/bootstrap/issues/11586.
|
|
82
|
+
// Labels
|
|
83
|
+
//
|
|
173
84
|
|
|
174
|
-
|
|
175
|
-
|
|
85
|
+
// For use with horizontal and inline forms, when you need the label (or legend)
|
|
86
|
+
// text to align with the form controls.
|
|
87
|
+
.col-form-label {
|
|
88
|
+
padding-top: calc(#{$input-padding-y} + #{$input-border-width});
|
|
89
|
+
padding-bottom: calc(#{$input-padding-y} + #{$input-border-width});
|
|
90
|
+
margin-bottom: 0; // Override the `<label>/<legend>` default
|
|
91
|
+
font-size: inherit; // Override the `<legend>` default
|
|
92
|
+
line-height: $input-line-height;
|
|
176
93
|
}
|
|
177
94
|
|
|
95
|
+
.col-form-label-lg {
|
|
96
|
+
padding-top: calc(#{$input-padding-y-lg} + #{$input-border-width});
|
|
97
|
+
padding-bottom: calc(#{$input-padding-y-lg} + #{$input-border-width});
|
|
98
|
+
font-size: $input-font-size-lg;
|
|
99
|
+
line-height: $input-line-height-lg;
|
|
100
|
+
}
|
|
178
101
|
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
// for Safari. See https://bugs.webkit.org/show_bug.cgi?id=139848
|
|
185
|
-
//
|
|
186
|
-
// Note that as of 9.3, iOS doesn't support `week`.
|
|
187
|
-
|
|
188
|
-
@media screen and (-webkit-min-device-pixel-ratio: 0) {
|
|
189
|
-
input[type="date"],
|
|
190
|
-
input[type="time"],
|
|
191
|
-
input[type="datetime-local"],
|
|
192
|
-
input[type="month"] {
|
|
193
|
-
&.form-control {
|
|
194
|
-
line-height: $input-height-base;
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
&.input-sm,
|
|
198
|
-
.input-group-sm & {
|
|
199
|
-
line-height: $input-height-small;
|
|
200
|
-
}
|
|
201
|
-
|
|
202
|
-
&.input-lg,
|
|
203
|
-
.input-group-lg & {
|
|
204
|
-
line-height: $input-height-large;
|
|
205
|
-
}
|
|
206
|
-
}
|
|
102
|
+
.col-form-label-sm {
|
|
103
|
+
padding-top: calc(#{$input-padding-y-sm} + #{$input-border-width});
|
|
104
|
+
padding-bottom: calc(#{$input-padding-y-sm} + #{$input-border-width});
|
|
105
|
+
font-size: $input-font-size-sm;
|
|
106
|
+
line-height: $input-line-height-sm;
|
|
207
107
|
}
|
|
208
108
|
|
|
209
109
|
|
|
210
|
-
//
|
|
110
|
+
// Readonly controls as plain text
|
|
211
111
|
//
|
|
212
|
-
//
|
|
213
|
-
//
|
|
112
|
+
// Apply class to a readonly input to make it appear like regular plain
|
|
113
|
+
// text (without any border, background color, focus indicator)
|
|
214
114
|
|
|
215
|
-
.form-
|
|
216
|
-
|
|
115
|
+
.form-control-plaintext {
|
|
116
|
+
display: block;
|
|
117
|
+
width: 100%;
|
|
118
|
+
padding-top: $input-padding-y;
|
|
119
|
+
padding-bottom: $input-padding-y;
|
|
120
|
+
margin-bottom: 0; // match inputs if this class comes on inputs with default margins
|
|
121
|
+
line-height: $input-line-height;
|
|
122
|
+
color: $input-plaintext-color;
|
|
123
|
+
background-color: transparent;
|
|
124
|
+
border: solid transparent;
|
|
125
|
+
border-width: $input-border-width 0;
|
|
126
|
+
|
|
127
|
+
&.form-control-sm,
|
|
128
|
+
&.form-control-lg {
|
|
129
|
+
padding-right: 0;
|
|
130
|
+
padding-left: 0;
|
|
131
|
+
}
|
|
217
132
|
}
|
|
218
133
|
|
|
219
134
|
|
|
220
|
-
//
|
|
135
|
+
// Form control sizing
|
|
221
136
|
//
|
|
222
|
-
//
|
|
137
|
+
// Build on `.form-control` with modifier classes to decrease or increase the
|
|
138
|
+
// height and font-size of form controls.
|
|
139
|
+
//
|
|
140
|
+
// Repeated in `_input_group.scss` to avoid Sass extend issues.
|
|
223
141
|
|
|
224
|
-
.
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
label {
|
|
232
|
-
min-height: $line-height-computed; // Ensure the input doesn't jump when there is no text
|
|
233
|
-
padding-left: 20px;
|
|
234
|
-
margin-bottom: 0;
|
|
235
|
-
font-weight: normal;
|
|
236
|
-
cursor: pointer;
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
.radio input[type="radio"],
|
|
240
|
-
.radio-inline input[type="radio"],
|
|
241
|
-
.checkbox input[type="checkbox"],
|
|
242
|
-
.checkbox-inline input[type="checkbox"] {
|
|
243
|
-
position: absolute;
|
|
244
|
-
margin-left: -20px;
|
|
245
|
-
margin-top: 4px \9;
|
|
142
|
+
.form-control-sm {
|
|
143
|
+
height: $input-height-sm;
|
|
144
|
+
padding: $input-padding-y-sm $input-padding-x-sm;
|
|
145
|
+
font-size: $input-font-size-sm;
|
|
146
|
+
line-height: $input-line-height-sm;
|
|
147
|
+
@include border-radius($input-border-radius-sm);
|
|
246
148
|
}
|
|
247
149
|
|
|
248
|
-
.
|
|
249
|
-
|
|
250
|
-
|
|
150
|
+
.form-control-lg {
|
|
151
|
+
height: $input-height-lg;
|
|
152
|
+
padding: $input-padding-y-lg $input-padding-x-lg;
|
|
153
|
+
font-size: $input-font-size-lg;
|
|
154
|
+
line-height: $input-line-height-lg;
|
|
155
|
+
@include border-radius($input-border-radius-lg);
|
|
251
156
|
}
|
|
252
157
|
|
|
253
|
-
//
|
|
254
|
-
.
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
margin-bottom: 0;
|
|
260
|
-
vertical-align: middle;
|
|
261
|
-
font-weight: normal;
|
|
262
|
-
cursor: pointer;
|
|
158
|
+
// stylelint-disable-next-line no-duplicate-selectors
|
|
159
|
+
select.form-control {
|
|
160
|
+
&[size],
|
|
161
|
+
&[multiple] {
|
|
162
|
+
height: auto;
|
|
163
|
+
}
|
|
263
164
|
}
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
165
|
+
|
|
166
|
+
// stylelint-disable-next-line no-duplicate-selectors
|
|
167
|
+
textarea.form-control {
|
|
168
|
+
height: auto;
|
|
268
169
|
}
|
|
269
170
|
|
|
270
|
-
//
|
|
271
|
-
// Some special care is needed because <label>s don't inherit their parent's `cursor`.
|
|
171
|
+
// Form groups
|
|
272
172
|
//
|
|
273
|
-
//
|
|
274
|
-
|
|
275
|
-
input[type="checkbox"] {
|
|
276
|
-
&[disabled],
|
|
277
|
-
&.disabled,
|
|
278
|
-
fieldset[disabled] & {
|
|
279
|
-
cursor: $cursor-disabled;
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
|
-
// These classes are used directly on <label>s
|
|
283
|
-
.radio-inline,
|
|
284
|
-
.checkbox-inline {
|
|
285
|
-
&.disabled,
|
|
286
|
-
fieldset[disabled] & {
|
|
287
|
-
cursor: $cursor-disabled;
|
|
288
|
-
}
|
|
289
|
-
}
|
|
290
|
-
// These classes are used on elements with <label> descendants
|
|
291
|
-
.radio,
|
|
292
|
-
.checkbox {
|
|
293
|
-
&.disabled,
|
|
294
|
-
fieldset[disabled] & {
|
|
295
|
-
label {
|
|
296
|
-
cursor: $cursor-disabled;
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
}
|
|
173
|
+
// Designed to help with the organization and spacing of vertical forms. For
|
|
174
|
+
// horizontal forms, use the predefined grid classes.
|
|
300
175
|
|
|
176
|
+
.form-group {
|
|
177
|
+
margin-bottom: $form-group-margin-bottom;
|
|
178
|
+
}
|
|
301
179
|
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
// a horizontal form layout.
|
|
306
|
-
|
|
307
|
-
.form-control-static {
|
|
308
|
-
// Size it appropriately next to real form controls
|
|
309
|
-
padding-top: ($padding-base-vertical + 1);
|
|
310
|
-
padding-bottom: ($padding-base-vertical + 1);
|
|
311
|
-
// Remove default margin from `p`
|
|
312
|
-
margin-bottom: 0;
|
|
313
|
-
min-height: ($line-height-computed + $font-size-base);
|
|
314
|
-
|
|
315
|
-
&.input-lg,
|
|
316
|
-
&.input-sm {
|
|
317
|
-
padding-left: 0;
|
|
318
|
-
padding-right: 0;
|
|
319
|
-
}
|
|
180
|
+
.form-text {
|
|
181
|
+
display: block;
|
|
182
|
+
margin-top: $form-text-margin-top;
|
|
320
183
|
}
|
|
321
184
|
|
|
322
185
|
|
|
323
|
-
// Form
|
|
324
|
-
//
|
|
325
|
-
// Build on `.form-control` with modifier classes to decrease or increase the
|
|
326
|
-
// height and font-size of form controls.
|
|
186
|
+
// Form grid
|
|
327
187
|
//
|
|
328
|
-
//
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
select.form-control {
|
|
341
|
-
height: $input-height-small;
|
|
342
|
-
line-height: $input-height-small;
|
|
343
|
-
}
|
|
344
|
-
textarea.form-control,
|
|
345
|
-
select[multiple].form-control {
|
|
346
|
-
height: auto;
|
|
347
|
-
}
|
|
348
|
-
.form-control-static {
|
|
349
|
-
height: $input-height-small;
|
|
350
|
-
min-height: ($line-height-computed + $font-size-small);
|
|
351
|
-
padding: ($padding-small-vertical + 1) $padding-small-horizontal;
|
|
352
|
-
font-size: $font-size-small;
|
|
353
|
-
line-height: $line-height-small;
|
|
354
|
-
}
|
|
355
|
-
}
|
|
356
|
-
|
|
357
|
-
@include input-size('.input-lg', $input-height-large, $padding-large-vertical, $padding-large-horizontal, $font-size-large, $line-height-large, $input-border-radius-large);
|
|
358
|
-
.form-group-lg {
|
|
359
|
-
.form-control {
|
|
360
|
-
height: $input-height-large;
|
|
361
|
-
padding: $padding-large-vertical $padding-large-horizontal;
|
|
362
|
-
font-size: $font-size-large;
|
|
363
|
-
line-height: $line-height-large;
|
|
364
|
-
border-radius: $input-border-radius-large;
|
|
365
|
-
}
|
|
366
|
-
select.form-control {
|
|
367
|
-
height: $input-height-large;
|
|
368
|
-
line-height: $input-height-large;
|
|
369
|
-
}
|
|
370
|
-
textarea.form-control,
|
|
371
|
-
select[multiple].form-control {
|
|
372
|
-
height: auto;
|
|
373
|
-
}
|
|
374
|
-
.form-control-static {
|
|
375
|
-
height: $input-height-large;
|
|
376
|
-
min-height: ($line-height-computed + $font-size-large);
|
|
377
|
-
padding: ($padding-large-vertical + 1) $padding-large-horizontal;
|
|
378
|
-
font-size: $font-size-large;
|
|
379
|
-
line-height: $line-height-large;
|
|
188
|
+
// Special replacement for our grid system's `.row` for tighter form layouts.
|
|
189
|
+
|
|
190
|
+
.form-row {
|
|
191
|
+
display: flex;
|
|
192
|
+
flex-wrap: wrap;
|
|
193
|
+
margin-right: -$form-grid-gutter-width / 2;
|
|
194
|
+
margin-left: -$form-grid-gutter-width / 2;
|
|
195
|
+
|
|
196
|
+
> .col,
|
|
197
|
+
> [class*="col-"] {
|
|
198
|
+
padding-right: $form-grid-gutter-width / 2;
|
|
199
|
+
padding-left: $form-grid-gutter-width / 2;
|
|
380
200
|
}
|
|
381
201
|
}
|
|
382
202
|
|
|
383
203
|
|
|
384
|
-
//
|
|
204
|
+
// Checkboxes and radios
|
|
385
205
|
//
|
|
386
|
-
//
|
|
206
|
+
// Indent the labels to position radios/checkboxes as hanging controls.
|
|
387
207
|
|
|
388
|
-
.
|
|
389
|
-
// Enable absolute positioning
|
|
208
|
+
.form-check {
|
|
390
209
|
position: relative;
|
|
391
|
-
|
|
392
|
-
// Ensure icons don't overlap text
|
|
393
|
-
.form-control {
|
|
394
|
-
padding-right: ($input-height-base * 1.25);
|
|
395
|
-
}
|
|
396
|
-
}
|
|
397
|
-
// Feedback icon (requires .glyphicon classes)
|
|
398
|
-
.form-control-feedback {
|
|
399
|
-
position: absolute;
|
|
400
|
-
top: 0;
|
|
401
|
-
right: 0;
|
|
402
|
-
z-index: 2; // Ensure icon is above input groups
|
|
403
210
|
display: block;
|
|
404
|
-
|
|
405
|
-
height: $input-height-base;
|
|
406
|
-
line-height: $input-height-base;
|
|
407
|
-
text-align: center;
|
|
408
|
-
pointer-events: none;
|
|
409
|
-
}
|
|
410
|
-
.input-lg + .form-control-feedback,
|
|
411
|
-
.input-group-lg + .form-control-feedback,
|
|
412
|
-
.form-group-lg .form-control + .form-control-feedback {
|
|
413
|
-
width: $input-height-large;
|
|
414
|
-
height: $input-height-large;
|
|
415
|
-
line-height: $input-height-large;
|
|
416
|
-
}
|
|
417
|
-
.input-sm + .form-control-feedback,
|
|
418
|
-
.input-group-sm + .form-control-feedback,
|
|
419
|
-
.form-group-sm .form-control + .form-control-feedback {
|
|
420
|
-
width: $input-height-small;
|
|
421
|
-
height: $input-height-small;
|
|
422
|
-
line-height: $input-height-small;
|
|
211
|
+
padding-left: $form-check-input-gutter;
|
|
423
212
|
}
|
|
424
213
|
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
214
|
+
.form-check-input {
|
|
215
|
+
position: absolute;
|
|
216
|
+
margin-top: $form-check-input-margin-y;
|
|
217
|
+
margin-left: -$form-check-input-gutter;
|
|
218
|
+
|
|
219
|
+
&:disabled ~ .form-check-label {
|
|
220
|
+
color: $text-muted;
|
|
221
|
+
}
|
|
431
222
|
}
|
|
432
|
-
|
|
433
|
-
|
|
223
|
+
|
|
224
|
+
.form-check-label {
|
|
225
|
+
margin-bottom: 0; // Override default `<label>` bottom margin
|
|
434
226
|
}
|
|
435
227
|
|
|
436
|
-
|
|
437
|
-
|
|
228
|
+
.form-check-inline {
|
|
229
|
+
display: inline-flex;
|
|
230
|
+
align-items: center;
|
|
231
|
+
padding-left: 0; // Override base .form-check
|
|
232
|
+
margin-right: $form-check-inline-margin-x;
|
|
438
233
|
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
234
|
+
// Undo .form-check-input defaults and add some `margin-right`.
|
|
235
|
+
.form-check-input {
|
|
236
|
+
position: static;
|
|
237
|
+
margin-top: 0;
|
|
238
|
+
margin-right: $form-check-inline-input-margin-x;
|
|
239
|
+
margin-left: 0;
|
|
444
240
|
}
|
|
445
241
|
}
|
|
446
242
|
|
|
447
243
|
|
|
448
|
-
//
|
|
244
|
+
// Form validation
|
|
449
245
|
//
|
|
450
|
-
//
|
|
451
|
-
//
|
|
452
|
-
|
|
453
|
-
.
|
|
454
|
-
display: block; // account for any element using help-block
|
|
455
|
-
margin-top: 5px;
|
|
456
|
-
margin-bottom: 10px;
|
|
457
|
-
color: lighten($text-color, 25%); // lighten the text some for contrast
|
|
458
|
-
}
|
|
246
|
+
// Provide feedback to users when form field values are valid or invalid. Works
|
|
247
|
+
// primarily for client-side validation via scoped `:invalid` and `:valid`
|
|
248
|
+
// pseudo-classes but also includes `.is-invalid` and `.is-valid` classes for
|
|
249
|
+
// server side validation.
|
|
459
250
|
|
|
251
|
+
@include form-validation-state("valid", $form-feedback-valid-color);
|
|
252
|
+
@include form-validation-state("invalid", $form-feedback-invalid-color);
|
|
460
253
|
|
|
461
254
|
// Inline forms
|
|
462
255
|
//
|
|
@@ -466,22 +259,38 @@ input[type="checkbox"] {
|
|
|
466
259
|
//
|
|
467
260
|
// Requires wrapping inputs and labels with `.form-group` for proper display of
|
|
468
261
|
// default HTML form controls and our custom form controls (e.g., input groups).
|
|
469
|
-
//
|
|
470
|
-
// Heads up! This is mixin-ed into `.navbar-form` in navbars.less.
|
|
471
262
|
|
|
472
|
-
|
|
473
|
-
|
|
263
|
+
.form-inline {
|
|
264
|
+
display: flex;
|
|
265
|
+
flex-flow: row wrap;
|
|
266
|
+
align-items: center; // Prevent shorter elements from growing to same height as others (e.g., small buttons growing to normal sized button height)
|
|
267
|
+
|
|
268
|
+
// Because we use flex, the initial sizing of checkboxes is collapsed and
|
|
269
|
+
// doesn't occupy the full-width (which is what we want for xs grid tier),
|
|
270
|
+
// so we force that here.
|
|
271
|
+
.form-check {
|
|
272
|
+
width: 100%;
|
|
273
|
+
}
|
|
474
274
|
|
|
475
275
|
// Kick in the inline
|
|
476
|
-
@media
|
|
276
|
+
@include media-breakpoint-up(sm) {
|
|
277
|
+
label {
|
|
278
|
+
display: flex;
|
|
279
|
+
align-items: center;
|
|
280
|
+
justify-content: center;
|
|
281
|
+
margin-bottom: 0;
|
|
282
|
+
}
|
|
283
|
+
|
|
477
284
|
// Inline-block all the things for "inline"
|
|
478
285
|
.form-group {
|
|
479
|
-
display:
|
|
286
|
+
display: flex;
|
|
287
|
+
flex: 0 0 auto;
|
|
288
|
+
flex-flow: row wrap;
|
|
289
|
+
align-items: center;
|
|
480
290
|
margin-bottom: 0;
|
|
481
|
-
vertical-align: middle;
|
|
482
291
|
}
|
|
483
292
|
|
|
484
|
-
//
|
|
293
|
+
// Allow folks to *not* use `.form-group`
|
|
485
294
|
.form-control {
|
|
486
295
|
display: inline-block;
|
|
487
296
|
width: auto; // Prevent labels from stacking above inputs in `.form-group`
|
|
@@ -489,129 +298,37 @@ input[type="checkbox"] {
|
|
|
489
298
|
}
|
|
490
299
|
|
|
491
300
|
// Make static controls behave like regular ones
|
|
492
|
-
.form-control-
|
|
301
|
+
.form-control-plaintext {
|
|
493
302
|
display: inline-block;
|
|
494
303
|
}
|
|
495
304
|
|
|
496
|
-
.input-group
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
.input-group-addon,
|
|
501
|
-
.input-group-btn,
|
|
502
|
-
.form-control {
|
|
503
|
-
width: auto;
|
|
504
|
-
}
|
|
505
|
-
}
|
|
506
|
-
|
|
507
|
-
// Input groups need that 100% width though
|
|
508
|
-
.input-group > .form-control {
|
|
509
|
-
width: 100%;
|
|
510
|
-
}
|
|
511
|
-
|
|
512
|
-
.control-label {
|
|
513
|
-
margin-bottom: 0;
|
|
514
|
-
vertical-align: middle;
|
|
305
|
+
.input-group,
|
|
306
|
+
.custom-select {
|
|
307
|
+
width: auto;
|
|
515
308
|
}
|
|
516
309
|
|
|
517
310
|
// Remove default margin on radios/checkboxes that were used for stacking, and
|
|
518
311
|
// then undo the floating of radios and checkboxes to match.
|
|
519
|
-
.
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
label {
|
|
527
|
-
padding-left: 0;
|
|
528
|
-
}
|
|
312
|
+
.form-check {
|
|
313
|
+
display: flex;
|
|
314
|
+
align-items: center;
|
|
315
|
+
justify-content: center;
|
|
316
|
+
width: auto;
|
|
317
|
+
padding-left: 0;
|
|
529
318
|
}
|
|
530
|
-
.
|
|
531
|
-
.checkbox input[type="checkbox"] {
|
|
319
|
+
.form-check-input {
|
|
532
320
|
position: relative;
|
|
321
|
+
margin-top: 0;
|
|
322
|
+
margin-right: $form-check-input-margin-x;
|
|
533
323
|
margin-left: 0;
|
|
534
324
|
}
|
|
535
325
|
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
326
|
+
.custom-control {
|
|
327
|
+
align-items: center;
|
|
328
|
+
justify-content: center;
|
|
539
329
|
}
|
|
540
|
-
|
|
541
|
-
}
|
|
542
|
-
// [converter] extracted as `@mixin form-inline` for libsass compatibility
|
|
543
|
-
.form-inline {
|
|
544
|
-
@include form-inline;
|
|
545
|
-
}
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
// Horizontal forms
|
|
550
|
-
//
|
|
551
|
-
// Horizontal forms are built on grid classes and allow you to create forms with
|
|
552
|
-
// labels on the left and inputs on the right.
|
|
553
|
-
|
|
554
|
-
.form-horizontal {
|
|
555
|
-
|
|
556
|
-
// Consistent vertical alignment of radios and checkboxes
|
|
557
|
-
//
|
|
558
|
-
// Labels also get some reset styles, but that is scoped to a media query below.
|
|
559
|
-
.radio,
|
|
560
|
-
.checkbox,
|
|
561
|
-
.radio-inline,
|
|
562
|
-
.checkbox-inline {
|
|
563
|
-
margin-top: 0;
|
|
564
|
-
margin-bottom: 0;
|
|
565
|
-
padding-top: ($padding-base-vertical + 1); // Default padding plus a border
|
|
566
|
-
}
|
|
567
|
-
// Account for padding we're adding to ensure the alignment and of help text
|
|
568
|
-
// and other content below items
|
|
569
|
-
.radio,
|
|
570
|
-
.checkbox {
|
|
571
|
-
min-height: ($line-height-computed + ($padding-base-vertical + 1));
|
|
572
|
-
}
|
|
573
|
-
|
|
574
|
-
// Make form groups behave like rows
|
|
575
|
-
.form-group {
|
|
576
|
-
@include make-row;
|
|
577
|
-
}
|
|
578
|
-
|
|
579
|
-
// Reset spacing and right align labels, but scope to media queries so that
|
|
580
|
-
// labels on narrow viewports stack the same as a default form example.
|
|
581
|
-
@media (min-width: $screen-sm-min) {
|
|
582
|
-
.control-label {
|
|
583
|
-
text-align: right;
|
|
330
|
+
.custom-control-label {
|
|
584
331
|
margin-bottom: 0;
|
|
585
|
-
padding-top: ($padding-base-vertical + 1); // Default padding plus a border
|
|
586
|
-
}
|
|
587
|
-
}
|
|
588
|
-
|
|
589
|
-
// Validation states
|
|
590
|
-
//
|
|
591
|
-
// Reposition the icon because it's now within a grid column and columns have
|
|
592
|
-
// `position: relative;` on them. Also accounts for the grid gutter padding.
|
|
593
|
-
.has-feedback .form-control-feedback {
|
|
594
|
-
right: floor(($grid-gutter-width / 2));
|
|
595
|
-
}
|
|
596
|
-
|
|
597
|
-
// Form group sizes
|
|
598
|
-
//
|
|
599
|
-
// Quick utility class for applying `.input-lg` and `.input-sm` styles to the
|
|
600
|
-
// inputs and labels within a `.form-group`.
|
|
601
|
-
.form-group-lg {
|
|
602
|
-
@media (min-width: $screen-sm-min) {
|
|
603
|
-
.control-label {
|
|
604
|
-
padding-top: ($padding-large-vertical + 1);
|
|
605
|
-
font-size: $font-size-large;
|
|
606
|
-
}
|
|
607
|
-
}
|
|
608
|
-
}
|
|
609
|
-
.form-group-sm {
|
|
610
|
-
@media (min-width: $screen-sm-min) {
|
|
611
|
-
.control-label {
|
|
612
|
-
padding-top: ($padding-small-vertical + 1);
|
|
613
|
-
font-size: $font-size-small;
|
|
614
|
-
}
|
|
615
332
|
}
|
|
616
333
|
}
|
|
617
334
|
}
|