annotate default/assets/scss/vendors/bootstrap/_reboot.scss @ 0:1d038bc9b3d2 default tip

Up:default
author Liny <dev@neowd.com>
date Sat, 31 May 2025 09:21:51 +0800
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
1 // scss-lint:disable QualifyingElement, DuplicateProperty, VendorPrefix
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
2
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
3 // Reboot
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
4 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
5 // Normalization of HTML elements, manually forked from Normalize.css to remove
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
6 // styles targeting irrelevant browsers while applying new styles.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
7 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
8 // Normalize is licensed MIT. https://github.com/necolas/normalize.css
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
9
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
10
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
11 // Document
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
12 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
13 // 1. Change from `box-sizing: content-box` so that `width` is not affected by `padding` or `border`.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
14 // 2. Change the default font family in all browsers.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
15 // 3. Correct the line height in all browsers.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
16 // 4. Prevent adjustments of font size after orientation changes in IE on Windows Phone and in iOS.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
17 // 5. Setting @viewport causes scrollbars to overlap content in IE11 and Edge, so
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
18 // we force a non-overlapping, non-auto-hiding scrollbar to counteract.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
19 // 6. Change the default tap highlight to be completely transparent in iOS.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
20
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
21 html {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
22 box-sizing: border-box; // 1
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
23 font-family: sans-serif; // 2
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
24 line-height: 1.15; // 3
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
25 -webkit-text-size-adjust: 100%; // 4
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
26 -ms-text-size-adjust: 100%; // 4
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
27 -ms-overflow-style: scrollbar; // 5
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
28 -webkit-tap-highlight-color: rgba(0,0,0,0); // 6
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
29 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
30
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
31 *,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
32 *::before,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
33 *::after {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
34 box-sizing: inherit; // 1
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
35 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
36
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
37 // IE10+ doesn't honor `<meta name="viewport">` in some cases.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
38 @at-root {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
39 @-ms-viewport { width: device-width; }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
40 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
41
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
42 // Shim for "new" HTML5 structural elements to display correctly (IE10, older browsers)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
43 article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
44 display: block;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
45 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
46
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
47 // Body
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
48 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
49 // 1. Remove the margin in all browsers.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
50 // 2. As a best practice, apply a default `background-color`.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
51
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
52 body {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
53 margin: 0; // 1
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
54 font-family: $font-family-base;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
55 font-size: $font-size-base;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
56 font-weight: $font-weight-base;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
57 line-height: $line-height-base;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
58 color: $body-color;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
59 background-color: $body-bg; // 2
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
60 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
61
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
62 // Suppress the focus outline on elements that cannot be accessed via keyboard.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
63 // This prevents an unwanted focus outline from appearing around elements that
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
64 // might still respond to pointer events.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
65 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
66 // Credit: https://github.com/suitcss/base
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
67 [tabindex="-1"]:focus {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
68 outline: none !important;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
69 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
70
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
71
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
72 // Content grouping
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
73 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
74 // 1. Add the correct box sizing in Firefox.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
75 // 2. Show the overflow in Edge and IE.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
76
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
77 hr {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
78 box-sizing: content-box; // 1
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
79 height: 0; // 1
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
80 overflow: visible; // 2
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
81 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
82
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
83
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
84 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
85 // Typography
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
86 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
87
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
88 // Remove top margins from headings
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
89 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
90 // By default, `<h1>`-`<h6>` all receive top and bottom margins. We nuke the top
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
91 // margin for easier control within type scales as it avoids margin collapsing.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
92 h1, h2, h3, h4, h5, h6 {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
93 margin-top: 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
94 margin-bottom: .5rem;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
95 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
96
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
97 // Reset margins on paragraphs
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
98 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
99 // Similarly, the top margin on `<p>`s get reset. However, we also reset the
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
100 // bottom margin to use `rem` units instead of `em`.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
101 p {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
102 margin-top: 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
103 margin-bottom: 1rem;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
104 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
105
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
106 // Abbreviations
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
107 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
108 // 1. Remove the bottom border in Firefox 39-.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
109 // 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
110 // 3. Add explicit cursor to indicate changed behavior.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
111 // 4. Duplicate behavior to the data-* attribute for our tooltip plugin
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
112
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
113 abbr[title],
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
114 abbr[data-original-title] { // 4
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
115 text-decoration: underline; // 2
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
116 text-decoration: underline dotted; // 2
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
117 cursor: help; // 3
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
118 border-bottom: 0; // 1
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
119 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
120
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
121 address {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
122 margin-bottom: 1rem;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
123 font-style: normal;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
124 line-height: inherit;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
125 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
126
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
127 ol,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
128 ul,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
129 dl {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
130 margin-top: 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
131 margin-bottom: 1rem;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
132 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
133
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
134 ol ol,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
135 ul ul,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
136 ol ul,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
137 ul ol {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
138 margin-bottom: 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
139 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
140
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
141 dt {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
142 font-weight: $dt-font-weight;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
143 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
144
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
145 dd {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
146 margin-bottom: .5rem;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
147 margin-left: 0; // Undo browser default
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
148 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
149
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
150 blockquote {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
151 margin: 0 0 1rem;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
152 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
153
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
154 dfn {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
155 font-style: italic; // Add the correct font style in Android 4.3-
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
156 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
157
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
158 b,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
159 strong {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
160 font-weight: bolder; // Add the correct font weight in Chrome, Edge, and Safari
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
161 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
162
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
163 small {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
164 font-size: 80%; // Add the correct font size in all browsers
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
165 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
166
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
167 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
168 // Prevent `sub` and `sup` elements from affecting the line height in
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
169 // all browsers.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
170 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
171
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
172 sub,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
173 sup {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
174 position: relative;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
175 font-size: 75%;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
176 line-height: 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
177 vertical-align: baseline;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
178 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
179
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
180 sub { bottom: -.25em; }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
181 sup { top: -.5em; }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
182
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
183
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
184 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
185 // Links
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
186 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
187
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
188 a {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
189 color: $link-color;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
190 text-decoration: $link-decoration;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
191 background-color: transparent; // Remove the gray background on active links in IE 10.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
192 -webkit-text-decoration-skip: objects; // Remove gaps in links underline in iOS 8+ and Safari 8+.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
193
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
194 @include hover {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
195 color: $link-hover-color;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
196 text-decoration: $link-hover-decoration;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
197 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
198 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
199
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
200 // And undo these styles for placeholder links/named anchors (without href)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
201 // which have not been made explicitly keyboard-focusable (without tabindex).
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
202 // It would be more straightforward to just use a[href] in previous block, but that
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
203 // causes specificity issues in many other styles that are too complex to fix.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
204 // See https://github.com/twbs/bootstrap/issues/19402
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
205
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
206 a:not([href]):not([tabindex]) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
207 color: inherit;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
208 text-decoration: none;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
209
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
210 @include hover-focus {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
211 color: inherit;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
212 text-decoration: none;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
213 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
214
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
215 &:focus {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
216 outline: 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
217 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
218 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
219
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
220
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
221 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
222 // Code
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
223 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
224
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
225 pre,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
226 code,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
227 kbd,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
228 samp {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
229 font-family: monospace, monospace; // Correct the inheritance and scaling of font size in all browsers.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
230 font-size: 1em; // Correct the odd `em` font sizing in all browsers.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
231 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
232
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
233 pre {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
234 // Remove browser default top margin
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
235 margin-top: 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
236 // Reset browser default of `1em` to use `rem`s
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
237 margin-bottom: 1rem;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
238 // Don't allow content to break outside
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
239 overflow: auto;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
240 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
241
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
242
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
243 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
244 // Figures
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
245 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
246
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
247 figure {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
248 // Apply a consistent margin strategy (matches our type styles).
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
249 margin: 0 0 1rem;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
250 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
251
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
252
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
253 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
254 // Images and content
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
255 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
256
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
257 img {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
258 vertical-align: middle;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
259 border-style: none; // Remove the border on images inside links in IE 10-.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
260 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
261
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
262 svg:not(:root) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
263 overflow: hidden; // Hide the overflow in IE
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
264 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
265
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
266
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
267 // Avoid 300ms click delay on touch devices that support the `touch-action` CSS property.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
268 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
269 // In particular, unlike most other browsers, IE11+Edge on Windows 10 on touch devices and IE Mobile 10-11
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
270 // DON'T remove the click delay when `<meta name="viewport" content="width=device-width">` is present.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
271 // However, they DO support removing the click delay via `touch-action: manipulation`.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
272 // See:
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
273 // * https://v4-alpha.getbootstrap.com/content/reboot/#click-delay-optimization-for-touch
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
274 // * http://caniuse.com/#feat=css-touch-action
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
275 // * https://patrickhlauke.github.io/touch/tests/results/#suppressing-300ms-delay
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
276
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
277 a,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
278 area,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
279 button,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
280 [role="button"],
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
281 input,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
282 label,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
283 select,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
284 summary,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
285 textarea {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
286 touch-action: manipulation;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
287 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
288
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
289
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
290 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
291 // Tables
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
292 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
293
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
294 table {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
295 border-collapse: collapse; // Prevent double borders
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
296 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
297
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
298 caption {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
299 padding-top: $table-cell-padding;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
300 padding-bottom: $table-cell-padding;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
301 color: $text-muted;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
302 text-align: left;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
303 caption-side: bottom;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
304 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
305
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
306 th {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
307 // Matches default `<td>` alignment
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
308 text-align: left;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
309 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
310
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
311
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
312 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
313 // Forms
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
314 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
315
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
316 label {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
317 // Allow labels to use `margin` for spacing.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
318 display: inline-block;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
319 margin-bottom: .5rem;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
320 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
321
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
322 // Work around a Firefox/IE bug where the transparent `button` background
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
323 // results in a loss of the default `button` focus styles.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
324 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
325 // Credit: https://github.com/suitcss/base/
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
326 button:focus {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
327 outline: 1px dotted;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
328 outline: 5px auto -webkit-focus-ring-color;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
329 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
330
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
331 input,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
332 button,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
333 select,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
334 optgroup,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
335 textarea {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
336 margin: 0; // Remove the margin in Firefox and Safari
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
337 font-family: inherit;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
338 font-size: inherit;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
339 line-height: inherit;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
340 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
341
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
342 button,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
343 input {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
344 overflow: visible; // Show the overflow in Edge
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
345 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
346
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
347 button,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
348 select {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
349 text-transform: none; // Remove the inheritance of text transform in Firefox
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
350 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
351
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
352 // 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
353 // controls in Android 4.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
354 // 2. Correct the inability to style clickable types in iOS and Safari.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
355 button,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
356 html [type="button"], // 1
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
357 [type="reset"],
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
358 [type="submit"] {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
359 -webkit-appearance: button; // 2
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
360 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
361
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
362 // Remove inner border and padding from Firefox, but don't restore the outline like Normalize.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
363 button::-moz-focus-inner,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
364 [type="button"]::-moz-focus-inner,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
365 [type="reset"]::-moz-focus-inner,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
366 [type="submit"]::-moz-focus-inner {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
367 padding: 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
368 border-style: none;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
369 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
370
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
371 input[type="radio"],
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
372 input[type="checkbox"] {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
373 box-sizing: border-box; // 1. Add the correct box sizing in IE 10-
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
374 padding: 0; // 2. Remove the padding in IE 10-
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
375 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
376
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
377
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
378 input[type="date"],
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
379 input[type="time"],
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
380 input[type="datetime-local"],
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
381 input[type="month"] {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
382 // Remove the default appearance of temporal inputs to avoid a Mobile Safari
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
383 // bug where setting a custom line-height prevents text from being vertically
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
384 // centered within the input.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
385 // See https://bugs.webkit.org/show_bug.cgi?id=139848
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
386 // and https://github.com/twbs/bootstrap/issues/11266
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
387 -webkit-appearance: listbox;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
388 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
389
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
390 textarea {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
391 overflow: auto; // Remove the default vertical scrollbar in IE.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
392 // Textareas should really only resize vertically so they don't break their (horizontal) containers.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
393 resize: vertical;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
394 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
395
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
396 fieldset {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
397 // Browsers set a default `min-width: min-content;` on fieldsets,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
398 // unlike e.g. `<div>`s, which have `min-width: 0;` by default.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
399 // So we reset that to ensure fieldsets behave more like a standard block element.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
400 // See https://github.com/twbs/bootstrap/issues/12359
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
401 // and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
402 min-width: 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
403 // Reset the default outline behavior of fieldsets so they don't affect page layout.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
404 padding: 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
405 margin: 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
406 border: 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
407 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
408
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
409 // 1. Correct the text wrapping in Edge and IE.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
410 // 2. Correct the color inheritance from `fieldset` elements in IE.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
411 legend {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
412 display: block;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
413 width: 100%;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
414 max-width: 100%; // 1
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
415 padding: 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
416 margin-bottom: .5rem;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
417 font-size: 1.5rem;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
418 line-height: inherit;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
419 color: inherit; // 2
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
420 white-space: normal; // 1
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
421 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
422
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
423 progress {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
424 vertical-align: baseline; // Add the correct vertical alignment in Chrome, Firefox, and Opera.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
425 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
426
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
427 // Correct the cursor style of increment and decrement buttons in Chrome.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
428 [type="number"]::-webkit-inner-spin-button,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
429 [type="number"]::-webkit-outer-spin-button {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
430 height: auto;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
431 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
432
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
433 [type="search"] {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
434 // This overrides the extra rounded corners on search inputs in iOS so that our
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
435 // `.form-control` class can properly style them. Note that this cannot simply
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
436 // be added to `.form-control` as it's not specific enough. For details, see
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
437 // https://github.com/twbs/bootstrap/issues/11586.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
438 outline-offset: -2px; // 2. Correct the outline style in Safari.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
439 -webkit-appearance: none;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
440 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
441
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
442 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
443 // Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
444 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
445
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
446 [type="search"]::-webkit-search-cancel-button,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
447 [type="search"]::-webkit-search-decoration {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
448 -webkit-appearance: none;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
449 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
450
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
451 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
452 // 1. Correct the inability to style clickable types in iOS and Safari.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
453 // 2. Change font properties to `inherit` in Safari.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
454 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
455
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
456 ::-webkit-file-upload-button {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
457 font: inherit; // 2
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
458 -webkit-appearance: button; // 1
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
459 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
460
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
461 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
462 // Correct element displays
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
463 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
464
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
465 output {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
466 display: inline-block;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
467 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
468
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
469 summary {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
470 display: list-item; // Add the correct display in all browsers
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
471 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
472
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
473 template {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
474 display: none; // Add the correct display in IE
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
475 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
476
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
477 // Always hide an element with the `hidden` HTML attribute (from PureCSS).
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
478 // Needed for proper display in IE 10-.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
479 [hidden] {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
480 display: none !important;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
481 }