bootstrap 4.0.0.beta3 → 4.6.2

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.
Files changed (114) hide show
  1. checksums.yaml +5 -5
  2. data/.travis.yml +15 -1
  3. data/CHANGELOG.md +2 -2
  4. data/README.md +2 -2
  5. data/Rakefile +4 -2
  6. data/assets/javascripts/bootstrap/alert.js +79 -68
  7. data/assets/javascripts/bootstrap/button.js +140 -78
  8. data/assets/javascripts/bootstrap/carousel.js +294 -158
  9. data/assets/javascripts/bootstrap/collapse.js +157 -133
  10. data/assets/javascripts/bootstrap/dropdown.js +257 -167
  11. data/assets/javascripts/bootstrap/modal.js +285 -204
  12. data/assets/javascripts/bootstrap/popover.js +101 -60
  13. data/assets/javascripts/bootstrap/scrollspy.js +127 -106
  14. data/assets/javascripts/bootstrap/tab.js +113 -101
  15. data/assets/javascripts/bootstrap/toast.js +267 -0
  16. data/assets/javascripts/bootstrap/tooltip.js +406 -188
  17. data/assets/javascripts/bootstrap/util.js +106 -55
  18. data/assets/javascripts/bootstrap-sprockets.js +1 -0
  19. data/assets/javascripts/bootstrap.js +1946 -1482
  20. data/assets/javascripts/bootstrap.min.js +4 -4
  21. data/assets/stylesheets/_bootstrap-grid.scss +7 -12
  22. data/assets/stylesheets/_bootstrap-reboot.scss +4 -4
  23. data/assets/stylesheets/_bootstrap.scss +6 -4
  24. data/assets/stylesheets/bootstrap/_alert.scss +3 -2
  25. data/assets/stylesheets/bootstrap/_badge.scss +8 -1
  26. data/assets/stylesheets/bootstrap/_breadcrumb.scss +10 -6
  27. data/assets/stylesheets/bootstrap/_button-group.scss +17 -20
  28. data/assets/stylesheets/bootstrap/_buttons.scss +23 -28
  29. data/assets/stylesheets/bootstrap/_card.scss +77 -61
  30. data/assets/stylesheets/bootstrap/_carousel.scss +72 -63
  31. data/assets/stylesheets/bootstrap/_close.scss +15 -9
  32. data/assets/stylesheets/bootstrap/_code.scss +6 -14
  33. data/assets/stylesheets/bootstrap/_custom-forms.scss +287 -43
  34. data/assets/stylesheets/bootstrap/_dropdown.scss +70 -9
  35. data/assets/stylesheets/bootstrap/_forms.scss +56 -42
  36. data/assets/stylesheets/bootstrap/_functions.scss +117 -13
  37. data/assets/stylesheets/bootstrap/_grid.scss +32 -11
  38. data/assets/stylesheets/bootstrap/_images.scss +4 -4
  39. data/assets/stylesheets/bootstrap/_input-group.scss +80 -25
  40. data/assets/stylesheets/bootstrap/_jumbotron.scss +2 -1
  41. data/assets/stylesheets/bootstrap/_list-group.scss +63 -24
  42. data/assets/stylesheets/bootstrap/_mixins.scss +9 -4
  43. data/assets/stylesheets/bootstrap/_modal.scss +96 -24
  44. data/assets/stylesheets/bootstrap/_nav.scss +14 -7
  45. data/assets/stylesheets/bootstrap/_navbar.scss +66 -45
  46. data/assets/stylesheets/bootstrap/_pagination.scss +10 -8
  47. data/assets/stylesheets/bootstrap/_popover.scss +56 -69
  48. data/assets/stylesheets/bootstrap/_print.scss +41 -19
  49. data/assets/stylesheets/bootstrap/_progress.scss +20 -6
  50. data/assets/stylesheets/bootstrap/_reboot.scss +88 -109
  51. data/assets/stylesheets/bootstrap/_spinners.scss +65 -0
  52. data/assets/stylesheets/bootstrap/_tables.scss +19 -14
  53. data/assets/stylesheets/bootstrap/_toasts.scss +46 -0
  54. data/assets/stylesheets/bootstrap/_tooltip.scss +6 -6
  55. data/assets/stylesheets/bootstrap/_transitions.scss +10 -20
  56. data/assets/stylesheets/bootstrap/_type.scss +19 -19
  57. data/assets/stylesheets/bootstrap/_utilities.scss +4 -0
  58. data/assets/stylesheets/bootstrap/_variables.scss +492 -215
  59. data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +5 -3
  60. data/assets/stylesheets/bootstrap/mixins/_badge.scss +8 -3
  61. data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +51 -10
  62. data/assets/stylesheets/bootstrap/mixins/_box-shadow.scss +16 -1
  63. data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +11 -9
  64. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +35 -26
  65. data/assets/stylesheets/bootstrap/mixins/_caret.scss +13 -16
  66. data/assets/stylesheets/bootstrap/mixins/_deprecate.scss +10 -0
  67. data/assets/stylesheets/bootstrap/mixins/_float.scss +6 -3
  68. data/assets/stylesheets/bootstrap/mixins/_forms.scss +102 -40
  69. data/assets/stylesheets/bootstrap/mixins/_gradients.scss +7 -7
  70. data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +36 -25
  71. data/assets/stylesheets/bootstrap/mixins/_grid.scss +34 -17
  72. data/assets/stylesheets/bootstrap/mixins/_hover.scss +27 -51
  73. data/assets/stylesheets/bootstrap/mixins/_image.scss +4 -4
  74. data/assets/stylesheets/bootstrap/mixins/_list-group.scss +10 -13
  75. data/assets/stylesheets/bootstrap/mixins/_lists.scss +1 -1
  76. data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +3 -2
  77. data/assets/stylesheets/bootstrap/mixins/_pagination.scss +1 -1
  78. data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +3 -3
  79. data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +5 -6
  80. data/assets/stylesheets/bootstrap/mixins/_size.scss +1 -0
  81. data/assets/stylesheets/bootstrap/mixins/_table-row.scss +11 -2
  82. data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +7 -4
  83. data/assets/stylesheets/bootstrap/mixins/_text-hide.scss +3 -1
  84. data/assets/stylesheets/bootstrap/mixins/_transition.scss +20 -3
  85. data/assets/stylesheets/bootstrap/mixins/_visibility.scss +1 -0
  86. data/assets/stylesheets/bootstrap/utilities/_background.scss +2 -2
  87. data/assets/stylesheets/bootstrap/utilities/_borders.scss +23 -2
  88. data/assets/stylesheets/bootstrap/utilities/_display.scss +6 -36
  89. data/assets/stylesheets/bootstrap/utilities/_embed.scss +7 -20
  90. data/assets/stylesheets/bootstrap/utilities/_flex.scss +5 -0
  91. data/assets/stylesheets/bootstrap/utilities/_float.scss +5 -3
  92. data/assets/stylesheets/bootstrap/utilities/_interactions.scss +5 -0
  93. data/assets/stylesheets/bootstrap/utilities/_overflow.scss +5 -0
  94. data/assets/stylesheets/bootstrap/utilities/_position.scss +0 -4
  95. data/assets/stylesheets/bootstrap/utilities/_shadows.scss +6 -0
  96. data/assets/stylesheets/bootstrap/utilities/_sizing.scss +8 -0
  97. data/assets/stylesheets/bootstrap/utilities/_spacing.scss +23 -1
  98. data/assets/stylesheets/bootstrap/utilities/_stretched-link.scss +19 -0
  99. data/assets/stylesheets/bootstrap/utilities/_text.scss +28 -8
  100. data/assets/stylesheets/bootstrap/utilities/_visibility.scss +4 -2
  101. data/assets/stylesheets/bootstrap/vendor/_rfs.scss +228 -0
  102. data/bootstrap.gemspec +7 -4
  103. data/lib/bootstrap/engine.rb +3 -0
  104. data/lib/bootstrap/version.rb +4 -2
  105. data/lib/bootstrap.rb +10 -7
  106. data/tasks/updater/js.rb +18 -6
  107. data/tasks/updater/network.rb +8 -2
  108. data/test/dummy_rails/app/assets/config/manifest.js +3 -0
  109. data/test/dummy_rails/app/assets/stylesheets/.browserslistrc +1 -0
  110. data/test/gemfiles/rails_6_0.gemfile +7 -0
  111. data/test/support/dummy_rails_integration.rb +3 -1
  112. data/test/test_helper.rb +21 -15
  113. metadata +29 -16
  114. data/assets/stylesheets/bootstrap/mixins/_navbar-align.scss +0 -10
