bootstrap 4.0.0.alpha3 → 4.0.0.alpha3.1
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of bootstrap might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/.travis.yml +2 -2
- data/CHANGELOG.md +5 -0
- data/LICENSE +1 -1
- data/README.md +3 -3
- data/Rakefile +11 -8
- data/assets/javascripts/bootstrap.js +61 -48
- data/assets/javascripts/bootstrap.min.js +4 -4
- data/assets/javascripts/bootstrap/alert.js +2 -2
- data/assets/javascripts/bootstrap/button.js +4 -2
- data/assets/javascripts/bootstrap/carousel.js +10 -6
- data/assets/javascripts/bootstrap/collapse.js +2 -2
- data/assets/javascripts/bootstrap/dropdown.js +12 -8
- data/assets/javascripts/bootstrap/modal.js +9 -12
- data/assets/javascripts/bootstrap/popover.js +2 -2
- data/assets/javascripts/bootstrap/scrollspy.js +4 -3
- data/assets/javascripts/bootstrap/tab.js +2 -2
- data/assets/javascripts/bootstrap/tooltip.js +2 -2
- data/assets/javascripts/bootstrap/util.js +8 -3
- data/assets/stylesheets/_bootstrap-grid.scss +2 -41
- data/assets/stylesheets/_bootstrap-reboot.scss +1 -0
- data/assets/stylesheets/_bootstrap.scss +5 -7
- data/assets/stylesheets/bootstrap/_alert.scss +1 -10
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +25 -10
- data/assets/stylesheets/bootstrap/_button-group.scss +22 -12
- data/assets/stylesheets/bootstrap/_buttons.scss +14 -11
- data/assets/stylesheets/bootstrap/_card.scss +59 -30
- data/assets/stylesheets/bootstrap/_carousel.scss +25 -24
- data/assets/stylesheets/bootstrap/_close.scss +3 -0
- data/assets/stylesheets/bootstrap/_code.scss +6 -7
- data/assets/stylesheets/bootstrap/_custom-forms.scss +144 -105
- data/assets/stylesheets/bootstrap/_custom.scss +4 -0
- data/assets/stylesheets/bootstrap/_dropdown.scss +10 -24
- data/assets/stylesheets/bootstrap/_forms.scss +97 -185
- data/assets/stylesheets/bootstrap/_grid.scss +9 -46
- data/assets/stylesheets/bootstrap/_images.scss +3 -4
- data/assets/stylesheets/bootstrap/_input-group.scss +25 -26
- data/assets/stylesheets/bootstrap/_list-group.scss +33 -50
- data/assets/stylesheets/bootstrap/_media.scss +4 -5
- data/assets/stylesheets/bootstrap/_mixins.scss +1 -2
- data/assets/stylesheets/bootstrap/_modal.scss +13 -27
- data/assets/stylesheets/bootstrap/_nav.scss +18 -23
- data/assets/stylesheets/bootstrap/_navbar.scss +54 -26
- data/assets/stylesheets/bootstrap/_normalize.scss +164 -168
- data/assets/stylesheets/bootstrap/_pagination.scss +1 -1
- data/assets/stylesheets/bootstrap/_popover.scss +12 -5
- data/assets/stylesheets/bootstrap/_print.scss +93 -65
- data/assets/stylesheets/bootstrap/_progress.scss +43 -54
- data/assets/stylesheets/bootstrap/_reboot.scss +59 -13
- data/assets/stylesheets/bootstrap/_tables.scss +32 -27
- data/assets/stylesheets/bootstrap/_tags.scss +77 -0
- data/assets/stylesheets/bootstrap/_tooltip.scss +7 -5
- data/assets/stylesheets/bootstrap/_type.scss +22 -29
- data/assets/stylesheets/bootstrap/_utilities.scss +9 -95
- data/assets/stylesheets/bootstrap/_variables.scss +302 -139
- data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +22 -9
- data/assets/stylesheets/bootstrap/mixins/_cards.scss +8 -2
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +7 -4
- data/assets/stylesheets/bootstrap/mixins/_gradients.scss +4 -4
- data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +37 -11
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +18 -9
- data/assets/stylesheets/bootstrap/mixins/_hover.scss +10 -9
- data/assets/stylesheets/bootstrap/mixins/_pagination.scss +2 -3
- data/assets/stylesheets/bootstrap/mixins/_progress.scss +5 -0
- data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +2 -3
- data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_tab-focus.scss +3 -3
- data/assets/stylesheets/bootstrap/mixins/{_label.scss → _tag.scss} +2 -2
- data/assets/stylesheets/bootstrap/mixins/_text-hide.scss +1 -1
- data/assets/stylesheets/bootstrap/{_utilities-background.scss → utilities/_background.scss} +1 -4
- data/assets/stylesheets/bootstrap/utilities/_clearfix.scss +3 -0
- data/assets/stylesheets/bootstrap/utilities/_display.scss +13 -0
- data/assets/stylesheets/bootstrap/utilities/_flex.scss +37 -0
- data/assets/stylesheets/bootstrap/utilities/_pulls.scss +13 -0
- data/assets/stylesheets/bootstrap/utilities/_screenreaders.scss +11 -0
- data/assets/stylesheets/bootstrap/{_utilities-spacing.scss → utilities/_spacing.scss} +4 -0
- data/assets/stylesheets/bootstrap/utilities/_text.scss +51 -0
- data/assets/stylesheets/bootstrap/{_utilities-responsive.scss → utilities/_visibility.scss} +9 -1
- data/bootstrap.gemspec +1 -1
- data/lib/bootstrap.rb +6 -6
- data/lib/bootstrap/engine.rb +2 -0
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/network.rb +3 -1
- data/templates/project/_bootstrap-variables.scss +303 -140
- data/test/dummy_rails/config/boot.rb +1 -1
- data/test/gemfiles/rails_4_2.gemfile +4 -4
- data/test/gemfiles/rails_5_0.gemfile +12 -0
- data/test/rails_test.rb +1 -1
- data/test/support/dummy_rails_integration.rb +2 -2
- metadata +19 -14
- data/assets/stylesheets/bootstrap/_labels.scss +0 -77
- data/assets/stylesheets/bootstrap/_pager.scss +0 -57
- data/assets/stylesheets/bootstrap/mixins/_center-block.scss +0 -7
- data/test/gemfiles/rails_head.gemfile +0 -20
@@ -34,6 +34,7 @@
|
|
34
34
|
&.disabled .page-link {
|
35
35
|
@include plain-hover-focus {
|
36
36
|
color: $pagination-disabled-color;
|
37
|
+
pointer-events: none;
|
37
38
|
cursor: $cursor-disabled;
|
38
39
|
background-color: $pagination-disabled-bg;
|
39
40
|
border-color: $pagination-disabled-border;
|
@@ -46,7 +47,6 @@
|
|
46
47
|
float: left; // Collapse white-space
|
47
48
|
padding: $pagination-padding-y $pagination-padding-x;
|
48
49
|
margin-left: -1px;
|
49
|
-
line-height: $line-height;
|
50
50
|
color: $pagination-color;
|
51
51
|
text-decoration: none;
|
52
52
|
background-color: $pagination-bg;
|
@@ -5,16 +5,18 @@
|
|
5
5
|
z-index: $zindex-popover;
|
6
6
|
display: block;
|
7
7
|
max-width: $popover-max-width;
|
8
|
-
padding:
|
8
|
+
padding: $popover-inner-padding;
|
9
9
|
// Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.
|
10
10
|
// So reset our font and text properties to avoid inheriting weird values.
|
11
11
|
@include reset-text();
|
12
12
|
font-size: $font-size-sm;
|
13
|
+
// Allow breaking very long words so they don't overflow the popover's bounds
|
14
|
+
word-wrap: break-word;
|
13
15
|
background-color: $popover-bg;
|
14
16
|
background-clip: padding-box;
|
15
17
|
border: $popover-border-width solid $popover-border-color;
|
16
18
|
@include border-radius($border-radius-lg);
|
17
|
-
@include box-shadow(
|
19
|
+
@include box-shadow($popover-box-shadow);
|
18
20
|
|
19
21
|
|
20
22
|
// Popover directions
|
@@ -103,16 +105,21 @@
|
|
103
105
|
|
104
106
|
// Offset the popover to account for the popover arrow
|
105
107
|
.popover-title {
|
106
|
-
padding:
|
108
|
+
padding: $popover-title-padding-y $popover-title-padding-x;
|
107
109
|
margin: 0; // reset heading margin
|
108
110
|
font-size: $font-size-base;
|
109
111
|
background-color: $popover-title-bg;
|
110
112
|
border-bottom: $popover-border-width solid darken($popover-title-bg, 5%);
|
111
|
-
|
113
|
+
$offset-border-width: ($border-width / $font-size-root);
|
114
|
+
@include border-radius(($border-radius-lg - $offset-border-width) ($border-radius-lg - $offset-border-width) 0 0);
|
115
|
+
|
116
|
+
&:empty {
|
117
|
+
display: none;
|
118
|
+
}
|
112
119
|
}
|
113
120
|
|
114
121
|
.popover-content {
|
115
|
-
padding:
|
122
|
+
padding: $popover-content-padding-y $popover-content-padding-x;
|
116
123
|
}
|
117
124
|
|
118
125
|
|
@@ -1,88 +1,116 @@
|
|
1
|
+
// scss-lint:disable ImportantRule, QualifyingElement
|
2
|
+
|
1
3
|
// Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css
|
2
4
|
|
3
5
|
// ==========================================================================
|
4
6
|
// Print styles.
|
5
|
-
// Inlined to avoid the additional HTTP request:
|
7
|
+
// Inlined to avoid the additional HTTP request:
|
8
|
+
// http://www.phpied.com/delay-loading-your-print-css/
|
6
9
|
// ==========================================================================
|
7
10
|
|
8
|
-
@
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
11
|
+
@if $enable-print-styles {
|
12
|
+
@media print {
|
13
|
+
*,
|
14
|
+
*::before,
|
15
|
+
*::after,
|
16
|
+
*::first-letter,
|
17
|
+
*::first-line {
|
18
|
+
// Bootstrap specific; comment out `color` and `background`
|
19
|
+
//color: #000 !important; // Black prints faster:
|
20
|
+
// http://www.sanbeiji.com/archives/953
|
21
|
+
text-shadow: none !important;
|
22
|
+
//background: transparent !important;
|
23
|
+
box-shadow: none !important;
|
24
|
+
}
|
15
25
|
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
26
|
+
a,
|
27
|
+
a:visited {
|
28
|
+
text-decoration: underline;
|
29
|
+
}
|
20
30
|
|
21
|
-
|
22
|
-
|
23
|
-
|
31
|
+
// Bootstrap specific; comment the following selector out
|
32
|
+
//a[href]::after {
|
33
|
+
// content: " (" attr(href) ")";
|
34
|
+
//}
|
24
35
|
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
page-break-inside: avoid;
|
29
|
-
}
|
36
|
+
abbr[title]::after {
|
37
|
+
content: " (" attr(title) ")";
|
38
|
+
}
|
30
39
|
|
31
|
-
|
32
|
-
|
33
|
-
|
40
|
+
// Bootstrap specific; comment the following selector out
|
41
|
+
//
|
42
|
+
// Don't show links that are fragment identifiers,
|
43
|
+
// or use the `javascript:` pseudo protocol
|
44
|
+
//
|
34
45
|
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
46
|
+
//a[href^="#"]::after,
|
47
|
+
//a[href^="javascript:"]::after {
|
48
|
+
// content: "";
|
49
|
+
//}
|
39
50
|
|
40
|
-
|
41
|
-
|
42
|
-
|
51
|
+
pre,
|
52
|
+
blockquote {
|
53
|
+
border: $border-width solid #999; // Bootstrap custom code; using `$border-width` instead of 1px
|
54
|
+
page-break-inside: avoid;
|
55
|
+
}
|
43
56
|
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
widows: 3;
|
49
|
-
}
|
57
|
+
//
|
58
|
+
// Printing Tables:
|
59
|
+
// http://css-discuss.incutio.com/wiki/Printing_Tables
|
60
|
+
//
|
50
61
|
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
}
|
62
|
+
thead {
|
63
|
+
display: table-header-group;
|
64
|
+
}
|
55
65
|
|
56
|
-
|
66
|
+
tr,
|
67
|
+
img {
|
68
|
+
page-break-inside: avoid;
|
69
|
+
}
|
57
70
|
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
.dropup > .btn {
|
64
|
-
> .caret {
|
65
|
-
border-top-color: #000 !important;
|
71
|
+
p,
|
72
|
+
h2,
|
73
|
+
h3 {
|
74
|
+
orphans: 3;
|
75
|
+
widows: 3;
|
66
76
|
}
|
67
|
-
}
|
68
|
-
.label {
|
69
|
-
border: $border-width solid #000;
|
70
|
-
}
|
71
77
|
|
72
|
-
|
73
|
-
|
78
|
+
h2,
|
79
|
+
h3 {
|
80
|
+
page-break-after: avoid;
|
81
|
+
}
|
82
|
+
|
83
|
+
// Bootstrap specific changes start
|
74
84
|
|
75
|
-
|
76
|
-
|
77
|
-
|
85
|
+
// Bootstrap components
|
86
|
+
.navbar {
|
87
|
+
display: none;
|
78
88
|
}
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
89
|
+
.btn,
|
90
|
+
.dropup > .btn {
|
91
|
+
> .caret {
|
92
|
+
border-top-color: #000 !important;
|
93
|
+
}
|
94
|
+
}
|
95
|
+
.tag {
|
96
|
+
border: $border-width solid #000;
|
84
97
|
}
|
85
|
-
}
|
86
98
|
|
87
|
-
|
99
|
+
.table {
|
100
|
+
border-collapse: collapse !important;
|
101
|
+
|
102
|
+
td,
|
103
|
+
th {
|
104
|
+
background-color: #fff !important;
|
105
|
+
}
|
106
|
+
}
|
107
|
+
.table-bordered {
|
108
|
+
th,
|
109
|
+
td {
|
110
|
+
border: 1px solid #ddd !important;
|
111
|
+
}
|
112
|
+
}
|
113
|
+
|
114
|
+
// Bootstrap specific changes end
|
115
|
+
}
|
88
116
|
}
|
@@ -3,8 +3,8 @@
|
|
3
3
|
//
|
4
4
|
|
5
5
|
@keyframes progress-bar-stripes {
|
6
|
-
from
|
7
|
-
to
|
6
|
+
from { background-position: $spacer-y 0; }
|
7
|
+
to { background-position: 0 0; }
|
8
8
|
}
|
9
9
|
|
10
10
|
|
@@ -19,82 +19,67 @@
|
|
19
19
|
margin-bottom: $spacer-y;
|
20
20
|
}
|
21
21
|
.progress[value] {
|
22
|
-
//
|
23
|
-
color:
|
22
|
+
// Set overall background
|
23
|
+
background-color: $progress-bg;
|
24
24
|
// Remove Firefox and Opera border
|
25
25
|
border: 0;
|
26
26
|
// Reset the default appearance
|
27
27
|
appearance: none;
|
28
|
-
|
29
|
-
.progress[value]::-webkit-progress-bar {
|
30
|
-
background-color: #eee;
|
28
|
+
// Set overall border radius
|
31
29
|
@include border-radius($border-radius);
|
32
|
-
@include box-shadow(inset 0 .1rem .1rem rgba(0,0,0,.1));
|
33
30
|
}
|
34
|
-
|
35
|
-
|
31
|
+
|
32
|
+
// Filled-in portion of the bar
|
33
|
+
.progress[value]::-ms-fill {
|
34
|
+
background-color: $progress-bar-color;
|
35
|
+
// Remove right-hand border of value bar from IE10+/Edge
|
36
|
+
border: 0;
|
37
|
+
}
|
38
|
+
.progress[value]::-moz-progress-bar {
|
39
|
+
background-color: $progress-bar-color;
|
40
|
+
@include border-left-radius($border-radius);
|
36
41
|
}
|
37
42
|
.progress[value]::-webkit-progress-value {
|
38
|
-
background-color:
|
39
|
-
border-
|
40
|
-
|
43
|
+
background-color: $progress-bar-color;
|
44
|
+
@include border-left-radius($border-radius);
|
45
|
+
}
|
46
|
+
// Tweaks for full progress bar
|
47
|
+
.progress[value="100"]::-moz-progress-bar {
|
48
|
+
@include border-right-radius($border-radius);
|
41
49
|
}
|
42
50
|
.progress[value="100"]::-webkit-progress-value {
|
43
|
-
border-
|
44
|
-
border-bottom-right-radius: $border-radius;
|
51
|
+
@include border-right-radius($border-radius);
|
45
52
|
}
|
46
53
|
|
47
|
-
//
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
//
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
// border-top-left-radius: $border-radius;
|
60
|
-
// border-bottom-left-radius: $border-radius;
|
61
|
-
// }
|
62
|
-
// .progress[value="0"]::-moz-progress-bar {
|
63
|
-
// color: $gray-light;
|
64
|
-
// min-width: 2rem;
|
65
|
-
// background-color: transparent;
|
66
|
-
// background-image: none;
|
67
|
-
// }
|
68
|
-
// .progress[value="100"]::-moz-progress-bar {
|
69
|
-
// border-top-right-radius: $border-radius;
|
70
|
-
// border-bottom-right-radius: $border-radius;
|
71
|
-
// }
|
72
|
-
// }
|
54
|
+
// Unfilled portion of the bar
|
55
|
+
.progress[value]::-webkit-progress-bar {
|
56
|
+
background-color: $progress-bg;
|
57
|
+
@include border-radius($border-radius);
|
58
|
+
@include box-shadow($progress-box-shadow);
|
59
|
+
}
|
60
|
+
base::-moz-progress-bar, // Absurd-but-syntactically-valid selector to make these styles Firefox-only
|
61
|
+
.progress[value] {
|
62
|
+
background-color: $progress-bg;
|
63
|
+
@include border-radius($border-radius);
|
64
|
+
@include box-shadow($progress-box-shadow);
|
65
|
+
}
|
73
66
|
|
74
67
|
// IE9 hacks to accompany custom markup. We don't need to scope this via media queries, but I feel better doing it anyway.
|
75
68
|
@media screen and (min-width:0\0) {
|
76
69
|
.progress {
|
77
|
-
background-color:
|
70
|
+
background-color: $progress-bg;
|
78
71
|
@include border-radius($border-radius);
|
79
|
-
@include box-shadow(
|
72
|
+
@include box-shadow($progress-box-shadow);
|
80
73
|
}
|
81
74
|
.progress-bar {
|
82
75
|
display: inline-block;
|
83
76
|
height: $spacer-y;
|
84
77
|
text-indent: -999rem; // Simulate hiding of value as in native `<progress>`
|
85
|
-
background-color:
|
86
|
-
border-
|
87
|
-
border-bottom-left-radius: $border-radius;
|
88
|
-
}
|
89
|
-
.progress[width^="0"] {
|
90
|
-
min-width: 2rem;
|
91
|
-
color: $gray-light;
|
92
|
-
background-color: transparent;
|
93
|
-
background-image: none;
|
78
|
+
background-color: $progress-bar-color;
|
79
|
+
@include border-left-radius($border-radius);
|
94
80
|
}
|
95
81
|
.progress[width="100%"] {
|
96
|
-
border-
|
97
|
-
border-bottom-right-radius: $border-radius;
|
82
|
+
@include border-right-radius($border-radius);
|
98
83
|
}
|
99
84
|
}
|
100
85
|
|
@@ -111,6 +96,10 @@
|
|
111
96
|
@include gradient-striped();
|
112
97
|
background-size: $spacer-y $spacer-y;
|
113
98
|
}
|
99
|
+
.progress-striped[value]::-ms-fill {
|
100
|
+
@include gradient-striped();
|
101
|
+
background-size: $spacer-y $spacer-y;
|
102
|
+
}
|
114
103
|
// IE9
|
115
104
|
@media screen and (min-width:0\0) {
|
116
105
|
.progress-bar-striped {
|
@@ -1,3 +1,5 @@
|
|
1
|
+
// scss-lint:disable ImportantRule, QualifyingElement, DuplicateProperty
|
2
|
+
|
1
3
|
// Reboot
|
2
4
|
//
|
3
5
|
// Global resets to common HTML elements and more for easier usage by Bootstrap.
|
@@ -32,8 +34,7 @@ html {
|
|
32
34
|
//
|
33
35
|
// @viewport is needed because IE 10+ doesn't honor <meta name="viewport"> in
|
34
36
|
// some cases. See http://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/.
|
35
|
-
// Eventually @viewport will replace <meta name="viewport">.
|
36
|
-
// prefixed for forward-compatibility.
|
37
|
+
// Eventually @viewport will replace <meta name="viewport">.
|
37
38
|
//
|
38
39
|
// However, `device-width` is broken on IE 10 on Windows (Phone) 8,
|
39
40
|
// (see http://timkadlec.com/2013/01/windows-phone-8-and-device-width/ and https://github.com/twbs/bootstrap/issues/10497)
|
@@ -44,14 +45,8 @@ html {
|
|
44
45
|
//
|
45
46
|
// Wrap `@viewport` with `@at-root` for when folks do a nested import (e.g.,
|
46
47
|
// `.class-name { @import "bootstrap"; }`).
|
47
|
-
//
|
48
|
-
// Includes future-proofed vendor prefixes as well.
|
49
48
|
@at-root {
|
50
|
-
@-
|
51
|
-
@-ms-viewport { width: device-width; }
|
52
|
-
@-o-viewport { width: device-width; }
|
53
|
-
@-webkit-viewport { width: device-width; }
|
54
|
-
@viewport { width: device-width; }
|
49
|
+
@-ms-viewport { width: device-width; }
|
55
50
|
}
|
56
51
|
|
57
52
|
|
@@ -62,6 +57,13 @@ html {
|
|
62
57
|
html {
|
63
58
|
// Sets a specific default `font-size` for user with `rem` type scales.
|
64
59
|
font-size: $font-size-root;
|
60
|
+
// As a side-effect of setting the @viewport above,
|
61
|
+
// IE11 & Edge make the scrollbar overlap the content and automatically hide itself when not in use.
|
62
|
+
// Unfortunately, the auto-showing of the scrollbar is sometimes too sensitive,
|
63
|
+
// thus making it hard to click on stuff near the right edge of the page.
|
64
|
+
// So we add this style to force IE11 & Edge to use a "normal", non-overlapping, non-auto-hiding scrollbar.
|
65
|
+
// See https://github.com/twbs/bootstrap/issues/18543
|
66
|
+
-ms-overflow-style: scrollbar;
|
65
67
|
// Changes the default tap highlight to be completely transparent in iOS.
|
66
68
|
-webkit-tap-highlight-color: rgba(0,0,0,0);
|
67
69
|
}
|
@@ -70,7 +72,7 @@ body {
|
|
70
72
|
// Make the `body` use the `font-size-root`
|
71
73
|
font-family: $font-family-base;
|
72
74
|
font-size: $font-size-base;
|
73
|
-
line-height: $line-height;
|
75
|
+
line-height: $line-height-base;
|
74
76
|
// Go easy on the eyes and use something other than `#000` for text
|
75
77
|
color: $body-color;
|
76
78
|
// By default, `<body>` has no `background-color` so we set one as a best practice.
|
@@ -169,6 +171,26 @@ a {
|
|
169
171
|
}
|
170
172
|
}
|
171
173
|
|
174
|
+
// And undo these styles for placeholder links/named anchors (without href)
|
175
|
+
// which have not been made explicitly keyboard-focusable (without tabindex).
|
176
|
+
// It would be more straightforward to just use a[href] in previous block, but that
|
177
|
+
// causes specificity issues in many other styles that are too complex to fix.
|
178
|
+
// See https://github.com/twbs/bootstrap/issues/19402
|
179
|
+
|
180
|
+
a:not([href]):not([tabindex]) {
|
181
|
+
color: inherit;
|
182
|
+
text-decoration: none;
|
183
|
+
|
184
|
+
@include hover-focus {
|
185
|
+
color: inherit;
|
186
|
+
text-decoration: none;
|
187
|
+
}
|
188
|
+
|
189
|
+
&:focus {
|
190
|
+
outline: none;
|
191
|
+
}
|
192
|
+
}
|
193
|
+
|
172
194
|
|
173
195
|
//
|
174
196
|
// Code
|
@@ -179,6 +201,8 @@ pre {
|
|
179
201
|
margin-top: 0;
|
180
202
|
// Reset browser default of `1em` to use `rem`s
|
181
203
|
margin-bottom: 1rem;
|
204
|
+
// Normalize v4 removed this property, causing `<pre>` content to break out of wrapping code snippets
|
205
|
+
overflow: auto;
|
182
206
|
}
|
183
207
|
|
184
208
|
|
@@ -245,6 +269,8 @@ textarea {
|
|
245
269
|
//
|
246
270
|
|
247
271
|
table {
|
272
|
+
// No longer part of Normalize since v4
|
273
|
+
border-collapse: collapse;
|
248
274
|
// Reset for nesting within parents with `background-color`.
|
249
275
|
background-color: $table-bg;
|
250
276
|
}
|
@@ -296,6 +322,29 @@ textarea {
|
|
296
322
|
border-radius: 0;
|
297
323
|
}
|
298
324
|
|
325
|
+
input[type="radio"],
|
326
|
+
input[type="checkbox"] {
|
327
|
+
// Apply a disabled cursor for radios and checkboxes.
|
328
|
+
//
|
329
|
+
// Note: Neither radios nor checkboxes can be readonly.
|
330
|
+
&:disabled {
|
331
|
+
cursor: $cursor-disabled;
|
332
|
+
}
|
333
|
+
}
|
334
|
+
|
335
|
+
|
336
|
+
input[type="date"],
|
337
|
+
input[type="time"],
|
338
|
+
input[type="datetime-local"],
|
339
|
+
input[type="month"] {
|
340
|
+
// Remove the default appearance of temporal inputs to avoid a Mobile Safari
|
341
|
+
// bug where setting a custom line-height prevents text from being vertically
|
342
|
+
// centered within the input.
|
343
|
+
//
|
344
|
+
// Bug report: https://github.com/twbs/bootstrap/issues/11266
|
345
|
+
-webkit-appearance: listbox;
|
346
|
+
}
|
347
|
+
|
299
348
|
textarea {
|
300
349
|
// Textareas should really only resize vertically so they don't break their (horizontal) containers.
|
301
350
|
resize: vertical;
|
@@ -320,12 +369,9 @@ legend {
|
|
320
369
|
margin-bottom: .5rem;
|
321
370
|
font-size: 1.5rem;
|
322
371
|
line-height: inherit;
|
323
|
-
// border: 0;
|
324
372
|
}
|
325
373
|
|
326
374
|
input[type="search"] {
|
327
|
-
// Undo Normalize's default here to match our global overrides.
|
328
|
-
box-sizing: inherit;
|
329
375
|
// This overrides the extra rounded corners on search inputs in iOS so that our
|
330
376
|
// `.form-control` class can properly style them. Note that this cannot simply
|
331
377
|
// be added to `.form-control` as it's not specific enough. For details, see
|