bootstrap 4.3.0 → 5.1.0
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/.travis.yml +17 -2
- data/CHANGELOG.md +2 -14
- data/README.md +7 -4
- data/assets/javascripts/bootstrap/alert.js +173 -137
- data/assets/javascripts/bootstrap/base-component.js +182 -0
- data/assets/javascripts/bootstrap/button.js +102 -143
- data/assets/javascripts/bootstrap/carousel.js +481 -410
- data/assets/javascripts/bootstrap/collapse.js +340 -274
- data/assets/javascripts/bootstrap/dom/data.js +68 -0
- data/assets/javascripts/bootstrap/dom/event-handler.js +322 -0
- data/assets/javascripts/bootstrap/dom/manipulator.js +88 -0
- data/assets/javascripts/bootstrap/dom/selector-engine.js +127 -0
- data/assets/javascripts/bootstrap/dropdown.js +494 -400
- data/assets/javascripts/bootstrap/modal.js +834 -450
- data/assets/javascripts/bootstrap/offcanvas.js +866 -0
- data/assets/javascripts/bootstrap/popover.js +122 -199
- data/assets/javascripts/bootstrap/scrollspy.js +257 -241
- data/assets/javascripts/bootstrap/tab.js +219 -155
- data/assets/javascripts/bootstrap/toast.js +330 -190
- data/assets/javascripts/bootstrap/tooltip.js +710 -472
- data/assets/javascripts/bootstrap-global-this-define.js +6 -0
- data/assets/javascripts/bootstrap-global-this-undefine.js +2 -0
- data/assets/javascripts/bootstrap-sprockets.js +8 -1
- data/assets/javascripts/bootstrap.js +3547 -2809
- data/assets/javascripts/bootstrap.min.js +4 -4
- data/assets/stylesheets/_bootstrap-grid.scss +54 -18
- data/assets/stylesheets/_bootstrap-reboot.scss +7 -4
- data/assets/stylesheets/_bootstrap.scss +20 -11
- data/assets/stylesheets/bootstrap/_accordion.scss +118 -0
- data/assets/stylesheets/bootstrap/_alert.scss +15 -9
- data/assets/stylesheets/bootstrap/_badge.scss +2 -27
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +5 -18
- data/assets/stylesheets/bootstrap/_button-group.scss +21 -45
- data/assets/stylesheets/bootstrap/_buttons.scss +28 -54
- data/assets/stylesheets/bootstrap/_card.scss +52 -125
- data/assets/stylesheets/bootstrap/_carousel.scss +70 -38
- data/assets/stylesheets/bootstrap/_close.scss +30 -31
- data/assets/stylesheets/bootstrap/_containers.scss +41 -0
- data/assets/stylesheets/bootstrap/_dropdown.scss +88 -39
- data/assets/stylesheets/bootstrap/_forms.scss +9 -330
- data/assets/stylesheets/bootstrap/_functions.scss +237 -27
- data/assets/stylesheets/bootstrap/_grid.scss +14 -33
- data/assets/stylesheets/bootstrap/_helpers.scss +9 -0
- data/assets/stylesheets/bootstrap/_images.scss +3 -3
- data/assets/stylesheets/bootstrap/_list-group.scss +61 -36
- data/assets/stylesheets/bootstrap/_mixins.scss +12 -16
- data/assets/stylesheets/bootstrap/_modal.scss +64 -84
- data/assets/stylesheets/bootstrap/_nav.scss +29 -10
- data/assets/stylesheets/bootstrap/_navbar.scss +93 -52
- data/assets/stylesheets/bootstrap/_offcanvas.scss +83 -0
- data/assets/stylesheets/bootstrap/_pagination.scss +13 -22
- data/assets/stylesheets/bootstrap/_placeholders.scss +51 -0
- data/assets/stylesheets/bootstrap/_popover.scss +29 -42
- data/assets/stylesheets/bootstrap/_progress.scss +10 -5
- data/assets/stylesheets/bootstrap/_reboot.scss +350 -208
- data/assets/stylesheets/bootstrap/_root.scss +42 -8
- data/assets/stylesheets/bootstrap/_spinners.scss +21 -7
- data/assets/stylesheets/bootstrap/_tables.scss +80 -114
- data/assets/stylesheets/bootstrap/_toasts.scss +21 -14
- data/assets/stylesheets/bootstrap/_tooltip.scss +21 -21
- data/assets/stylesheets/bootstrap/_transitions.scss +8 -1
- data/assets/stylesheets/bootstrap/_type.scss +40 -61
- data/assets/stylesheets/bootstrap/_utilities.scss +630 -17
- data/assets/stylesheets/bootstrap/_variables.scss +993 -487
- data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +18 -0
- data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +63 -0
- data/assets/stylesheets/bootstrap/forms/_form-check.scss +152 -0
- data/assets/stylesheets/bootstrap/forms/_form-control.scss +219 -0
- data/assets/stylesheets/bootstrap/forms/_form-range.scss +91 -0
- data/assets/stylesheets/bootstrap/forms/_form-select.scss +70 -0
- data/assets/stylesheets/bootstrap/forms/_form-text.scss +11 -0
- data/assets/stylesheets/bootstrap/forms/_input-group.scss +121 -0
- data/assets/stylesheets/bootstrap/forms/_labels.scss +36 -0
- data/assets/stylesheets/bootstrap/forms/_validation.scss +12 -0
- data/assets/stylesheets/bootstrap/{utilities → helpers}/_clearfix.scss +0 -0
- data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +12 -0
- data/assets/stylesheets/bootstrap/helpers/_position.scss +30 -0
- data/assets/stylesheets/bootstrap/helpers/_ratio.scss +26 -0
- data/assets/stylesheets/bootstrap/helpers/_stacks.scss +15 -0
- data/assets/stylesheets/bootstrap/helpers/_stretched-link.scss +15 -0
- data/assets/stylesheets/bootstrap/helpers/_text-truncation.scss +7 -0
- data/assets/stylesheets/bootstrap/helpers/_visually-hidden.scss +8 -0
- data/assets/stylesheets/bootstrap/helpers/_vr.scss +8 -0
- data/assets/stylesheets/bootstrap/mixins/_alert.scss +3 -5
- data/assets/stylesheets/bootstrap/mixins/_backdrop.scss +14 -0
- data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +37 -22
- data/assets/stylesheets/bootstrap/mixins/_box-shadow.scss +7 -9
- data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +14 -10
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +77 -51
- data/assets/stylesheets/bootstrap/mixins/_caret.scss +10 -8
- data/assets/stylesheets/bootstrap/mixins/_clearfix.scss +2 -0
- data/assets/stylesheets/bootstrap/mixins/_color-scheme.scss +7 -0
- data/assets/stylesheets/bootstrap/mixins/_container.scss +9 -0
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +67 -115
- data/assets/stylesheets/bootstrap/mixins/_gradients.scss +13 -11
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +131 -32
- data/assets/stylesheets/bootstrap/mixins/_image.scss +0 -20
- data/assets/stylesheets/bootstrap/mixins/_list-group.scss +5 -2
- data/assets/stylesheets/bootstrap/mixins/_pagination.scss +17 -8
- data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +21 -0
- data/assets/stylesheets/bootstrap/mixins/_transition.scss +18 -8
- data/assets/stylesheets/bootstrap/mixins/_utilities.scss +89 -0
- data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +29 -0
- data/assets/stylesheets/bootstrap/utilities/_api.scss +47 -0
- data/assets/stylesheets/bootstrap/vendor/_rfs.scss +274 -132
- data/bootstrap.gemspec +4 -6
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/js.rb +25 -6
- data/tasks/updater/network.rb +8 -2
- data/test/dummy_rails/app/assets/config/manifest.js +3 -0
- data/test/dummy_rails/app/assets/javascripts/application.js +4 -3
- data/test/dummy_rails/app/assets/stylesheets/.browserslistrc +1 -0
- data/test/dummy_rails/app/views/layouts/application.html.erb +3 -1
- data/test/dummy_rails/app/views/pages/root.html +89 -0
- data/test/dummy_rails/config/application.rb +0 -3
- data/test/gemfiles/rails_6_0.gemfile +7 -0
- data/test/gemfiles/rails_6_1.gemfile +7 -0
- data/test/support/dummy_rails_integration.rb +3 -1
- data/test/test_helper.rb +18 -13
- metadata +61 -79
- data/assets/javascripts/bootstrap/util.js +0 -171
- data/assets/stylesheets/bootstrap/_code.scss +0 -48
- data/assets/stylesheets/bootstrap/_custom-forms.scss +0 -507
- data/assets/stylesheets/bootstrap/_input-group.scss +0 -193
- data/assets/stylesheets/bootstrap/_jumbotron.scss +0 -17
- data/assets/stylesheets/bootstrap/_media.scss +0 -8
- data/assets/stylesheets/bootstrap/_print.scss +0 -141
- data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +0 -21
- data/assets/stylesheets/bootstrap/mixins/_badge.scss +0 -17
- data/assets/stylesheets/bootstrap/mixins/_float.scss +0 -14
- data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +0 -66
- data/assets/stylesheets/bootstrap/mixins/_hover.scss +0 -37
- data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +0 -10
- data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +0 -33
- data/assets/stylesheets/bootstrap/mixins/_size.scss +0 -7
- data/assets/stylesheets/bootstrap/mixins/_table-row.scss +0 -39
- data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +0 -16
- data/assets/stylesheets/bootstrap/mixins/_text-hide.scss +0 -11
- data/assets/stylesheets/bootstrap/mixins/_visibility.scss +0 -8
- data/assets/stylesheets/bootstrap/utilities/_align.scss +0 -8
- data/assets/stylesheets/bootstrap/utilities/_background.scss +0 -19
- data/assets/stylesheets/bootstrap/utilities/_borders.scss +0 -75
- data/assets/stylesheets/bootstrap/utilities/_display.scss +0 -26
- data/assets/stylesheets/bootstrap/utilities/_embed.scss +0 -39
- data/assets/stylesheets/bootstrap/utilities/_flex.scss +0 -51
- data/assets/stylesheets/bootstrap/utilities/_float.scss +0 -11
- data/assets/stylesheets/bootstrap/utilities/_overflow.scss +0 -5
- data/assets/stylesheets/bootstrap/utilities/_position.scss +0 -32
- data/assets/stylesheets/bootstrap/utilities/_screenreaders.scss +0 -11
- data/assets/stylesheets/bootstrap/utilities/_shadows.scss +0 -6
- data/assets/stylesheets/bootstrap/utilities/_sizing.scss +0 -20
- data/assets/stylesheets/bootstrap/utilities/_spacing.scss +0 -73
- data/assets/stylesheets/bootstrap/utilities/_stretched-link.scss +0 -19
- data/assets/stylesheets/bootstrap/utilities/_text.scss +0 -72
- data/assets/stylesheets/bootstrap/utilities/_visibility.scss +0 -13
- data/test/dummy_rails/app/views/pages/root.html.slim +0 -58
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Base class
|
|
2
2
|
//
|
|
3
3
|
// Kickstart any navigation component with a set of style resets. Works with
|
|
4
|
-
// `<nav>`s or `<
|
|
4
|
+
// `<nav>`s, `<ul>`s or `<ol>`s.
|
|
5
5
|
|
|
6
6
|
.nav {
|
|
7
7
|
display: flex;
|
|
@@ -14,9 +14,16 @@
|
|
|
14
14
|
.nav-link {
|
|
15
15
|
display: block;
|
|
16
16
|
padding: $nav-link-padding-y $nav-link-padding-x;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
@include font-size($nav-link-font-size);
|
|
18
|
+
font-weight: $nav-link-font-weight;
|
|
19
|
+
color: $nav-link-color;
|
|
20
|
+
text-decoration: if($link-decoration == none, null, none);
|
|
21
|
+
@include transition($nav-link-transition);
|
|
22
|
+
|
|
23
|
+
&:hover,
|
|
24
|
+
&:focus {
|
|
25
|
+
color: $nav-link-hover-color;
|
|
26
|
+
text-decoration: if($link-hover-decoration == underline, none, null);
|
|
20
27
|
}
|
|
21
28
|
|
|
22
29
|
// Disabled state lightens text
|
|
@@ -34,16 +41,17 @@
|
|
|
34
41
|
.nav-tabs {
|
|
35
42
|
border-bottom: $nav-tabs-border-width solid $nav-tabs-border-color;
|
|
36
43
|
|
|
37
|
-
.nav-item {
|
|
38
|
-
margin-bottom: -$nav-tabs-border-width;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
44
|
.nav-link {
|
|
45
|
+
margin-bottom: -$nav-tabs-border-width;
|
|
46
|
+
background: none;
|
|
42
47
|
border: $nav-tabs-border-width solid transparent;
|
|
43
48
|
@include border-top-radius($nav-tabs-border-radius);
|
|
44
49
|
|
|
45
|
-
|
|
50
|
+
&:hover,
|
|
51
|
+
&:focus {
|
|
46
52
|
border-color: $nav-tabs-link-hover-border-color;
|
|
53
|
+
// Prevents active .nav-link tab overlapping focus outline of previous/next .nav-link
|
|
54
|
+
isolation: isolate;
|
|
47
55
|
}
|
|
48
56
|
|
|
49
57
|
&.disabled {
|
|
@@ -75,13 +83,15 @@
|
|
|
75
83
|
|
|
76
84
|
.nav-pills {
|
|
77
85
|
.nav-link {
|
|
86
|
+
background: none;
|
|
87
|
+
border: 0;
|
|
78
88
|
@include border-radius($nav-pills-border-radius);
|
|
79
89
|
}
|
|
80
90
|
|
|
81
91
|
.nav-link.active,
|
|
82
92
|
.show > .nav-link {
|
|
83
93
|
color: $nav-pills-link-active-color;
|
|
84
|
-
|
|
94
|
+
@include gradient-bg($nav-pills-link-active-bg);
|
|
85
95
|
}
|
|
86
96
|
}
|
|
87
97
|
|
|
@@ -91,6 +101,7 @@
|
|
|
91
101
|
//
|
|
92
102
|
|
|
93
103
|
.nav-fill {
|
|
104
|
+
> .nav-link,
|
|
94
105
|
.nav-item {
|
|
95
106
|
flex: 1 1 auto;
|
|
96
107
|
text-align: center;
|
|
@@ -98,6 +109,7 @@
|
|
|
98
109
|
}
|
|
99
110
|
|
|
100
111
|
.nav-justified {
|
|
112
|
+
> .nav-link,
|
|
101
113
|
.nav-item {
|
|
102
114
|
flex-basis: 0;
|
|
103
115
|
flex-grow: 1;
|
|
@@ -105,6 +117,13 @@
|
|
|
105
117
|
}
|
|
106
118
|
}
|
|
107
119
|
|
|
120
|
+
.nav-fill,
|
|
121
|
+
.nav-justified {
|
|
122
|
+
.nav-item .nav-link {
|
|
123
|
+
width: 100%; // Make sure button will grow
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
|
|
108
127
|
|
|
109
128
|
// Tabbable tabs
|
|
110
129
|
//
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
// Navbar brand
|
|
5
5
|
// Navbar nav
|
|
6
6
|
// Navbar text
|
|
7
|
-
// Navbar divider
|
|
8
7
|
// Responsive navbar
|
|
9
8
|
// Navbar position
|
|
10
9
|
// Navbar themes
|
|
@@ -21,17 +20,32 @@
|
|
|
21
20
|
flex-wrap: wrap; // allow us to do the line break for collapsing content
|
|
22
21
|
align-items: center;
|
|
23
22
|
justify-content: space-between; // space out brand from logo
|
|
24
|
-
padding: $navbar-padding-y
|
|
23
|
+
padding-top: $navbar-padding-y;
|
|
24
|
+
padding-right: $navbar-padding-x; // default: null
|
|
25
|
+
padding-bottom: $navbar-padding-y;
|
|
26
|
+
padding-left: $navbar-padding-x; // default: null
|
|
27
|
+
@include gradient-bg();
|
|
25
28
|
|
|
26
29
|
// Because flex properties aren't inherited, we need to redeclare these first
|
|
27
30
|
// few properties so that content nested within behave properly.
|
|
28
|
-
|
|
29
|
-
|
|
31
|
+
// The `flex-wrap` property is inherited to simplify the expanded navbars
|
|
32
|
+
%container-flex-properties {
|
|
30
33
|
display: flex;
|
|
31
|
-
flex-wrap:
|
|
34
|
+
flex-wrap: inherit;
|
|
32
35
|
align-items: center;
|
|
33
36
|
justify-content: space-between;
|
|
34
37
|
}
|
|
38
|
+
|
|
39
|
+
> .container,
|
|
40
|
+
> .container-fluid {
|
|
41
|
+
@extend %container-flex-properties;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
@each $breakpoint, $container-max-width in $container-max-widths {
|
|
45
|
+
> .container#{breakpoint-infix($breakpoint, $container-max-widths)} {
|
|
46
|
+
@extend %container-flex-properties;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
35
49
|
}
|
|
36
50
|
|
|
37
51
|
|
|
@@ -40,16 +54,16 @@
|
|
|
40
54
|
// Used for brand, project, or site names.
|
|
41
55
|
|
|
42
56
|
.navbar-brand {
|
|
43
|
-
display: inline-block;
|
|
44
57
|
padding-top: $navbar-brand-padding-y;
|
|
45
58
|
padding-bottom: $navbar-brand-padding-y;
|
|
46
|
-
margin-right: $navbar-
|
|
59
|
+
margin-right: $navbar-brand-margin-end;
|
|
47
60
|
@include font-size($navbar-brand-font-size);
|
|
48
|
-
|
|
61
|
+
text-decoration: if($link-decoration == none, null, none);
|
|
49
62
|
white-space: nowrap;
|
|
50
63
|
|
|
51
|
-
|
|
52
|
-
|
|
64
|
+
&:hover,
|
|
65
|
+
&:focus {
|
|
66
|
+
text-decoration: if($link-hover-decoration == underline, none, null);
|
|
53
67
|
}
|
|
54
68
|
}
|
|
55
69
|
|
|
@@ -72,7 +86,6 @@
|
|
|
72
86
|
|
|
73
87
|
.dropdown-menu {
|
|
74
88
|
position: static;
|
|
75
|
-
float: none;
|
|
76
89
|
}
|
|
77
90
|
}
|
|
78
91
|
|
|
@@ -82,7 +95,6 @@
|
|
|
82
95
|
//
|
|
83
96
|
|
|
84
97
|
.navbar-text {
|
|
85
|
-
display: inline-block;
|
|
86
98
|
padding-top: $nav-link-padding-y;
|
|
87
99
|
padding-bottom: $nav-link-padding-y;
|
|
88
100
|
}
|
|
@@ -112,10 +124,17 @@
|
|
|
112
124
|
background-color: transparent; // remove default button style
|
|
113
125
|
border: $border-width solid transparent; // remove default button style
|
|
114
126
|
@include border-radius($navbar-toggler-border-radius);
|
|
127
|
+
@include transition($navbar-toggler-transition);
|
|
115
128
|
|
|
116
|
-
|
|
129
|
+
&:hover {
|
|
117
130
|
text-decoration: none;
|
|
118
131
|
}
|
|
132
|
+
|
|
133
|
+
&:focus {
|
|
134
|
+
text-decoration: none;
|
|
135
|
+
outline: 0;
|
|
136
|
+
box-shadow: 0 0 0 $navbar-toggler-focus-width;
|
|
137
|
+
}
|
|
119
138
|
}
|
|
120
139
|
|
|
121
140
|
// Keep as a separate element so folks can easily override it with another icon
|
|
@@ -125,11 +144,17 @@
|
|
|
125
144
|
width: 1.5em;
|
|
126
145
|
height: 1.5em;
|
|
127
146
|
vertical-align: middle;
|
|
128
|
-
|
|
129
|
-
background:
|
|
130
|
-
background-size: 100
|
|
147
|
+
background-repeat: no-repeat;
|
|
148
|
+
background-position: center;
|
|
149
|
+
background-size: 100%;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
.navbar-nav-scroll {
|
|
153
|
+
max-height: var(--#{$variable-prefix}scroll-height, 75vh);
|
|
154
|
+
overflow-y: auto;
|
|
131
155
|
}
|
|
132
156
|
|
|
157
|
+
// scss-docs-start navbar-expand-loop
|
|
133
158
|
// Generate series of `.navbar-expand-*` responsive classes for configuring
|
|
134
159
|
// where your navbar collapses.
|
|
135
160
|
.navbar-expand {
|
|
@@ -137,17 +162,10 @@
|
|
|
137
162
|
$next: breakpoint-next($breakpoint, $grid-breakpoints);
|
|
138
163
|
$infix: breakpoint-infix($next, $grid-breakpoints);
|
|
139
164
|
|
|
165
|
+
// stylelint-disable-next-line scss/selector-no-union-class-name
|
|
140
166
|
&#{$infix} {
|
|
141
|
-
@include media-breakpoint-down($breakpoint) {
|
|
142
|
-
> .container,
|
|
143
|
-
> .container-fluid {
|
|
144
|
-
padding-right: 0;
|
|
145
|
-
padding-left: 0;
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
|
|
149
167
|
@include media-breakpoint-up($next) {
|
|
150
|
-
flex-
|
|
168
|
+
flex-wrap: nowrap;
|
|
151
169
|
justify-content: flex-start;
|
|
152
170
|
|
|
153
171
|
.navbar-nav {
|
|
@@ -163,27 +181,53 @@
|
|
|
163
181
|
}
|
|
164
182
|
}
|
|
165
183
|
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
> .container-fluid {
|
|
169
|
-
flex-wrap: nowrap;
|
|
184
|
+
.navbar-nav-scroll {
|
|
185
|
+
overflow: visible;
|
|
170
186
|
}
|
|
171
187
|
|
|
172
188
|
.navbar-collapse {
|
|
173
189
|
display: flex !important; // stylelint-disable-line declaration-no-important
|
|
174
|
-
|
|
175
|
-
// Changes flex-bases to auto because of an IE10 bug
|
|
176
190
|
flex-basis: auto;
|
|
177
191
|
}
|
|
178
192
|
|
|
179
193
|
.navbar-toggler {
|
|
180
194
|
display: none;
|
|
181
195
|
}
|
|
196
|
+
|
|
197
|
+
.offcanvas-header {
|
|
198
|
+
display: none;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
.offcanvas {
|
|
202
|
+
position: inherit;
|
|
203
|
+
bottom: 0;
|
|
204
|
+
z-index: 1000;
|
|
205
|
+
flex-grow: 1;
|
|
206
|
+
visibility: visible !important; // stylelint-disable-line declaration-no-important
|
|
207
|
+
background-color: transparent;
|
|
208
|
+
border-right: 0;
|
|
209
|
+
border-left: 0;
|
|
210
|
+
@include transition(none);
|
|
211
|
+
transform: none;
|
|
212
|
+
}
|
|
213
|
+
.offcanvas-top,
|
|
214
|
+
.offcanvas-bottom {
|
|
215
|
+
height: auto;
|
|
216
|
+
border-top: 0;
|
|
217
|
+
border-bottom: 0;
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
.offcanvas-body {
|
|
221
|
+
display: flex;
|
|
222
|
+
flex-grow: 0;
|
|
223
|
+
padding: 0;
|
|
224
|
+
overflow-y: visible;
|
|
225
|
+
}
|
|
182
226
|
}
|
|
183
227
|
}
|
|
184
228
|
}
|
|
185
229
|
}
|
|
186
|
-
|
|
230
|
+
// scss-docs-end navbar-expand-loop
|
|
187
231
|
|
|
188
232
|
// Navbar themes
|
|
189
233
|
//
|
|
@@ -194,7 +238,8 @@
|
|
|
194
238
|
.navbar-brand {
|
|
195
239
|
color: $navbar-light-brand-color;
|
|
196
240
|
|
|
197
|
-
|
|
241
|
+
&:hover,
|
|
242
|
+
&:focus {
|
|
198
243
|
color: $navbar-light-brand-hover-color;
|
|
199
244
|
}
|
|
200
245
|
}
|
|
@@ -203,7 +248,8 @@
|
|
|
203
248
|
.nav-link {
|
|
204
249
|
color: $navbar-light-color;
|
|
205
250
|
|
|
206
|
-
|
|
251
|
+
&:hover,
|
|
252
|
+
&:focus {
|
|
207
253
|
color: $navbar-light-hover-color;
|
|
208
254
|
}
|
|
209
255
|
|
|
@@ -213,8 +259,6 @@
|
|
|
213
259
|
}
|
|
214
260
|
|
|
215
261
|
.show > .nav-link,
|
|
216
|
-
.active > .nav-link,
|
|
217
|
-
.nav-link.show,
|
|
218
262
|
.nav-link.active {
|
|
219
263
|
color: $navbar-light-active-color;
|
|
220
264
|
}
|
|
@@ -226,17 +270,16 @@
|
|
|
226
270
|
}
|
|
227
271
|
|
|
228
272
|
.navbar-toggler-icon {
|
|
229
|
-
background-image: $navbar-light-toggler-icon-bg;
|
|
273
|
+
background-image: escape-svg($navbar-light-toggler-icon-bg);
|
|
230
274
|
}
|
|
231
275
|
|
|
232
276
|
.navbar-text {
|
|
233
277
|
color: $navbar-light-color;
|
|
234
|
-
a {
|
|
235
|
-
color: $navbar-light-active-color;
|
|
236
278
|
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
279
|
+
a,
|
|
280
|
+
a:hover,
|
|
281
|
+
a:focus {
|
|
282
|
+
color: $navbar-light-active-color;
|
|
240
283
|
}
|
|
241
284
|
}
|
|
242
285
|
}
|
|
@@ -246,7 +289,8 @@
|
|
|
246
289
|
.navbar-brand {
|
|
247
290
|
color: $navbar-dark-brand-color;
|
|
248
291
|
|
|
249
|
-
|
|
292
|
+
&:hover,
|
|
293
|
+
&:focus {
|
|
250
294
|
color: $navbar-dark-brand-hover-color;
|
|
251
295
|
}
|
|
252
296
|
}
|
|
@@ -255,7 +299,8 @@
|
|
|
255
299
|
.nav-link {
|
|
256
300
|
color: $navbar-dark-color;
|
|
257
301
|
|
|
258
|
-
|
|
302
|
+
&:hover,
|
|
303
|
+
&:focus {
|
|
259
304
|
color: $navbar-dark-hover-color;
|
|
260
305
|
}
|
|
261
306
|
|
|
@@ -265,8 +310,6 @@
|
|
|
265
310
|
}
|
|
266
311
|
|
|
267
312
|
.show > .nav-link,
|
|
268
|
-
.active > .nav-link,
|
|
269
|
-
.nav-link.show,
|
|
270
313
|
.nav-link.active {
|
|
271
314
|
color: $navbar-dark-active-color;
|
|
272
315
|
}
|
|
@@ -278,17 +321,15 @@
|
|
|
278
321
|
}
|
|
279
322
|
|
|
280
323
|
.navbar-toggler-icon {
|
|
281
|
-
background-image: $navbar-dark-toggler-icon-bg;
|
|
324
|
+
background-image: escape-svg($navbar-dark-toggler-icon-bg);
|
|
282
325
|
}
|
|
283
326
|
|
|
284
327
|
.navbar-text {
|
|
285
328
|
color: $navbar-dark-color;
|
|
286
|
-
a
|
|
329
|
+
a,
|
|
330
|
+
a:hover,
|
|
331
|
+
a:focus {
|
|
287
332
|
color: $navbar-dark-active-color;
|
|
288
|
-
|
|
289
|
-
@include hover-focus {
|
|
290
|
-
color: $navbar-dark-active-color;
|
|
291
|
-
}
|
|
292
333
|
}
|
|
293
334
|
}
|
|
294
335
|
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
.offcanvas {
|
|
2
|
+
position: fixed;
|
|
3
|
+
bottom: 0;
|
|
4
|
+
z-index: $zindex-offcanvas;
|
|
5
|
+
display: flex;
|
|
6
|
+
flex-direction: column;
|
|
7
|
+
max-width: 100%;
|
|
8
|
+
color: $offcanvas-color;
|
|
9
|
+
visibility: hidden;
|
|
10
|
+
background-color: $offcanvas-bg-color;
|
|
11
|
+
background-clip: padding-box;
|
|
12
|
+
outline: 0;
|
|
13
|
+
@include box-shadow($offcanvas-box-shadow);
|
|
14
|
+
@include transition(transform $offcanvas-transition-duration ease-in-out);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.offcanvas-backdrop {
|
|
18
|
+
@include overlay-backdrop($zindex-offcanvas-backdrop, $offcanvas-backdrop-bg, $offcanvas-backdrop-opacity);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.offcanvas-header {
|
|
22
|
+
display: flex;
|
|
23
|
+
align-items: center;
|
|
24
|
+
justify-content: space-between;
|
|
25
|
+
padding: $offcanvas-padding-y $offcanvas-padding-x;
|
|
26
|
+
|
|
27
|
+
.btn-close {
|
|
28
|
+
padding: ($offcanvas-padding-y * .5) ($offcanvas-padding-x * .5);
|
|
29
|
+
margin-top: $offcanvas-padding-y * -.5;
|
|
30
|
+
margin-right: $offcanvas-padding-x * -.5;
|
|
31
|
+
margin-bottom: $offcanvas-padding-y * -.5;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.offcanvas-title {
|
|
36
|
+
margin-bottom: 0;
|
|
37
|
+
line-height: $offcanvas-title-line-height;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.offcanvas-body {
|
|
41
|
+
flex-grow: 1;
|
|
42
|
+
padding: $offcanvas-padding-y $offcanvas-padding-x;
|
|
43
|
+
overflow-y: auto;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.offcanvas-start {
|
|
47
|
+
top: 0;
|
|
48
|
+
left: 0;
|
|
49
|
+
width: $offcanvas-horizontal-width;
|
|
50
|
+
border-right: $offcanvas-border-width solid $offcanvas-border-color;
|
|
51
|
+
transform: translateX(-100%);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.offcanvas-end {
|
|
55
|
+
top: 0;
|
|
56
|
+
right: 0;
|
|
57
|
+
width: $offcanvas-horizontal-width;
|
|
58
|
+
border-left: $offcanvas-border-width solid $offcanvas-border-color;
|
|
59
|
+
transform: translateX(100%);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.offcanvas-top {
|
|
63
|
+
top: 0;
|
|
64
|
+
right: 0;
|
|
65
|
+
left: 0;
|
|
66
|
+
height: $offcanvas-vertical-height;
|
|
67
|
+
max-height: 100%;
|
|
68
|
+
border-bottom: $offcanvas-border-width solid $offcanvas-border-color;
|
|
69
|
+
transform: translateY(-100%);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.offcanvas-bottom {
|
|
73
|
+
right: 0;
|
|
74
|
+
left: 0;
|
|
75
|
+
height: $offcanvas-vertical-height;
|
|
76
|
+
max-height: 100%;
|
|
77
|
+
border-top: $offcanvas-border-width solid $offcanvas-border-color;
|
|
78
|
+
transform: translateY(100%);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
.offcanvas.show {
|
|
82
|
+
transform: none;
|
|
83
|
+
}
|