@@ -9,6 +9,7 @@
9
9
  // No need to set list-style: none; since .list-group-item is block level
10
10
  padding-left: 0; // reset padding because ul and ol
11
11
  margin-bottom: 0;
12
+ @include border-radius($list-group-border-radius);
12
13
  }
13
14
 
14
15
 
@@ -23,7 +24,8 @@
23
24
  text-align: inherit; // For `<button>`s (anchors inherit)
24
25
 
25
26
  // Hover state
26
- @include hover-focus {
27
+ @include hover-focus() {
28
+ z-index: 1; // Place hover/focus items above their siblings for proper border styling
27
29
  color: $list-group-action-hover-color;
28
30
  text-decoration: none;
29
31
  background-color: $list-group-hover-bg;
@@ -44,28 +46,23 @@
44
46
  position: relative;
45
47
  display: block;
46
48
  padding: $list-group-item-padding-y $list-group-item-padding-x;
47
- // Place the border on the list items and negative margin up for better styling
48
- margin-bottom: -$list-group-border-width;
49
+ color: $list-group-color;
50
+ text-decoration: if($link-decoration == none, null, none);
49
51
  background-color: $list-group-bg;
50
52
  border: $list-group-border-width solid $list-group-border-color;
51
53
 
52
54
  &:first-child {
53
- @include border-top-radius($list-group-border-radius);
55
+ @include border-top-radius(inherit);
54
56
  }
55
57
 
56
58
  &:last-child {
57
- margin-bottom: 0;
58
- @include border-bottom-radius($list-group-border-radius);
59
- }
60
-
61
- @include hover-focus {
62
- z-index: 1; // Place hover/active items above their siblings for proper border styling
63
- text-decoration: none;
59
+ @include border-bottom-radius(inherit);
64
60
  }
65
61
 
66
62
  &.disabled,
67
63
  &:disabled {
68
64
  color: $list-group-disabled-color;
65
+ pointer-events: none;
69
66
  background-color: $list-group-disabled-bg;
70
67
  }
71
68
 
@@ -76,6 +73,56 @@
76
73
  background-color: $list-group-active-bg;
77
74
  border-color: $list-group-active-border-color;
78
75
  }
76
+
77
+ & + & {
78
+ border-top-width: 0;
79
+
80
+ &.active {
81
+ margin-top: -$list-group-border-width;
82
+ border-top-width: $list-group-border-width;
83
+ }
84
+ }
85
+ }
86
+
87
+
88
+ // Horizontal
89
+ //
90
+ // Change the layout of list group items from vertical (default) to horizontal.
91
+
92
+ @each $breakpoint in map-keys($grid-breakpoints) {
93
+ @include media-breakpoint-up($breakpoint) {
94
+ $infix: breakpoint-infix($breakpoint, $grid-breakpoints);
95
+
96
+ .list-group-horizontal#{$infix} {
97
+ flex-direction: row;
98
+
99
+ > .list-group-item {
100
+ &:first-child {
101
+ @include border-bottom-left-radius($list-group-border-radius);
102
+ @include border-top-right-radius(0);
103
+ }
104
+
105
+ &:last-child {
106
+ @include border-top-right-radius($list-group-border-radius);
107
+ @include border-bottom-left-radius(0);
108
+ }
109
+
110
+ &.active {
111
+ margin-top: 0;
112
+ }
113
+
114
+ + .list-group-item {
115
+ border-top-width: $list-group-border-width;
116
+ border-left-width: 0;
117
+
118
+ &.active {
119
+ margin-left: -$list-group-border-width;
120
+ border-left-width: $list-group-border-width;
121
+ }
122
+ }
123
+ }
124
+ }
125
+ }
79
126
  }
