bootstrap 4.5.3 → 5.2.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (171) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +55 -0
  3. data/README.md +28 -5
  4. data/assets/javascripts/bootstrap/alert.js +54 -133
  5. data/assets/javascripts/bootstrap/base-component.js +99 -0
  6. data/assets/javascripts/bootstrap/button.js +44 -183
  7. data/assets/javascripts/bootstrap/carousel.js +308 -450
  8. data/assets/javascripts/bootstrap/collapse.js +180 -243
  9. data/assets/javascripts/bootstrap/dom/data.js +66 -0
  10. data/assets/javascripts/bootstrap/dom/event-handler.js +283 -0
  11. data/assets/javascripts/bootstrap/dom/manipulator.js +84 -0
  12. data/assets/javascripts/bootstrap/dom/selector-engine.js +85 -0
  13. data/assets/javascripts/bootstrap/dropdown.js +320 -387
  14. data/assets/javascripts/bootstrap/modal.js +238 -478
  15. data/assets/javascripts/bootstrap/offcanvas.js +297 -0
  16. data/assets/javascripts/bootstrap/popover.js +58 -163
  17. data/assets/javascripts/bootstrap/scrollspy.js +223 -228
  18. data/assets/javascripts/bootstrap/tab.js +251 -166
  19. data/assets/javascripts/bootstrap/toast.js +147 -149
  20. data/assets/javascripts/bootstrap/tooltip.js +434 -646
  21. data/assets/javascripts/bootstrap/util/backdrop.js +165 -0
  22. data/assets/javascripts/bootstrap/util/component-functions.js +46 -0
  23. data/assets/javascripts/bootstrap/util/config.js +79 -0
  24. data/assets/javascripts/bootstrap/util/focustrap.js +129 -0
  25. data/assets/javascripts/bootstrap/util/index.js +350 -0
  26. data/assets/javascripts/bootstrap/util/sanitizer.js +122 -0
  27. data/assets/javascripts/bootstrap/util/scrollbar.js +138 -0
  28. data/assets/javascripts/bootstrap/util/swipe.js +155 -0
  29. data/assets/javascripts/bootstrap/util/template-factory.js +177 -0
  30. data/assets/javascripts/bootstrap-global-this-define.js +6 -0
  31. data/assets/javascripts/bootstrap-global-this-undefine.js +2 -0
  32. data/assets/javascripts/bootstrap-sprockets.js +24 -8
  33. data/assets/javascripts/bootstrap.js +4037 -3206
  34. data/assets/javascripts/bootstrap.min.js +3 -3
  35. data/assets/stylesheets/_bootstrap-grid.scss +56 -21
  36. data/assets/stylesheets/_bootstrap-reboot.scss +4 -7
  37. data/assets/stylesheets/_bootstrap.scss +20 -13
  38. data/assets/stylesheets/bootstrap/_accordion.scss +149 -0
  39. data/assets/stylesheets/bootstrap/_alert.scss +33 -14
  40. data/assets/stylesheets/bootstrap/_badge.scss +15 -31
  41. data/assets/stylesheets/bootstrap/_breadcrumb.scss +23 -27
  42. data/assets/stylesheets/bootstrap/_button-group.scss +25 -46
  43. data/assets/stylesheets/bootstrap/_buttons.scss +136 -71
  44. data/assets/stylesheets/bootstrap/_card.scss +61 -113
  45. data/assets/stylesheets/bootstrap/_carousel.scss +64 -35
  46. data/assets/stylesheets/bootstrap/_close.scss +30 -30
  47. data/assets/stylesheets/bootstrap/_containers.scss +41 -0
  48. data/assets/stylesheets/bootstrap/_dropdown.scss +128 -71
  49. data/assets/stylesheets/bootstrap/_forms.scss +9 -347
  50. data/assets/stylesheets/bootstrap/_functions.scss +181 -23
  51. data/assets/stylesheets/bootstrap/_grid.scss +13 -53
  52. data/assets/stylesheets/bootstrap/_helpers.scss +10 -0
  53. data/assets/stylesheets/bootstrap/_images.scss +1 -1
  54. data/assets/stylesheets/bootstrap/_list-group.scss +72 -34
  55. data/assets/stylesheets/bootstrap/_maps.scss +54 -0
  56. data/assets/stylesheets/bootstrap/_mixins.scss +9 -13
  57. data/assets/stylesheets/bootstrap/_modal.scss +107 -110
  58. data/assets/stylesheets/bootstrap/_nav.scss +72 -23
  59. data/assets/stylesheets/bootstrap/_navbar.scss +127 -173
  60. data/assets/stylesheets/bootstrap/_offcanvas.scss +144 -0
  61. data/assets/stylesheets/bootstrap/_pagination.scss +72 -37
  62. data/assets/stylesheets/bootstrap/_placeholders.scss +51 -0
  63. data/assets/stylesheets/bootstrap/_popover.scss +99 -73
  64. data/assets/stylesheets/bootstrap/_progress.scss +26 -14
  65. data/assets/stylesheets/bootstrap/_reboot.scss +326 -200
  66. data/assets/stylesheets/bootstrap/_root.scss +62 -9
  67. data/assets/stylesheets/bootstrap/_spinners.scss +51 -22
  68. data/assets/stylesheets/bootstrap/_tables.scss +94 -115
  69. data/assets/stylesheets/bootstrap/_toasts.scss +54 -27
  70. data/assets/stylesheets/bootstrap/_tooltip.scss +68 -63
  71. data/assets/stylesheets/bootstrap/_transitions.scss +8 -1
  72. data/assets/stylesheets/bootstrap/_type.scss +40 -59
  73. data/assets/stylesheets/bootstrap/_utilities.scss +647 -18
  74. data/assets/stylesheets/bootstrap/_variables.scss +1018 -526
  75. data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +18 -0
  76. data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +75 -0
  77. data/assets/stylesheets/bootstrap/forms/_form-check.scss +175 -0
  78. data/assets/stylesheets/bootstrap/forms/_form-control.scss +194 -0
  79. data/assets/stylesheets/bootstrap/forms/_form-range.scss +91 -0
  80. data/assets/stylesheets/bootstrap/forms/_form-select.scss +71 -0
  81. data/assets/stylesheets/bootstrap/forms/_form-text.scss +11 -0
  82. data/assets/stylesheets/bootstrap/forms/_input-group.scss +132 -0
  83. data/assets/stylesheets/bootstrap/forms/_labels.scss +36 -0
  84. data/assets/stylesheets/bootstrap/forms/_validation.scss +12 -0
  85. data/assets/stylesheets/bootstrap/helpers/_color-bg.scss +10 -0
  86. data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +12 -0
  87. data/assets/stylesheets/bootstrap/helpers/_position.scss +36 -0
  88. data/assets/stylesheets/bootstrap/helpers/_ratio.scss +26 -0
  89. data/assets/stylesheets/bootstrap/helpers/_stacks.scss +15 -0
  90. data/assets/stylesheets/bootstrap/helpers/_stretched-link.scss +15 -0
  91. data/assets/stylesheets/bootstrap/helpers/_text-truncation.scss +7 -0
  92. data/assets/stylesheets/bootstrap/helpers/_visually-hidden.scss +8 -0
  93. data/assets/stylesheets/bootstrap/helpers/_vr.scss +8 -0
  94. data/assets/stylesheets/bootstrap/mixins/_alert.scss +8 -6
  95. data/assets/stylesheets/bootstrap/mixins/_backdrop.scss +14 -0
  96. data/assets/stylesheets/bootstrap/mixins/_banner.scss +9 -0
  97. data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +10 -8
  98. data/assets/stylesheets/bootstrap/mixins/_box-shadow.scss +7 -9
  99. data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +20 -16
  100. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +60 -100
  101. data/assets/stylesheets/bootstrap/mixins/_caret.scss +10 -8
  102. data/assets/stylesheets/bootstrap/mixins/_clearfix.scss +2 -0
  103. data/assets/stylesheets/bootstrap/mixins/_color-scheme.scss +7 -0
  104. data/assets/stylesheets/bootstrap/mixins/_container.scss +11 -0
  105. data/assets/stylesheets/bootstrap/mixins/_forms.scss +48 -74
  106. data/assets/stylesheets/bootstrap/mixins/_gradients.scss +13 -11
  107. data/assets/stylesheets/bootstrap/mixins/_grid.scss +119 -37
  108. data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -21
  109. data/assets/stylesheets/bootstrap/mixins/_list-group.scss +5 -2
  110. data/assets/stylesheets/bootstrap/mixins/_lists.scss +1 -1
  111. data/assets/stylesheets/bootstrap/mixins/_pagination.scss +7 -19
  112. data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +3 -3
  113. data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +24 -0
  114. data/assets/stylesheets/bootstrap/mixins/_transition.scss +1 -1
  115. data/assets/stylesheets/bootstrap/mixins/_utilities.scss +97 -0
  116. data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +29 -0
  117. data/assets/stylesheets/bootstrap/utilities/_api.scss +47 -0
  118. data/assets/stylesheets/bootstrap/vendor/_rfs.scss +278 -128
  119. data/bootstrap.gemspec +3 -5
  120. data/lib/bootstrap/version.rb +2 -2
  121. data/tasks/updater/js.rb +31 -7
  122. data/tasks/updater/network.rb +9 -3
  123. data/tasks/updater.rb +2 -2
  124. data/test/dummy_rails/app/assets/javascripts/application.js +4 -3
  125. data/test/dummy_rails/app/views/layouts/application.html.erb +3 -1
  126. data/test/dummy_rails/app/views/pages/root.html +89 -0
  127. data/test/dummy_rails/config/application.rb +0 -3
  128. data/test/gemfiles/rails_5_2.gemfile +8 -0
  129. data/test/gemfiles/rails_6_1.gemfile +7 -0
  130. data/test/gemfiles/rails_7_0.gemfile +7 -0
  131. data/test/test_helper.rb +3 -2
  132. metadata +70 -78
  133. data/.travis.yml +0 -31
  134. data/assets/javascripts/bootstrap/util.js +0 -192
  135. data/assets/stylesheets/bootstrap/_code.scss +0 -48
  136. data/assets/stylesheets/bootstrap/_custom-forms.scss +0 -524
  137. data/assets/stylesheets/bootstrap/_input-group.scss +0 -192
  138. data/assets/stylesheets/bootstrap/_jumbotron.scss +0 -17
  139. data/assets/stylesheets/bootstrap/_media.scss +0 -8
  140. data/assets/stylesheets/bootstrap/_print.scss +0 -141
  141. data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +0 -23
  142. data/assets/stylesheets/bootstrap/mixins/_badge.scss +0 -17
  143. data/assets/stylesheets/bootstrap/mixins/_float.scss +0 -14
  144. data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +0 -80
  145. data/assets/stylesheets/bootstrap/mixins/_hover.scss +0 -37
  146. data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +0 -11
  147. data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +0 -34
  148. data/assets/stylesheets/bootstrap/mixins/_size.scss +0 -7
  149. data/assets/stylesheets/bootstrap/mixins/_table-row.scss +0 -39
  150. data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +0 -17
  151. data/assets/stylesheets/bootstrap/mixins/_text-hide.scss +0 -11
  152. data/assets/stylesheets/bootstrap/mixins/_visibility.scss +0 -8
  153. data/assets/stylesheets/bootstrap/utilities/_align.scss +0 -8
  154. data/assets/stylesheets/bootstrap/utilities/_background.scss +0 -19
  155. data/assets/stylesheets/bootstrap/utilities/_borders.scss +0 -75
  156. data/assets/stylesheets/bootstrap/utilities/_display.scss +0 -26
  157. data/assets/stylesheets/bootstrap/utilities/_embed.scss +0 -39
  158. data/assets/stylesheets/bootstrap/utilities/_flex.scss +0 -51
  159. data/assets/stylesheets/bootstrap/utilities/_float.scss +0 -11
  160. data/assets/stylesheets/bootstrap/utilities/_interactions.scss +0 -5
  161. data/assets/stylesheets/bootstrap/utilities/_overflow.scss +0 -5
  162. data/assets/stylesheets/bootstrap/utilities/_position.scss +0 -32
  163. data/assets/stylesheets/bootstrap/utilities/_screenreaders.scss +0 -11
  164. data/assets/stylesheets/bootstrap/utilities/_shadows.scss +0 -6
  165. data/assets/stylesheets/bootstrap/utilities/_sizing.scss +0 -20
  166. data/assets/stylesheets/bootstrap/utilities/_spacing.scss +0 -73
  167. data/assets/stylesheets/bootstrap/utilities/_stretched-link.scss +0 -19
  168. data/assets/stylesheets/bootstrap/utilities/_text.scss +0 -72
  169. data/assets/stylesheets/bootstrap/utilities/_visibility.scss +0 -13
  170. data/test/dummy_rails/app/views/pages/root.html.slim +0 -58
  171. /data/assets/stylesheets/bootstrap/{utilities → helpers}/_clearfix.scss +0 -0
