bootstrap 4.6.2.1 → 5.3.5
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/.github/workflows/ci.yml +61 -0
- data/CHANGELOG.md +7 -2
- data/Gemfile +1 -0
- data/README.md +33 -15
- data/Rakefile +1 -2
- data/assets/javascripts/bootstrap/alert.js +50 -147
- data/assets/javascripts/bootstrap/base-component.js +83 -0
- data/assets/javascripts/bootstrap/button.js +40 -190
- data/assets/javascripts/bootstrap/carousel.js +282 -537
- data/assets/javascripts/bootstrap/collapse.js +166 -314
- data/assets/javascripts/bootstrap/dom/data.js +62 -0
- data/assets/javascripts/bootstrap/dom/event-handler.js +236 -0
- data/assets/javascripts/bootstrap/dom/manipulator.js +71 -0
- data/assets/javascripts/bootstrap/dom/selector-engine.js +103 -0
- data/assets/javascripts/bootstrap/dropdown.js +297 -455
- data/assets/javascripts/bootstrap/modal.js +223 -566
- data/assets/javascripts/bootstrap/offcanvas.js +245 -0
- data/assets/javascripts/bootstrap/popover.js +59 -208
- data/assets/javascripts/bootstrap/scrollspy.js +213 -276
- data/assets/javascripts/bootstrap/tab.js +222 -200
- data/assets/javascripts/bootstrap/toast.js +137 -206
- data/assets/javascripts/bootstrap/tooltip.js +403 -747
- data/assets/javascripts/bootstrap/util/backdrop.js +138 -0
- data/assets/javascripts/bootstrap/util/component-functions.js +41 -0
- data/assets/javascripts/bootstrap/util/config.js +67 -0
- data/assets/javascripts/bootstrap/util/focustrap.js +112 -0
- data/assets/javascripts/bootstrap/util/index.js +280 -0
- data/assets/javascripts/bootstrap/util/sanitizer.js +113 -0
- data/assets/javascripts/bootstrap/util/scrollbar.js +112 -0
- data/assets/javascripts/bootstrap/util/swipe.js +134 -0
- data/assets/javascripts/bootstrap/util/template-factory.js +150 -0
- 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 +21 -5
- data/assets/javascripts/bootstrap.js +3625 -3488
- data/assets/javascripts/bootstrap.min.js +3 -3
- data/assets/stylesheets/_bootstrap-grid.scss +53 -21
- data/assets/stylesheets/_bootstrap-reboot.scss +5 -7
- data/assets/stylesheets/_bootstrap-utilities.scss +19 -0
- data/assets/stylesheets/_bootstrap.scss +21 -13
- data/assets/stylesheets/bootstrap/_accordion.scss +153 -0
- data/assets/stylesheets/bootstrap/_alert.scss +32 -16
- data/assets/stylesheets/bootstrap/_badge.scss +15 -31
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +22 -24
- data/assets/stylesheets/bootstrap/_button-group.scss +32 -48
- data/assets/stylesheets/bootstrap/_buttons.scss +145 -71
- data/assets/stylesheets/bootstrap/_card.scss +67 -115
- data/assets/stylesheets/bootstrap/_carousel.scss +63 -37
- data/assets/stylesheets/bootstrap/_close.scss +53 -27
- data/assets/stylesheets/bootstrap/_containers.scss +41 -0
- data/assets/stylesheets/bootstrap/_dropdown.scss +129 -71
- data/assets/stylesheets/bootstrap/_forms.scss +9 -347
- data/assets/stylesheets/bootstrap/_functions.scss +135 -23
- data/assets/stylesheets/bootstrap/_grid.scss +18 -52
- data/assets/stylesheets/bootstrap/_helpers.scss +12 -0
- data/assets/stylesheets/bootstrap/_list-group.scss +93 -48
- data/assets/stylesheets/bootstrap/_maps.scss +174 -0
- data/assets/stylesheets/bootstrap/_mixins.scss +10 -15
- data/assets/stylesheets/bootstrap/_modal.scss +112 -112
- data/assets/stylesheets/bootstrap/_nav.scss +100 -28
- data/assets/stylesheets/bootstrap/_navbar.scss +130 -173
- data/assets/stylesheets/bootstrap/_offcanvas.scss +147 -0
- data/assets/stylesheets/bootstrap/_pagination.scss +72 -37
- data/assets/stylesheets/bootstrap/_placeholders.scss +51 -0
- data/assets/stylesheets/bootstrap/_popover.scss +99 -73
- data/assets/stylesheets/bootstrap/_progress.scss +35 -14
- data/assets/stylesheets/bootstrap/_reboot.scss +319 -192
- data/assets/stylesheets/bootstrap/_root.scss +177 -9
- data/assets/stylesheets/bootstrap/_spinners.scss +43 -23
- data/assets/stylesheets/bootstrap/_tables.scss +101 -115
- data/assets/stylesheets/bootstrap/_toasts.scss +54 -27
- data/assets/stylesheets/bootstrap/_tooltip.scss +67 -63
- data/assets/stylesheets/bootstrap/_transitions.scss +3 -2
- data/assets/stylesheets/bootstrap/_type.scss +40 -59
- data/assets/stylesheets/bootstrap/_utilities.scss +806 -18
- data/assets/stylesheets/bootstrap/_variables-dark.scss +102 -0
- data/assets/stylesheets/bootstrap/_variables.scss +1210 -606
- data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +97 -0
- data/assets/stylesheets/bootstrap/forms/_form-check.scss +189 -0
- data/assets/stylesheets/bootstrap/forms/_form-control.scss +214 -0
- data/assets/stylesheets/bootstrap/forms/_form-range.scss +91 -0
- data/assets/stylesheets/bootstrap/forms/_form-select.scss +80 -0
- data/assets/stylesheets/bootstrap/forms/_form-text.scss +11 -0
- data/assets/stylesheets/bootstrap/forms/_input-group.scss +132 -0
- data/assets/stylesheets/bootstrap/forms/_labels.scss +36 -0
- data/assets/stylesheets/bootstrap/forms/_validation.scss +12 -0
- data/assets/stylesheets/bootstrap/helpers/_color-bg.scss +7 -0
- data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +30 -0
- data/assets/stylesheets/bootstrap/helpers/_focus-ring.scss +5 -0
- data/assets/stylesheets/bootstrap/helpers/_icon-link.scss +25 -0
- data/assets/stylesheets/bootstrap/helpers/_position.scss +36 -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 +11 -6
- data/assets/stylesheets/bootstrap/mixins/_backdrop.scss +14 -0
- data/assets/stylesheets/bootstrap/mixins/_banner.scss +7 -0
- data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +10 -8
- data/assets/stylesheets/bootstrap/mixins/_box-shadow.scss +7 -9
- data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +20 -16
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +60 -100
- data/assets/stylesheets/bootstrap/mixins/_caret.scss +34 -27
- data/assets/stylesheets/bootstrap/mixins/_clearfix.scss +2 -0
- data/assets/stylesheets/bootstrap/mixins/_color-mode.scss +21 -0
- data/assets/stylesheets/bootstrap/mixins/_color-scheme.scss +7 -0
- data/assets/stylesheets/bootstrap/mixins/_container.scss +11 -0
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +64 -96
- data/assets/stylesheets/bootstrap/mixins/_gradients.scss +13 -11
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +118 -36
- data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -21
- data/assets/stylesheets/bootstrap/mixins/_list-group.scss +7 -2
- data/assets/stylesheets/bootstrap/mixins/_lists.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_pagination.scss +7 -19
- data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +2 -2
- data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +24 -0
- data/assets/stylesheets/bootstrap/mixins/_transition.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_utilities.scss +97 -0
- data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +33 -0
- data/assets/stylesheets/bootstrap/utilities/_api.scss +47 -0
- data/assets/stylesheets/bootstrap/vendor/_rfs.scss +211 -91
- data/bootstrap.gemspec +6 -6
- data/lib/bootstrap/engine.rb +0 -1
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/js.rb +17 -5
- data/tasks/updater/network.rb +2 -2
- data/tasks/updater/scss.rb +2 -2
- data/tasks/updater.rb +2 -2
- data/test/dummy_rails/app/assets/javascripts/application.js +4 -3
- 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 -5
- data/test/dummy_rails/public/favicon.ico +0 -0
- data/test/gemfiles/rails_4_2.gemfile +2 -1
- data/test/gemfiles/rails_5_0.gemfile +1 -2
- data/test/gemfiles/rails_5_1.gemfile +1 -2
- data/test/gemfiles/rails_5_2.gemfile +7 -0
- data/test/gemfiles/rails_6_0.gemfile +1 -1
- data/test/gemfiles/rails_6_1.gemfile +7 -0
- data/test/gemfiles/rails_7_0_dartsass.gemfile +0 -1
- data/test/gemfiles/rails_7_0_sassc.gemfile +0 -1
- data/test/rails_test.rb +0 -5
- data/test/test_helper.rb +3 -2
- metadata +92 -86
- data/.travis.yml +0 -31
- data/assets/javascripts/bootstrap/util.js +0 -189
- data/assets/stylesheets/bootstrap/_code.scss +0 -48
- data/assets/stylesheets/bootstrap/_custom-forms.scss +0 -526
- data/assets/stylesheets/bootstrap/_input-group.scss +0 -211
- data/assets/stylesheets/bootstrap/_jumbotron.scss +0 -17
- data/assets/stylesheets/bootstrap/_media.scss +0 -8
- data/assets/stylesheets/bootstrap/_print.scss +0 -132
- data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +0 -23
- 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 -80
- data/assets/stylesheets/bootstrap/mixins/_hover.scss +0 -37
- data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +0 -11
- data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +0 -34
- 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 -17
- 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/_interactions.scss +0 -5
- 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
- /data/assets/stylesheets/bootstrap/{utilities → helpers}/_clearfix.scss +0 -0
@@ -1,5 +1,6 @@
|
|
1
1
|
// stylelint-disable declaration-no-important, selector-no-qualifying-type, property-no-vendor-prefix
|
2
2
|
|
3
|
+
|
3
4
|
// Reboot
|
4
5
|
//
|
5
6
|
// Normalization of HTML elements, manually forked from Normalize.css to remove
|
@@ -10,122 +11,156 @@
|
|
10
11
|
|
11
12
|
// Document
|
12
13
|
//
|
13
|
-
//
|
14
|
-
// 2. Change the default font family in all browsers.
|
15
|
-
// 3. Correct the line height in all browsers.
|
16
|
-
// 4. Prevent adjustments of font size after orientation changes in IE on Windows Phone and in iOS.
|
17
|
-
// 5. Change the default tap highlight to be completely transparent in iOS.
|
14
|
+
// Change from `box-sizing: content-box` so that `width` is not affected by `padding` or `border`.
|
18
15
|
|
19
16
|
*,
|
20
17
|
*::before,
|
21
18
|
*::after {
|
22
|
-
box-sizing: border-box;
|
19
|
+
box-sizing: border-box;
|
23
20
|
}
|
24
21
|
|
25
|
-
html {
|
26
|
-
font-family: sans-serif; // 2
|
27
|
-
line-height: 1.15; // 3
|
28
|
-
-webkit-text-size-adjust: 100%; // 4
|
29
|
-
-webkit-tap-highlight-color: rgba($black, 0); // 5
|
30
|
-
}
|
31
22
|
|
32
|
-
//
|
33
|
-
//
|
34
|
-
//
|
35
|
-
|
36
|
-
|
23
|
+
// Root
|
24
|
+
//
|
25
|
+
// Ability to the value of the root font sizes, affecting the value of `rem`.
|
26
|
+
// null by default, thus nothing is generated.
|
27
|
+
|
28
|
+
:root {
|
29
|
+
@if $font-size-root != null {
|
30
|
+
@include font-size(var(--#{$prefix}root-font-size));
|
31
|
+
}
|
32
|
+
|
33
|
+
@if $enable-smooth-scroll {
|
34
|
+
@media (prefers-reduced-motion: no-preference) {
|
35
|
+
scroll-behavior: smooth;
|
36
|
+
}
|
37
|
+
}
|
37
38
|
}
|
38
39
|
|
40
|
+
|
39
41
|
// Body
|
40
42
|
//
|
41
43
|
// 1. Remove the margin in all browsers.
|
42
44
|
// 2. As a best practice, apply a default `background-color`.
|
43
|
-
// 3.
|
44
|
-
//
|
45
|
+
// 3. Prevent adjustments of font size after orientation changes in iOS.
|
46
|
+
// 4. Change the default tap highlight to be completely transparent in iOS.
|
45
47
|
|
48
|
+
// scss-docs-start reboot-body-rules
|
46
49
|
body {
|
47
50
|
margin: 0; // 1
|
48
|
-
font-family: $font-family
|
49
|
-
@include font-size($font-size
|
50
|
-
font-weight: $font-weight
|
51
|
-
line-height: $line-height
|
52
|
-
color: $body-color;
|
53
|
-
text-align:
|
54
|
-
background-color: $body-bg; // 2
|
55
|
-
|
56
|
-
|
57
|
-
// Future-proof rule: in browsers that support :focus-visible, suppress the focus outline
|
58
|
-
// on elements that programmatically receive focus but wouldn't normally show a visible
|
59
|
-
// focus outline. In general, this would mean that the outline is only applied if the
|
60
|
-
// interaction that led to the element receiving programmatic focus was a keyboard interaction,
|
61
|
-
// or the browser has somehow determined that the user is primarily a keyboard user and/or
|
62
|
-
// wants focus outlines to always be presented.
|
63
|
-
//
|
64
|
-
// See https://developer.mozilla.org/en-US/docs/Web/CSS/:focus-visible
|
65
|
-
// and https://developer.paciellogroup.com/blog/2018/03/focus-visible-and-backwards-compatibility/
|
66
|
-
[tabindex="-1"]:focus:not(:focus-visible) {
|
67
|
-
outline: 0 !important;
|
51
|
+
font-family: var(--#{$prefix}body-font-family);
|
52
|
+
@include font-size(var(--#{$prefix}body-font-size));
|
53
|
+
font-weight: var(--#{$prefix}body-font-weight);
|
54
|
+
line-height: var(--#{$prefix}body-line-height);
|
55
|
+
color: var(--#{$prefix}body-color);
|
56
|
+
text-align: var(--#{$prefix}body-text-align);
|
57
|
+
background-color: var(--#{$prefix}body-bg); // 2
|
58
|
+
-webkit-text-size-adjust: 100%; // 3
|
59
|
+
-webkit-tap-highlight-color: rgba($black, 0); // 4
|
68
60
|
}
|
61
|
+
// scss-docs-end reboot-body-rules
|
69
62
|
|
70
63
|
|
71
64
|
// Content grouping
|
72
65
|
//
|
73
|
-
// 1.
|
74
|
-
// 2. Show the overflow in Edge and IE.
|
66
|
+
// 1. Reset Firefox's gray color
|
75
67
|
|
76
68
|
hr {
|
77
|
-
|
78
|
-
|
79
|
-
|
69
|
+
margin: $hr-margin-y 0;
|
70
|
+
color: $hr-color; // 1
|
71
|
+
border: 0;
|
72
|
+
border-top: $hr-border-width solid $hr-border-color;
|
73
|
+
opacity: $hr-opacity;
|
80
74
|
}
|
81
75
|
|
82
76
|
|
83
|
-
//
|
84
77
|
// Typography
|
85
78
|
//
|
79
|
+
// 1. Remove top margins from headings
|
80
|
+
// By default, `<h1>`-`<h6>` all receive top and bottom margins. We nuke the top
|
81
|
+
// margin for easier control within type scales as it avoids margin collapsing.
|
86
82
|
|
87
|
-
|
88
|
-
//
|
89
|
-
// By default, `<h1>`-`<h6>` all receive top and bottom margins. We nuke the top
|
90
|
-
// margin for easier control within type scales as it avoids margin collapsing.
|
91
|
-
// stylelint-disable-next-line selector-list-comma-newline-after
|
92
|
-
h1, h2, h3, h4, h5, h6 {
|
93
|
-
margin-top: 0;
|
83
|
+
%heading {
|
84
|
+
margin-top: 0; // 1
|
94
85
|
margin-bottom: $headings-margin-bottom;
|
86
|
+
font-family: $headings-font-family;
|
87
|
+
font-style: $headings-font-style;
|
88
|
+
font-weight: $headings-font-weight;
|
89
|
+
line-height: $headings-line-height;
|
90
|
+
color: var(--#{$prefix}heading-color);
|
91
|
+
}
|
92
|
+
|
93
|
+
h1 {
|
94
|
+
@extend %heading;
|
95
|
+
@include font-size($h1-font-size);
|
96
|
+
}
|
97
|
+
|
98
|
+
h2 {
|
99
|
+
@extend %heading;
|
100
|
+
@include font-size($h2-font-size);
|
95
101
|
}
|
96
102
|
|
103
|
+
h3 {
|
104
|
+
@extend %heading;
|
105
|
+
@include font-size($h3-font-size);
|
106
|
+
}
|
107
|
+
|
108
|
+
h4 {
|
109
|
+
@extend %heading;
|
110
|
+
@include font-size($h4-font-size);
|
111
|
+
}
|
112
|
+
|
113
|
+
h5 {
|
114
|
+
@extend %heading;
|
115
|
+
@include font-size($h5-font-size);
|
116
|
+
}
|
117
|
+
|
118
|
+
h6 {
|
119
|
+
@extend %heading;
|
120
|
+
@include font-size($h6-font-size);
|
121
|
+
}
|
122
|
+
|
123
|
+
|
97
124
|
// Reset margins on paragraphs
|
98
125
|
//
|
99
126
|
// Similarly, the top margin on `<p>`s get reset. However, we also reset the
|
100
127
|
// bottom margin to use `rem` units instead of `em`.
|
128
|
+
|
101
129
|
p {
|
102
130
|
margin-top: 0;
|
103
131
|
margin-bottom: $paragraph-margin-bottom;
|
104
132
|
}
|
105
133
|
|
134
|
+
|
106
135
|
// Abbreviations
|
107
136
|
//
|
108
|
-
// 1.
|
109
|
-
// 2. Add
|
110
|
-
// 3.
|
111
|
-
// 4. Remove the bottom border in Firefox 39-.
|
112
|
-
// 5. Prevent the text-decoration to be skipped.
|
137
|
+
// 1. Add the correct text decoration in Chrome, Edge, Opera, and Safari.
|
138
|
+
// 2. Add explicit cursor to indicate changed behavior.
|
139
|
+
// 3. Prevent the text-decoration to be skipped.
|
113
140
|
|
114
|
-
abbr[title]
|
115
|
-
|
116
|
-
|
117
|
-
text-decoration:
|
118
|
-
cursor: help; // 3
|
119
|
-
border-bottom: 0; // 4
|
120
|
-
text-decoration-skip-ink: none; // 5
|
141
|
+
abbr[title] {
|
142
|
+
text-decoration: underline dotted; // 1
|
143
|
+
cursor: help; // 2
|
144
|
+
text-decoration-skip-ink: none; // 3
|
121
145
|
}
|
122
146
|
|
147
|
+
|
148
|
+
// Address
|
149
|
+
|
123
150
|
address {
|
124
151
|
margin-bottom: 1rem;
|
125
152
|
font-style: normal;
|
126
153
|
line-height: inherit;
|
127
154
|
}
|
128
155
|
|
156
|
+
|
157
|
+
// Lists
|
158
|
+
|
159
|
+
ol,
|
160
|
+
ul {
|
161
|
+
padding-left: 2rem;
|
162
|
+
}
|
163
|
+
|
129
164
|
ol,
|
130
165
|
ul,
|
131
166
|
dl {
|
@@ -144,33 +179,58 @@ dt {
|
|
144
179
|
font-weight: $dt-font-weight;
|
145
180
|
}
|
146
181
|
|
182
|
+
// 1. Undo browser default
|
183
|
+
|
147
184
|
dd {
|
148
185
|
margin-bottom: .5rem;
|
149
|
-
margin-left: 0; //
|
186
|
+
margin-left: 0; // 1
|
150
187
|
}
|
151
188
|
|
189
|
+
|
190
|
+
// Blockquote
|
191
|
+
|
152
192
|
blockquote {
|
153
193
|
margin: 0 0 1rem;
|
154
194
|
}
|
155
195
|
|
196
|
+
|
197
|
+
// Strong
|
198
|
+
//
|
199
|
+
// Add the correct font weight in Chrome, Edge, and Safari
|
200
|
+
|
156
201
|
b,
|
157
202
|
strong {
|
158
|
-
font-weight: $font-weight-bolder;
|
203
|
+
font-weight: $font-weight-bolder;
|
159
204
|
}
|
160
205
|
|
206
|
+
|
207
|
+
// Small
|
208
|
+
//
|
209
|
+
// Add the correct font size in all browsers
|
210
|
+
|
161
211
|
small {
|
162
|
-
@include font-size(
|
212
|
+
@include font-size($small-font-size);
|
163
213
|
}
|
164
214
|
|
215
|
+
|
216
|
+
// Mark
|
217
|
+
|
218
|
+
mark {
|
219
|
+
padding: $mark-padding;
|
220
|
+
color: var(--#{$prefix}highlight-color);
|
221
|
+
background-color: var(--#{$prefix}highlight-bg);
|
222
|
+
}
|
223
|
+
|
224
|
+
|
225
|
+
// Sub and Sup
|
165
226
|
//
|
166
227
|
// Prevent `sub` and `sup` elements from affecting the line height in
|
167
228
|
// all browsers.
|
168
|
-
//
|
169
229
|
|
170
230
|
sub,
|
171
231
|
sup {
|
172
232
|
position: relative;
|
173
|
-
@include font-size(
|
233
|
+
@include font-size($sub-sup-font-size);
|
174
234
|
line-height: 0;
|
175
235
|
vertical-align: baseline;
|
176
236
|
}
|
@@ -179,17 +239,14 @@ sub { bottom: -.25em; }
|
|
179
239
|
sup { top: -.5em; }
|
180
240
|
|
181
241
|
|
182
|
-
//
|
183
242
|
// Links
|
184
|
-
//
|
185
243
|
|
186
244
|
a {
|
187
|
-
color: $link-color;
|
245
|
+
color: rgba(var(--#{$prefix}link-color-rgb), var(--#{$prefix}link-opacity, 1));
|
188
246
|
text-decoration: $link-decoration;
|
189
|
-
background-color: transparent; // Remove the gray background on active links in IE 10.
|
190
247
|
|
191
|
-
|
192
|
-
color: $link-hover-color;
|
248
|
+
&:hover {
|
249
|
+
--#{$prefix}link-color-rgb: var(--#{$prefix}link-hover-color-rgb);
|
193
250
|
text-decoration: $link-hover-decoration;
|
194
251
|
}
|
195
252
|
}
|
@@ -200,82 +257,101 @@ a {
|
|
200
257
|
// See https://github.com/twbs/bootstrap/issues/19402
|
201
258
|
|
202
259
|
a:not([href]):not([class]) {
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
@include hover() {
|
260
|
+
&,
|
261
|
+
&:hover {
|
207
262
|
color: inherit;
|
208
263
|
text-decoration: none;
|
209
264
|
}
|
210
265
|
}
|
211
266
|
|
212
267
|
|
213
|
-
//
|
214
268
|
// Code
|
215
|
-
//
|
216
269
|
|
217
270
|
pre,
|
218
271
|
code,
|
219
272
|
kbd,
|
220
273
|
samp {
|
221
|
-
font-family: $font-family-
|
274
|
+
font-family: $font-family-code;
|
222
275
|
@include font-size(1em); // Correct the odd `em` font sizing in all browsers.
|
223
276
|
}
|
224
277
|
|
278
|
+
// 1. Remove browser default top margin
|
279
|
+
// 2. Reset browser default of `1em` to use `rem`s
|
280
|
+
// 3. Don't allow content to break outside
|
281
|
+
|
225
282
|
pre {
|
226
|
-
|
227
|
-
margin-top: 0;
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
//
|
234
|
-
|
283
|
+
display: block;
|
284
|
+
margin-top: 0; // 1
|
285
|
+
margin-bottom: 1rem; // 2
|
286
|
+
overflow: auto; // 3
|
287
|
+
@include font-size($code-font-size);
|
288
|
+
color: $pre-color;
|
289
|
+
|
290
|
+
// Account for some code outputs that place code tags in pre tags
|
291
|
+
code {
|
292
|
+
@include font-size(inherit);
|
293
|
+
color: inherit;
|
294
|
+
word-break: normal;
|
295
|
+
}
|
296
|
+
}
|
297
|
+
|
298
|
+
code {
|
299
|
+
@include font-size($code-font-size);
|
300
|
+
color: var(--#{$prefix}code-color);
|
301
|
+
word-wrap: break-word;
|
302
|
+
|
303
|
+
// Streamline the style when inside anchors to avoid broken underline and more
|
304
|
+
a > & {
|
305
|
+
color: inherit;
|
306
|
+
}
|
307
|
+
}
|
308
|
+
|
309
|
+
kbd {
|
310
|
+
padding: $kbd-padding-y $kbd-padding-x;
|
311
|
+
@include font-size($kbd-font-size);
|
312
|
+
color: $kbd-color;
|
313
|
+
background-color: $kbd-bg;
|
314
|
+
@include border-radius($border-radius-sm);
|
315
|
+
|
316
|
+
kbd {
|
317
|
+
padding: 0;
|
318
|
+
@include font-size(1em);
|
319
|
+
font-weight: $nested-kbd-font-weight;
|
320
|
+
}
|
235
321
|
}
|
236
322
|
|
237
323
|
|
238
|
-
//
|
239
324
|
// Figures
|
240
325
|
//
|
326
|
+
// Apply a consistent margin strategy (matches our type styles).
|
241
327
|
|
242
328
|
figure {
|
243
|
-
// Apply a consistent margin strategy (matches our type styles).
|
244
329
|
margin: 0 0 1rem;
|
245
330
|
}
|
246
331
|
|
247
332
|
|
248
|
-
//
|
249
333
|
// Images and content
|
250
|
-
//
|
251
|
-
|
252
|
-
img {
|
253
|
-
vertical-align: middle;
|
254
|
-
border-style: none; // Remove the border on images inside links in IE 10-.
|
255
|
-
}
|
256
334
|
|
335
|
+
img,
|
257
336
|
svg {
|
258
|
-
// Workaround for the SVG overflow bug in IE10/11 is still required.
|
259
|
-
// See https://github.com/twbs/bootstrap/issues/26878
|
260
|
-
overflow: hidden;
|
261
337
|
vertical-align: middle;
|
262
338
|
}
|
263
339
|
|
264
340
|
|
265
|
-
//
|
266
341
|
// Tables
|
267
342
|
//
|
343
|
+
// Prevent double borders
|
268
344
|
|
269
345
|
table {
|
270
|
-
|
346
|
+
caption-side: bottom;
|
347
|
+
border-collapse: collapse;
|
271
348
|
}
|
272
349
|
|
273
350
|
caption {
|
274
|
-
padding-top: $table-cell-padding;
|
275
|
-
padding-bottom: $table-cell-padding;
|
351
|
+
padding-top: $table-cell-padding-y;
|
352
|
+
padding-bottom: $table-cell-padding-y;
|
276
353
|
color: $table-caption-color;
|
277
354
|
text-align: left;
|
278
|
-
caption-side: bottom;
|
279
355
|
}
|
280
356
|
|
281
357
|
// 1. Removes font-weight bold by inheriting
|
@@ -288,20 +364,29 @@ th {
|
|
288
364
|
text-align: -webkit-match-parent; // 3
|
289
365
|
}
|
290
366
|
|
367
|
+
thead,
|
368
|
+
tbody,
|
369
|
+
tfoot,
|
370
|
+
tr,
|
371
|
+
td,
|
372
|
+
th {
|
373
|
+
border-color: inherit;
|
374
|
+
border-style: solid;
|
375
|
+
border-width: 0;
|
376
|
+
}
|
377
|
+
|
291
378
|
|
292
|
-
//
|
293
379
|
// Forms
|
294
380
|
//
|
381
|
+
// 1. Allow labels to use `margin` for spacing.
|
295
382
|
|
296
383
|
label {
|
297
|
-
|
298
|
-
display: inline-block;
|
299
|
-
margin-bottom: $label-margin-bottom;
|
384
|
+
display: inline-block; // 1
|
300
385
|
}
|
301
386
|
|
302
387
|
// Remove the default `border-radius` that macOS Chrome adds.
|
303
|
-
//
|
304
|
-
|
388
|
+
// See https://github.com/twbs/bootstrap/issues/24093
|
389
|
+
|
305
390
|
button {
|
306
391
|
// stylelint-disable-next-line property-disallowed-list
|
307
392
|
border-radius: 0;
|
@@ -316,27 +401,24 @@ button:focus:not(:focus-visible) {
|
|
316
401
|
outline: 0;
|
317
402
|
}
|
318
403
|
|
404
|
+
// 1. Remove the margin in Firefox and Safari
|
405
|
+
|
319
406
|
input,
|
320
407
|
button,
|
321
408
|
select,
|
322
409
|
optgroup,
|
323
410
|
textarea {
|
324
|
-
margin: 0; //
|
411
|
+
margin: 0; // 1
|
325
412
|
font-family: inherit;
|
326
413
|
@include font-size(inherit);
|
327
414
|
line-height: inherit;
|
328
415
|
}
|
329
416
|
|
330
|
-
|
331
|
-
input {
|
332
|
-
overflow: visible; // Show the overflow in Edge
|
333
|
-
}
|
334
|
-
|
417
|
+
// Remove the inheritance of text transform in Firefox
|
335
418
|
button,
|
336
419
|
select {
|
337
|
-
text-transform: none;
|
420
|
+
text-transform: none;
|
338
421
|
}
|
339
|
-
|
340
422
|
// Set the cursor for non-`<button>` buttons
|
341
423
|
//
|
342
424
|
// Details at https://github.com/twbs/bootstrap/pull/30562
|
@@ -344,141 +426,186 @@ select {
|
|
344
426
|
cursor: pointer;
|
345
427
|
}
|
346
428
|
|
347
|
-
// Remove the inheritance of word-wrap in Safari.
|
348
|
-
//
|
349
|
-
// Details at https://github.com/twbs/bootstrap/issues/24990
|
350
429
|
select {
|
430
|
+
// Remove the inheritance of word-wrap in Safari.
|
431
|
+
// See https://github.com/twbs/bootstrap/issues/24990
|
351
432
|
word-wrap: normal;
|
433
|
+
|
434
|
+
// Undo the opacity change from Chrome
|
435
|
+
&:disabled {
|
436
|
+
opacity: 1;
|
437
|
+
}
|
352
438
|
}
|
353
439
|
|
440
|
+
// Remove the dropdown arrow only from text type inputs built with datalists in Chrome.
|
441
|
+
// See https://stackoverflow.com/a/54997118
|
442
|
+
|
443
|
+
[list]:not([type="date"]):not([type="datetime-local"]):not([type="month"]):not([type="week"]):not([type="time"])::-webkit-calendar-picker-indicator {
|
444
|
+
display: none !important;
|
445
|
+
}
|
354
446
|
|
355
447
|
// 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
|
356
448
|
// controls in Android 4.
|
357
449
|
// 2. Correct the inability to style clickable types in iOS and Safari.
|
450
|
+
// 3. Opinionated: add "hand" cursor to non-disabled button elements.
|
451
|
+
|
358
452
|
button,
|
359
453
|
[type="button"], // 1
|
360
454
|
[type="reset"],
|
361
455
|
[type="submit"] {
|
362
456
|
-webkit-appearance: button; // 2
|
363
|
-
}
|
364
457
|
|
365
|
-
|
366
|
-
@if $enable-pointer-cursor-for-buttons {
|
367
|
-
button,
|
368
|
-
[type="button"],
|
369
|
-
[type="reset"],
|
370
|
-
[type="submit"] {
|
458
|
+
@if $enable-button-pointers {
|
371
459
|
&:not(:disabled) {
|
372
|
-
cursor: pointer;
|
460
|
+
cursor: pointer; // 3
|
373
461
|
}
|
374
462
|
}
|
375
463
|
}
|
376
464
|
|
377
465
|
// Remove inner border and padding from Firefox, but don't restore the outline like Normalize.
|
378
|
-
|
379
|
-
|
380
|
-
[type="reset"]::-moz-focus-inner,
|
381
|
-
[type="submit"]::-moz-focus-inner {
|
466
|
+
|
467
|
+
::-moz-focus-inner {
|
382
468
|
padding: 0;
|
383
469
|
border-style: none;
|
384
470
|
}
|
385
471
|
|
386
|
-
|
387
|
-
input[type="checkbox"] {
|
388
|
-
box-sizing: border-box; // 1. Add the correct box sizing in IE 10-
|
389
|
-
padding: 0; // 2. Remove the padding in IE 10-
|
390
|
-
}
|
391
|
-
|
472
|
+
// 1. Textareas should really only resize vertically so they don't break their (horizontal) containers.
|
392
473
|
|
393
474
|
textarea {
|
394
|
-
|
395
|
-
// Textareas should really only resize vertically so they don't break their (horizontal) containers.
|
396
|
-
resize: vertical;
|
475
|
+
resize: vertical; // 1
|
397
476
|
}
|
398
477
|
|
478
|
+
// 1. Browsers set a default `min-width: min-content;` on fieldsets,
|
479
|
+
// unlike e.g. `<div>`s, which have `min-width: 0;` by default.
|
480
|
+
// So we reset that to ensure fieldsets behave more like a standard block element.
|
481
|
+
// See https://github.com/twbs/bootstrap/issues/12359
|
482
|
+
// and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements
|
483
|
+
// 2. Reset the default outline behavior of fieldsets so they don't affect page layout.
|
484
|
+
|
399
485
|
fieldset {
|
400
|
-
|
401
|
-
|
402
|
-
|
403
|
-
//
|
404
|
-
// and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements
|
405
|
-
min-width: 0;
|
406
|
-
// Reset the default outline behavior of fieldsets so they don't affect page layout.
|
407
|
-
padding: 0;
|
408
|
-
margin: 0;
|
409
|
-
border: 0;
|
486
|
+
min-width: 0; // 1
|
487
|
+
padding: 0; // 2
|
488
|
+
margin: 0; // 2
|
489
|
+
border: 0; // 2
|
410
490
|
}
|
411
491
|
|
412
|
-
// 1.
|
413
|
-
//
|
492
|
+
// 1. By using `float: left`, the legend will behave like a block element.
|
493
|
+
// This way the border of a fieldset wraps around the legend if present.
|
494
|
+
// 2. Fix wrapping bug.
|
495
|
+
// See https://github.com/twbs/bootstrap/issues/29712
|
496
|
+
|
414
497
|
legend {
|
415
|
-
|
498
|
+
float: left; // 1
|
416
499
|
width: 100%;
|
417
|
-
max-width: 100%; // 1
|
418
500
|
padding: 0;
|
419
|
-
margin-bottom:
|
420
|
-
|
501
|
+
margin-bottom: $legend-margin-bottom;
|
502
|
+
font-weight: $legend-font-weight;
|
421
503
|
line-height: inherit;
|
422
|
-
|
423
|
-
|
504
|
+
@include font-size($legend-font-size);
|
505
|
+
|
506
|
+
+ * {
|
507
|
+
clear: left; // 2
|
508
|
+
}
|
424
509
|
}
|
425
510
|
|
426
|
-
|
427
|
-
|
511
|
+
// Fix height of inputs with a type of datetime-local, date, month, week, or time
|
512
|
+
// See https://github.com/twbs/bootstrap/issues/18842
|
513
|
+
|
514
|
+
::-webkit-datetime-edit-fields-wrapper,
|
515
|
+
::-webkit-datetime-edit-text,
|
516
|
+
::-webkit-datetime-edit-minute,
|
517
|
+
::-webkit-datetime-edit-hour-field,
|
518
|
+
::-webkit-datetime-edit-day-field,
|
519
|
+
::-webkit-datetime-edit-month-field,
|
520
|
+
::-webkit-datetime-edit-year-field {
|
521
|
+
padding: 0;
|
428
522
|
}
|
429
523
|
|
430
|
-
|
431
|
-
[type="number"]::-webkit-inner-spin-button,
|
432
|
-
[type="number"]::-webkit-outer-spin-button {
|
524
|
+
::-webkit-inner-spin-button {
|
433
525
|
height: auto;
|
434
526
|
}
|
435
527
|
|
528
|
+
// 1. This overrides the extra rounded corners on search inputs in iOS so that our
|
529
|
+
// `.form-control` class can properly style them. Note that this cannot simply
|
530
|
+
// be added to `.form-control` as it's not specific enough. For details, see
|
531
|
+
// https://github.com/twbs/bootstrap/issues/11586.
|
532
|
+
// 2. Correct the outline style in Safari.
|
533
|
+
|
436
534
|
[type="search"] {
|
437
|
-
|
438
|
-
|
439
|
-
// be added to `.form-control` as it's not specific enough. For details, see
|
440
|
-
// https://github.com/twbs/bootstrap/issues/11586.
|
441
|
-
outline-offset: -2px; // 2. Correct the outline style in Safari.
|
442
|
-
-webkit-appearance: none;
|
535
|
+
-webkit-appearance: textfield; // 1
|
536
|
+
outline-offset: -2px; // 2
|
443
537
|
}
|
444
538
|
|
445
|
-
//
|
539
|
+
// 1. A few input types should stay LTR
|
540
|
+
// See https://rtlstyling.com/posts/rtl-styling#form-inputs
|
541
|
+
// 2. RTL only output
|
542
|
+
// See https://rtlcss.com/learn/usage-guide/control-directives/#raw
|
543
|
+
|
544
|
+
/* rtl:raw:
|
545
|
+
[type="tel"],
|
546
|
+
[type="url"],
|
547
|
+
[type="email"],
|
548
|
+
[type="number"] {
|
549
|
+
direction: ltr;
|
550
|
+
}
|
551
|
+
*/
|
552
|
+
|
446
553
|
// Remove the inner padding in Chrome and Safari on macOS.
|
447
|
-
//
|
448
554
|
|
449
|
-
|
555
|
+
::-webkit-search-decoration {
|
450
556
|
-webkit-appearance: none;
|
451
557
|
}
|
452
558
|
|
453
|
-
//
|
454
|
-
// 1. Correct the inability to style clickable types in iOS and Safari.
|
455
|
-
// 2. Change font properties to `inherit` in Safari.
|
456
|
-
//
|
559
|
+
// Remove padding around color pickers in webkit browsers
|
457
560
|
|
458
|
-
::-webkit-
|
459
|
-
|
460
|
-
|
561
|
+
::-webkit-color-swatch-wrapper {
|
562
|
+
padding: 0;
|
563
|
+
}
|
564
|
+
|
565
|
+
|
566
|
+
// 1. Inherit font family and line height for file input buttons
|
567
|
+
// 2. Correct the inability to style clickable types in iOS and Safari.
|
568
|
+
|
569
|
+
::file-selector-button {
|
570
|
+
font: inherit; // 1
|
571
|
+
-webkit-appearance: button; // 2
|
461
572
|
}
|
462
573
|
|
463
|
-
//
|
464
574
|
// Correct element displays
|
465
|
-
//
|
466
575
|
|
467
576
|
output {
|
468
577
|
display: inline-block;
|
469
578
|
}
|
470
579
|
|
580
|
+
// Remove border from iframe
|
581
|
+
|
582
|
+
iframe {
|
583
|
+
border: 0;
|
584
|
+
}
|
585
|
+
|
586
|
+
// Summary
|
587
|
+
//
|
588
|
+
// 1. Add the correct display in all browsers
|
589
|
+
|
471
590
|
summary {
|
472
|
-
display: list-item; //
|
591
|
+
display: list-item; // 1
|
473
592
|
cursor: pointer;
|
474
593
|
}
|
475
594
|
|
476
|
-
|
477
|
-
|
595
|
+
|
596
|
+
// Progress
|
597
|
+
//
|
598
|
+
// Add the correct vertical alignment in Chrome, Firefox, and Opera.
|
599
|
+
|
600
|
+
progress {
|
601
|
+
vertical-align: baseline;
|
478
602
|
}
|
479
603
|
|
480
|
-
|
481
|
-
//
|
604
|
+
|
605
|
+
// Hidden attribute
|
606
|
+
//
|
607
|
+
// Always hide an element with the `hidden` HTML attribute.
|
608
|
+
|
482
609
|
[hidden] {
|
483
610
|
display: none !important;
|
484
611
|
}
|