80
127
 
81
128
 
@@ -85,21 +132,13 @@
85
132
  // useful within other components (e.g., cards).
86
133
 
87
134
  .list-group-flush {
88
- .list-group-item {
89
- border-right: 0;
90
- border-left: 0;
91
- @include border-radius(0);
92
- }
135
+ @include border-radius(0);
93
136
 
94
- &:first-child {
95
- .list-group-item:first-child {
96
- border-top: 0;
97
- }
98
- }
137
+ > .list-group-item {
138
+ border-width: 0 0 $list-group-border-width;
99
139
 
100
- &:last-child {
101
- .list-group-item:last-child {
102
- border-bottom: 0;
140
+ &:last-child {
141
+ border-bottom-width: 0;
103
142
  }
104
143
  }
105
144
  }
@@ -2,6 +2,12 @@
2
2
  //
3
3
  // Used in conjunction with global variables to enable certain theme features.
4
4
 
5
+ // Vendor
6
+ @import "vendor/rfs";
7
+
8
+ // Deprecate
9
+ @import "mixins/deprecate";
10
+
5
11
  // Utilities
6
12
  @import "mixins/breakpoints";
7
13
  @import "mixins/hover";
@@ -16,7 +22,7 @@
16
22
  @import "mixins/text-truncate";
17
23
  @import "mixins/visibility";
18
24
 
19
- // // Components
25
+ // Components
20
26
  @import "mixins/alert";
21
27
  @import "mixins/buttons";
22
28
  @import "mixins/caret";
@@ -27,16 +33,15 @@
27
33
  @import "mixins/forms";
28
34
  @import "mixins/table-row";
29
35
 
30
- // // Skins
36
+ // Skins
31
37
  @import "mixins/background-variant";
32
38
  @import "mixins/border-radius";
33
39
  @import "mixins/box-shadow";
34
40
  @import "mixins/gradients";
35
41
  @import "mixins/transition";
36
42
 
37
- // // Layout
43
+ // Layout
38
44
  @import "mixins/clearfix";
39
- // @import "mixins/navbar-align";
40
45
  @import "mixins/grid-framework";
41
46
  @import "mixins/grid";
42
47
  @import "mixins/float";
@@ -4,20 +4,25 @@
4
4
  // .modal-content - actual modal w/ bg and corners and stuff
5
5
 
6
6
 
7
- // Kill the scroll on the body
8
7
  .modal-open {
8
+ // Kill the scroll on the body
9
9
  overflow: hidden;
10
+
11
+ .modal {
12
+ overflow-x: hidden;
13
+ overflow-y: auto;
14
+ }
10
15
  }
11
16
 
12
17
  // Container that the modal scrolls within
13
18
  .modal {
14
19
  position: fixed;
15
20
  top: 0;
16
- right: 0;
17
- bottom: 0;
18
21
  left: 0;
19
22
  z-index: $zindex-modal;
20
23
  display: none;
24
+ width: 100%;
25
+ height: 100%;
21
26
  overflow: hidden;
22
27
  // Prevent Chrome on Windows from adding a focus outline. For details, see
23
28
  // https://github.com/twbs/bootstrap/pull/10951.
@@ -25,11 +30,6 @@
25
30
  // We deliberately don't use `-webkit-overflow-scrolling: touch;` due to a
26
31
  // gnarly iOS Safari bug: https://bugs.webkit.org/show_bug.cgi?id=158342
27
32
  // See also https://github.com/twbs/bootstrap/issues/17695
28
-
29
- .modal-open & {
30
- overflow-x: hidden;
31
- overflow-y: auto;
32
- }
33
33
  }
34
34
 
35
35
  // Shell div to position the modal with bottom padding
@@ -43,17 +43,64 @@
43
43
  // When fading in the modal, animate it to slide down
44
44
  .modal.fade & {
45
45
  @include transition($modal-transition);
46
- transform: translate(0, -25%);
46
+ transform: $modal-fade-transform;
47
47
  }
48
48
  .modal.show & {
49
- transform: translate(0, 0);
49
+ transform: $modal-show-transform;
50
+ }
51
+
52
+ // When trying to close, animate focus to scale
53
+ .modal.modal-static & {
54
+ transform: $modal-scale-transform;
55
+ }
56
+ }
57
+
58
+ .modal-dialog-scrollable {
59
+ display: flex; // IE10/11
60
+ max-height: subtract(100%, $modal-dialog-margin * 2);
61
+
62
+ .modal-content {
63
+ max-height: subtract(100vh, $modal-dialog-margin * 2); // IE10/11
64
+ overflow: hidden;
65
+ }
66
+
67
+ .modal-header,
68
+ .modal-footer {
69
+ flex-shrink: 0;
70
+ }
71
+
72
+ .modal-body {
73
+ overflow-y: auto;
50
74
  }
51
75
  }
52
76
 
53
77
  .modal-dialog-centered {
54
78
  display: flex;
55
79
  align-items: center;
56
- min-height: calc(100% - (#{$modal-dialog-margin} * 2));
80
+ min-height: subtract(100%, $modal-dialog-margin * 2);
81
+
82
+ // Ensure `modal-dialog-centered` extends the full height of the view (IE10/11)
83
+ &::before {
84
+ display: block; // IE10
85
+ height: subtract(100vh, $modal-dialog-margin * 2);
86
+ height: min-content; // Reset height to 0 except on IE
87
+ content: "";
88
+ }
89
+
90
+ // Ensure `.modal-body` shows scrollbar (IE10/11)
91
+ &.modal-dialog-scrollable {
92
+ flex-direction: column;
93
+ justify-content: center;
94
+ height: 100%;
95
+
96
+ .modal-content {
97
+ max-height: none;
98
+ }
99
+
100
+ &::before {
101
+ content: none;
102
+ }
103
+ }
57
104
  }
58
105
 
59
106
  // Actual modal
@@ -63,11 +110,12 @@
63
110
  flex-direction: column;
64
111
  width: 100%; // Ensure `.modal-content` extends the full width of the parent `.modal-dialog`
65
112
  // counteract the pointer-events: none; in the .modal-dialog
113
+ color: $modal-content-color;
66
114
  pointer-events: auto;
67
115
  background-color: $modal-content-bg;
68
116
  background-clip: padding-box;
69
117
  border: $modal-content-border-width solid $modal-content-border-color;
70
- @include border-radius($border-radius-lg);
118
+ @include border-radius($modal-content-border-radius);
71
119
  @include box-shadow($modal-content-box-shadow-xs);
72
120
  // Remove focus outline from opened modal
73
121
  outline: 0;
@@ -77,10 +125,10 @@
77
125
  .modal-backdrop {
78
126
  position: fixed;
79
127
  top: 0;
80
- right: 0;
81
- bottom: 0;
82
128
  left: 0;
83
129
  z-index: $zindex-modal-backdrop;
130
+ width: 100vw;
131
+ height: 100vh;
84
132
  background-color: $modal-backdrop-bg;
85
133
 
86
134
  // Fade for backdrop
@@ -96,12 +144,12 @@
96
144
  justify-content: space-between; // Put modal header elements (title and dismiss) on opposite ends
97
145
  padding: $modal-header-padding;
98
146
  border-bottom: $modal-header-border-width solid $modal-header-border-color;
99
- @include border-top-radius($border-radius-lg);
147
+ @include border-top-radius($modal-content-inner-border-radius);
100
148
 
101
149
  .close {
102
150
  padding: $modal-header-padding;
103
151
  // auto on the left force icon to the right even when there is no .modal-title
104
- margin: (-$modal-header-padding) (-$modal-header-padding) (-$modal-header-padding) auto;
152
+ margin: (-$modal-header-padding-y) (-$modal-header-padding-x) (-$modal-header-padding-y) auto;
105
153
  }
106
154
  }
107
155
 
@@ -116,7 +164,7 @@
116
164
  .modal-body {
117
165
  position: relative;
118
166
  // Enable `flex-grow: 1` so that the body take up as much space as possible
119
- // when should there be a fixed height on `.modal-dialog`.
167
+ // when there should be a fixed height on `.modal-dialog`.
120
168
  flex: 1 1 auto;
121
169
  padding: $modal-inner-padding;
122
170
  }
@@ -124,14 +172,19 @@
124
172
  // Footer (for actions)
125
173
  .modal-footer {
126
174
  display: flex;
175
+ flex-wrap: wrap;
127
176
  align-items: center; // vertically center
128
177
  justify-content: flex-end; // Right align buttons with flex property because text-align doesn't work on flex items
129
- padding: $modal-inner-padding;
178
+ padding: $modal-inner-padding - $modal-footer-margin-between * .5;
130
179
  border-top: $modal-footer-border-width solid $modal-footer-border-color;
180
+ @include border-bottom-radius($modal-content-inner-border-radius);
131
181
 
132
- // Easily place margin between footer elements
133
- > :not(:first-child) { margin-left: .25rem; }
134
- > :not(:last-child) { margin-right: .25rem; }
182
+ // Place margin between footer elements
183
+ // This solution is far from ideal because of the universal selector usage,
184
+ // but is needed to fix https://github.com/twbs/bootstrap/issues/24800
185
+ > * {
186
+ margin: $modal-footer-margin-between * .5;
187
+ }
135
188
  }
136
189
 
137
190
  // Measure scrollbar width for padding body during modal show/hide
@@ -151,8 +204,21 @@
151
204
  margin: $modal-dialog-margin-y-sm-up auto;
152
205
  }
153
206
 
207
+ .modal-dialog-scrollable {
208
+ max-height: subtract(100%, $modal-dialog-margin-y-sm-up * 2);
209
+
210
+ .modal-content {
211
+ max-height: subtract(100vh, $modal-dialog-margin-y-sm-up * 2);
212
+ }
213
+ }
214
+
154
215
  .modal-dialog-centered {
155
- min-height: calc(100% - (#{$modal-dialog-margin-y-sm-up} * 2));
216
+ min-height: subtract(100%, $modal-dialog-margin-y-sm-up * 2);
217
+
218
+ &::before {
219
+ height: subtract(100vh, $modal-dialog-margin-y-sm-up * 2);
220
+ height: min-content;
221
+ }
156
222
  }
157
223
 
158
224
  .modal-content {
@@ -160,9 +226,15 @@
160
226
  }
161
227
 
162
228
  .modal-sm { max-width: $modal-sm; }
163
-
164
229
  }
165
230
 
166
231
  @include media-breakpoint-up(lg) {
167
- .modal-lg { max-width: $modal-lg; }
232
+ .modal-lg,
233
+ .modal-xl {
234
+ max-width: $modal-lg;
235
+ }
236
+ }
237
+
238
+ @include media-breakpoint-up(xl) {
239
+ .modal-xl { max-width: $modal-xl; }
168
240
  }
@@ -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 `<ul>`s.
4
+ // `<nav>`s, `<ul>`s or `<ol>`s.
5
5
 
6
6
  .nav {
7
7
  display: flex;
@@ -14,14 +14,17 @@
14
14
  .nav-link {
15
15
  display: block;
16
16
  padding: $nav-link-padding-y $nav-link-padding-x;
17
+ text-decoration: if($link-decoration == none, null, none);
17
18
 
18
- @include hover-focus {
19
+ @include hover-focus() {
19
20
  text-decoration: none;
20
21
  }
21
22
 
22
23
  // Disabled state lightens text
23
24
  &.disabled {
24
25
  color: $nav-link-disabled-color;
26
+ pointer-events: none;
27
+ cursor: default;
25
28
  }
26
29
  }
27
30
 
@@ -32,15 +35,15 @@
32
35
  .nav-tabs {
33
36
  border-bottom: $nav-tabs-border-width solid $nav-tabs-border-color;
34
37
 
35
- .nav-item {
36
- margin-bottom: -$nav-tabs-border-width;
37
- }
38
-
39
38
  .nav-link {
39
+ margin-bottom: -$nav-tabs-border-width;
40
+ background-color: transparent;
40
41
  border: $nav-tabs-border-width solid transparent;
41
42
  @include border-top-radius($nav-tabs-border-radius);
42
43
 
43
- @include hover-focus {
44
+ @include hover-focus() {
45
+ // Prevents active .nav-link tab overlapping focus outline of previous/next .nav-link
46
+ isolation: isolate;
44
47
  border-color: $nav-tabs-link-hover-border-color;
45
48
  }
46
49
 
@@ -73,6 +76,8 @@
73
76
 
74
77
  .nav-pills {
75
78
  .nav-link {
79
+ background: none;
80
+ border: 0;
76
81
  @include border-radius($nav-pills-border-radius);
77
82
  }
78
83
 
@@ -89,6 +94,7 @@
89
94
  //
90
95
 
91
96
  .nav-fill {
97
+ > .nav-link,
92
98
  .nav-item {
93
99
  flex: 1 1 auto;
94
100
  text-align: center;
@@ -96,6 +102,7 @@
96
102
  }
97
103
 
98
104
  .nav-justified {
105
+ > .nav-link,
99
106
  .nav-item {
100
107
  flex-basis: 0;
101
108
  flex-grow: 1;