@@ -1,24 +1,39 @@
1
1
  // Base class
2
2
  .tooltip {
3
- position: absolute;
4
- z-index: $zindex-tooltip;
3
+ // scss-docs-start tooltip-css-vars
4
+ --#{$prefix}tooltip-zindex: #{$zindex-tooltip};
5
+ --#{$prefix}tooltip-max-width: #{$tooltip-max-width};
6
+ --#{$prefix}tooltip-padding-x: #{$tooltip-padding-x};
7
+ --#{$prefix}tooltip-padding-y: #{$tooltip-padding-y};
8
+ --#{$prefix}tooltip-margin: #{$tooltip-margin};
9
+ @include rfs($tooltip-font-size, --#{$prefix}tooltip-font-size);
10
+ --#{$prefix}tooltip-color: #{$tooltip-color};
11
+ --#{$prefix}tooltip-bg: #{$tooltip-bg};
12
+ --#{$prefix}tooltip-border-radius: #{$tooltip-border-radius};
13
+ --#{$prefix}tooltip-opacity: #{$tooltip-opacity};
14
+ --#{$prefix}tooltip-arrow-width: #{$tooltip-arrow-width};
15
+ --#{$prefix}tooltip-arrow-height: #{$tooltip-arrow-height};
16
+ // scss-docs-end tooltip-css-vars
17
+
18
+ z-index: var(--#{$prefix}tooltip-zindex);
5
19
  display: block;
6
- margin: $tooltip-margin;
20
+ padding: var(--#{$prefix}tooltip-arrow-height);
21
+ margin: var(--#{$prefix}tooltip-margin);
22
+ @include deprecate("`$tooltip-margin`", "v5", "v5.x", true);
7
23
  // Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.
8
24
  // So reset our font and text properties to avoid inheriting weird values.
9
25
  @include reset-text();
10
- @include font-size($tooltip-font-size);
26
+ @include font-size(var(--#{$prefix}tooltip-font-size));
11
27
  // Allow breaking very long words so they don't overflow the tooltip's bounds
12
28
  word-wrap: break-word;
13
29
  opacity: 0;
14
30
 
15
- &.show { opacity: $tooltip-opacity; }
31
+ &.show { opacity: var(--#{$prefix}tooltip-opacity); }
16
32
 
17
- .arrow {
18
- position: absolute;
33
+ .tooltip-arrow {
19
34
  display: block;
20
- width: $tooltip-arrow-width;
21
- height: $tooltip-arrow-height;
35
+ width: var(--#{$prefix}tooltip-arrow-width);
36
+ height: var(--#{$prefix}tooltip-arrow-height);
22
37
 
23
38
  &::before {
24
39
  position: absolute;
@@ -29,87 +44,77 @@
29
44
  }
30
45
  }
31
46
 
32
- .bs-tooltip-top {
33
- padding: $tooltip-arrow-height 0;
47
+ .bs-tooltip-top .tooltip-arrow {
48
+ bottom: 0;
34
49
 
35
- .arrow {
36
- bottom: 0;
37
-
38
- &::before {
39
- top: 0;
40
- border-width: $tooltip-arrow-height ($tooltip-arrow-width / 2) 0;
41
- border-top-color: $tooltip-arrow-color;
42
- }
50
+ &::before {
51
+ top: -1px;
52
+ border-width: var(--#{$prefix}tooltip-arrow-height) calc(var(--#{$prefix}tooltip-arrow-width) * .5) 0; // stylelint-disable-line function-disallowed-list
53
+ border-top-color: var(--#{$prefix}tooltip-bg);
43
54
  }
44
55
  }
45
56
 
46
- .bs-tooltip-right {
47
- padding: 0 $tooltip-arrow-height;
57
+ /* rtl:begin:ignore */
58
+ .bs-tooltip-end .tooltip-arrow {
59
+ left: 0;
60
+ width: var(--#{$prefix}tooltip-arrow-height);
61
+ height: var(--#{$prefix}tooltip-arrow-width);
48
62
 
49
- .arrow {
50
- left: 0;
51
- width: $tooltip-arrow-height;
52
- height: $tooltip-arrow-width;
53
-
54
- &::before {
55
- right: 0;
56
- border-width: ($tooltip-arrow-width / 2) $tooltip-arrow-height ($tooltip-arrow-width / 2) 0;
57
- border-right-color: $tooltip-arrow-color;
58
- }
63
+ &::before {
64
+ right: -1px;
65
+ border-width: calc(var(--#{$prefix}tooltip-arrow-width) * .5) var(--#{$prefix}tooltip-arrow-height) calc(var(--#{$prefix}tooltip-arrow-width) * .5) 0; // stylelint-disable-line function-disallowed-list
66
+ border-right-color: var(--#{$prefix}tooltip-bg);
59
67
  }
60
68
  }
61
69
 
62
- .bs-tooltip-bottom {
63
- padding: $tooltip-arrow-height 0;
70
+ /* rtl:end:ignore */
64
71
 
65
- .arrow {
66
- top: 0;
72
+ .bs-tooltip-bottom .tooltip-arrow {
73
+ top: 0;
67
74
 
68
- &::before {
69
- bottom: 0;
70
- border-width: 0 ($tooltip-arrow-width / 2) $tooltip-arrow-height;
71
- border-bottom-color: $tooltip-arrow-color;
72
- }
75
+ &::before {
76
+ bottom: -1px;
77
+ border-width: 0 calc(var(--#{$prefix}tooltip-arrow-width) * .5) var(--#{$prefix}tooltip-arrow-height); // stylelint-disable-line function-disallowed-list
78
+ border-bottom-color: var(--#{$prefix}tooltip-bg);
73
79
  }
74
80
  }
75
81
 
76
- .bs-tooltip-left {
77
- padding: 0 $tooltip-arrow-height;
78
-
79
- .arrow {
80
- right: 0;
81
- width: $tooltip-arrow-height;
82
- height: $tooltip-arrow-width;
82
+ /* rtl:begin:ignore */
83
+ .bs-tooltip-start .tooltip-arrow {
84
+ right: 0;
85
+ width: var(--#{$prefix}tooltip-arrow-height);
86
+ height: var(--#{$prefix}tooltip-arrow-width);
83
87
 
84
- &::before {
85
- left: 0;
86
- border-width: ($tooltip-arrow-width / 2) 0 ($tooltip-arrow-width / 2) $tooltip-arrow-height;
87
- border-left-color: $tooltip-arrow-color;
88
- }
88
+ &::before {
89
+ left: -1px;
90
+ border-width: calc(var(--#{$prefix}tooltip-arrow-width) * .5) 0 calc(var(--#{$prefix}tooltip-arrow-width) * .5) var(--#{$prefix}tooltip-arrow-height); // stylelint-disable-line function-disallowed-list
91
+ border-left-color: var(--#{$prefix}tooltip-bg);
89
92
  }
90
93
  }
91
94
 
95
+ /* rtl:end:ignore */
96
+
92
97
  .bs-tooltip-auto {
93
- &[x-placement^="top"] {
98
+ &[data-popper-placement^="top"] {
94
99
  @extend .bs-tooltip-top;
95
100
  }
96
- &[x-placement^="right"] {
97
- @extend .bs-tooltip-right;
101
+ &[data-popper-placement^="right"] {
102
+ @extend .bs-tooltip-end;
98
103
  }
99
- &[x-placement^="bottom"] {
104
+ &[data-popper-placement^="bottom"] {
100
105
  @extend .bs-tooltip-bottom;
101
106
  }
102
- &[x-placement^="left"] {
103
- @extend .bs-tooltip-left;
107
+ &[data-popper-placement^="left"] {
108
+ @extend .bs-tooltip-start;
104
109
  }
105
110
  }
106
111
 
107
112
  // Wrapper for the tooltip content
108
113
  .tooltip-inner {
109
- max-width: $tooltip-max-width;
110
- padding: $tooltip-padding-y $tooltip-padding-x;
111
- color: $tooltip-color;
114
+ max-width: var(--#{$prefix}tooltip-max-width);
115
+ padding: var(--#{$prefix}tooltip-padding-y) var(--#{$prefix}tooltip-padding-x);
116
+ color: var(--#{$prefix}tooltip-color);
112
117
  text-align: center;
113
- background-color: $tooltip-bg;
114
- @include border-radius($tooltip-border-radius);
118
+ background-color: var(--#{$prefix}tooltip-bg);
119
+ @include border-radius(var(--#{$prefix}tooltip-border-radius));
115
120
  }
@@ -6,6 +6,7 @@
6
6
  }
7
7
  }
8
8
 
9
+ // scss-docs-start collapse-classes
9
10
  .collapse {
10
11
  &:not(.show) {
11
12
  display: none;
@@ -13,8 +14,14 @@
13
14
  }
14
15
 
15
16
  .collapsing {
16
- position: relative;
17
17
  height: 0;
18
18
  overflow: hidden;
19
19
  @include transition($transition-collapse);
20
+
21
+ &.collapse-horizontal {
22
+ width: 0;
23
+ height: auto;
24
+ @include transition($transition-collapse-width);
25
+ }
20
26
  }
27
+ // scss-docs-end collapse-classes
@@ -1,82 +1,58 @@
1
- // stylelint-disable declaration-no-important, selector-list-comma-newline-after
2
-
3
1
  //
4
2
  // Headings
5
3
  //
6
-
7
- h1, h2, h3, h4, h5, h6,
8
- .h1, .h2, .h3, .h4, .h5, .h6 {
9
- margin-bottom: $headings-margin-bottom;
10
- font-family: $headings-font-family;
11
- font-weight: $headings-font-weight;
12
- line-height: $headings-line-height;
13
- color: $headings-color;
4
+ .h1 {
5
+ @extend h1;
14
6
  }
15
7
 
16
- h1, .h1 { @include font-size($h1-font-size); }
17
- h2, .h2 { @include font-size($h2-font-size); }
18
- h3, .h3 { @include font-size($h3-font-size); }
19
- h4, .h4 { @include font-size($h4-font-size); }
20
- h5, .h5 { @include font-size($h5-font-size); }
21
- h6, .h6 { @include font-size($h6-font-size); }
22
-
23
- .lead {
24
- @include font-size($lead-font-size);
25
- font-weight: $lead-font-weight;
8
+ .h2 {
9
+ @extend h2;
26
10
  }
27
11
 
28
- // Type display classes
29
- .display-1 {
30
- @include font-size($display1-size);
31
- font-weight: $display1-weight;
32
- line-height: $display-line-height;
12
+ .h3 {
13
+ @extend h3;
33
14
  }
34
- .display-2 {
35
- @include font-size($display2-size);
36
- font-weight: $display2-weight;
37
- line-height: $display-line-height;
15
+
16
+ .h4 {
17
+ @extend h4;
38
18
  }
39
- .display-3 {
40
- @include font-size($display3-size);
41
- font-weight: $display3-weight;
42
- line-height: $display-line-height;
19
+
20
+ .h5 {
21
+ @extend h5;
43
22
  }
44
- .display-4 {
45
- @include font-size($display4-size);
46
- font-weight: $display4-weight;
47
- line-height: $display-line-height;
23
+
24
+ .h6 {
25
+ @extend h6;
48
26
  }
49
27
 
50
28
 
51
- //
52
- // Horizontal rules
53
- //
54
-
55
- hr {
56
- margin-top: $hr-margin-y;
57
- margin-bottom: $hr-margin-y;
58
- border: 0;
59
- border-top: $hr-border-width solid $hr-border-color;
29
+ .lead {
30
+ @include font-size($lead-font-size);
31
+ font-weight: $lead-font-weight;
60
32
  }
61
33
 
34
+ // Type display classes
35
+ @each $display, $font-size in $display-font-sizes {
36
+ .display-#{$display} {
37
+ @include font-size($font-size);
38
+ font-family: $display-font-family;
39
+ font-style: $display-font-style;
40
+ font-weight: $display-font-weight;
41
+ line-height: $display-line-height;
42
+ }
43
+ }
62
44
 
63
45
  //
64
46
  // Emphasis
65
47
  //
66
-
67
- small,
68
48
  .small {
69
- @include font-size($small-font-size);
70
- font-weight: $font-weight-normal;
49
+ @extend small;
71
50
  }
72
51
 
73
- mark,
74
52
  .mark {
75
- padding: $mark-padding;
76
- background-color: $mark-bg;
53
+ @extend mark;
77
54
  }
78
55
 
79
-
80
56
  //
81
57
  // Lists
82
58
  //
@@ -104,20 +80,25 @@ mark,
104
80
 
105
81
  // Builds on `abbr`
106
82
  .initialism {
107
- @include font-size(90%);
83
+ @include font-size($initialism-font-size);
108
84
  text-transform: uppercase;
109
85
  }
110
86
 
111
87
  // Blockquotes
112
88
  .blockquote {
113
- margin-bottom: $spacer;
89
+ margin-bottom: $blockquote-margin-y;
114
90
  @include font-size($blockquote-font-size);
91
+
92
+ > :last-child {
93
+ margin-bottom: 0;
94
+ }
115
95
  }
116
96
 
117
97
  .blockquote-footer {
118
- display: block;
119
- @include font-size($blockquote-small-font-size);
120
- color: $blockquote-small-color;
98
+ margin-top: -$blockquote-margin-y;
99
+ margin-bottom: $blockquote-margin-y;
100
+ @include font-size($blockquote-footer-font-size);
101
+ color: $blockquote-footer-color;
121
102
 
122
103
  &::before {
123
104
  content: "\2014\00A0"; // em dash, nbsp