3 |
4 |
5 |
6 |
7 |
使用说明
8 |
9 |
介绍
10 |
11 |
该
12 | template 是所有带前缀
13 | mini-app 的小项目的基础模板,在做项目的时候有的时候会想总结一些插件工具的用法,这个时候就会基于这个模板写一个项目的小
14 | demo,还有的时候做面试题也会碰到一些好玩的面试题,又或者只是想记录一些好玩的
15 | js 的方法,都可以以这个
16 | template 为基础敲敲打打。
17 |
18 |
考虑到浏览器的情况,可能会需要做做
19 | ES6 转
20 | ES5,还希望用用
21 | sass
22 | (点我查看 sass 语法) 让
23 | css 写起来更舒畅一些,而且热更新的方法肯定是不能少的,每次都要
24 | F5 不是很绝望么,我就以达到上述需求为目的,进行了该脚手架的开发。
25 |
26 |
项目中有一个
27 | study 的目录,我的打算是在这个目录下存放一份当前环境下的
28 | build 的配置详解,关于如何搭建等等也会在里面写一个
29 | README.md,毕竟搭建的时候还是有一些小点需要注意的。
30 |
31 |
mini-app 大合集
32 |
33 |
39 |
40 |
我该如何开始
41 |
42 |
首先一套组合拳,将项目拉到本地,这一步我们有两种做法。
43 |
44 |
方法一(推荐)
45 |
46 |
直接点击该项目右上角的
47 | fork,在你的仓库中生成一份
48 | mini-app-template,这样你不仅可以
49 | clone 自己仓库中的
50 | mini-app-template 代码,还可以
51 | pull request,将你觉得这个项目可以完善的地方告诉我,我会及时查看并且合并的喔~笔芯
52 | *★,°*:.☆( ̄▽ ̄)/$:*.°★* 。
53 |
54 |
55 |
方法二
56 |
57 |
直接 clone 我的代码。
58 |
59 | $ git clone https://github.com/jsjzh/mini-app-template.git
60 | $ cd mini-app-template
61 | $ npm install // or yarn
62 | $ npm start // or yarn start
63 |
64 |
65 |
66 |
接着,如果我想创建一个新的 mini-app-new-app 怎么办
67 |
68 |
如果你想要以这个项目为模板,创建一个自己的
69 | mini-app 用于展示
70 |
71 |
第一步:你需要删除
72 | mini-app-template 目录下的
73 | .git
74 |
第二步:在
75 | git 上新建一个新的项目,我这里假设新建的项目名称为
76 | mini-app-new-app(第四行别忘了改
77 | jsjzh 为你自己的
78 | git 账号)
79 |
80 |
81 | $ git init
82 | $ git add .
83 | $ git commit -m "nimi-app-new-app first commit oh yeah ~"
84 | $ git remote add origin git@github.com:jsjzh/mini-app-new-app.git
85 | $ git push -u origin master
86 |
87 |
88 |
89 |
90 |
最后,你就可以在这个项目下快乐的写自己的
91 | mini-app 啦,撒花 万岁
92 | ~\(≧▽≦)/~
93 |
94 |
95 |
如果可以的话,请告诉我你的项目地址,我就可以把他们添加到我的
96 | mini-app 列表中了。
97 |
98 |
代码如人生,我甘之如饴。
99 |
100 |
完成该项目功能所需模块整理
101 |
102 |
103 | - js
104 |
105 | - ES6 转 ES5
106 |
107 | - babel-core
108 | - babel-loader
109 | - babel-preset-env
110 | - babel-preset-stage-2
111 |
112 |
113 | - 补全 ES5 没有的一些方法
114 |
115 | - babel-polyfill
116 |
117 |
118 |
119 |
120 | - html
121 |
122 | - 使用 html 模板 并自动注入打包好的 js 文件
123 |
124 | - html-webpack-plugin
125 |
126 |
127 | - 将 html 文件转为字符串
128 |
131 |
132 |
133 |
134 | - css
135 |
136 | - 处理 scss|sass|css 文件
137 |
138 | - 从JS字符串创建样式节点
139 | - style-loader
140 | - 将 css 转换为 commonJs
141 | - css-loader
142 | - 将 sass 转为 css
143 | - sass-loader
144 | - node-sass
145 | - css 补全计划
146 | - postcss-loader
147 | - autoprefixer
148 |
149 |
150 |
151 |
152 | - 热更新
153 |
154 | - webpack-dev-server
155 |
156 |
157 |
158 |
159 |
--------------------------------------------------------------------------------
/static/css/normalize.css:
--------------------------------------------------------------------------------
1 | /*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
2 |
3 | /* Document
4 | ========================================================================== */
5 |
6 | /**
7 | * 1. Correct the line height in all browsers.
8 | * 2. Prevent adjustments of font size after orientation changes in iOS.
9 | */
10 |
11 | html {
12 | line-height: 1.15; /* 1 */
13 | -webkit-text-size-adjust: 100%; /* 2 */
14 | }
15 |
16 | /* Sections
17 | ========================================================================== */
18 |
19 | /**
20 | * Remove the margin in all browsers.
21 | */
22 |
23 | body {
24 | margin: 0;
25 | }
26 |
27 | /**
28 | * Correct the font size and margin on `h1` elements within `section` and
29 | * `article` contexts in Chrome, Firefox, and Safari.
30 | */
31 |
32 | h1 {
33 | font-size: 2em;
34 | margin: 0.67em 0;
35 | }
36 |
37 | /* Grouping content
38 | ========================================================================== */
39 |
40 | /**
41 | * 1. Add the correct box sizing in Firefox.
42 | * 2. Show the overflow in Edge and IE.
43 | */
44 |
45 | hr {
46 | box-sizing: content-box; /* 1 */
47 | height: 0; /* 1 */
48 | overflow: visible; /* 2 */
49 | }
50 |
51 | /**
52 | * 1. Correct the inheritance and scaling of font size in all browsers.
53 | * 2. Correct the odd `em` font sizing in all browsers.
54 | */
55 |
56 | pre {
57 | font-family: monospace, monospace; /* 1 */
58 | font-size: 1em; /* 2 */
59 | }
60 |
61 | /* Text-level semantics
62 | ========================================================================== */
63 |
64 | /**
65 | * Remove the gray background on active links in IE 10.
66 | */
67 |
68 | a {
69 | background-color: transparent;
70 | }
71 |
72 | /**
73 | * 1. Remove the bottom border in Chrome 57-
74 | * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
75 | */
76 |
77 | abbr[title] {
78 | border-bottom: none; /* 1 */
79 | text-decoration: underline; /* 2 */
80 | text-decoration: underline dotted; /* 2 */
81 | }
82 |
83 | /**
84 | * Add the correct font weight in Chrome, Edge, and Safari.
85 | */
86 |
87 | b,
88 | strong {
89 | font-weight: bolder;
90 | }
91 |
92 | /**
93 | * 1. Correct the inheritance and scaling of font size in all browsers.
94 | * 2. Correct the odd `em` font sizing in all browsers.
95 | */
96 |
97 | code,
98 | kbd,
99 | samp {
100 | font-family: monospace, monospace; /* 1 */
101 | font-size: 1em; /* 2 */
102 | }
103 |
104 | /**
105 | * Add the correct font size in all browsers.
106 | */
107 |
108 | small {
109 | font-size: 80%;
110 | }
111 |
112 | /**
113 | * Prevent `sub` and `sup` elements from affecting the line height in
114 | * all browsers.
115 | */
116 |
117 | sub,
118 | sup {
119 | font-size: 75%;
120 | line-height: 0;
121 | position: relative;
122 | vertical-align: baseline;
123 | }
124 |
125 | sub {
126 | bottom: -0.25em;
127 | }
128 |
129 | sup {
130 | top: -0.5em;
131 | }
132 |
133 | /* Embedded content
134 | ========================================================================== */
135 |
136 | /**
137 | * Remove the border on images inside links in IE 10.
138 | */
139 |
140 | img {
141 | border-style: none;
142 | }
143 |
144 | /* Forms
145 | ========================================================================== */
146 |
147 | /**
148 | * 1. Change the font styles in all browsers.
149 | * 2. Remove the margin in Firefox and Safari.
150 | */
151 |
152 | button,
153 | input,
154 | optgroup,
155 | select,
156 | textarea {
157 | font-family: inherit; /* 1 */
158 | font-size: 100%; /* 1 */
159 | line-height: 1.15; /* 1 */
160 | margin: 0; /* 2 */
161 | }
162 |
163 | /**
164 | * Show the overflow in IE.
165 | * 1. Show the overflow in Edge.
166 | */
167 |
168 | button,
169 | input { /* 1 */
170 | overflow: visible;
171 | }
172 |
173 | /**
174 | * Remove the inheritance of text transform in Edge, Firefox, and IE.
175 | * 1. Remove the inheritance of text transform in Firefox.
176 | */
177 |
178 | button,
179 | select { /* 1 */
180 | text-transform: none;
181 | }
182 |
183 | /**
184 | * Correct the inability to style clickable types in iOS and Safari.
185 | */
186 |
187 | button,
188 | [type="button"],
189 | [type="reset"],
190 | [type="submit"] {
191 | -webkit-appearance: button;
192 | }
193 |
194 | /**
195 | * Remove the inner border and padding in Firefox.
196 | */
197 |
198 | button::-moz-focus-inner,
199 | [type="button"]::-moz-focus-inner,
200 | [type="reset"]::-moz-focus-inner,
201 | [type="submit"]::-moz-focus-inner {
202 | border-style: none;
203 | padding: 0;
204 | }
205 |
206 | /**
207 | * Restore the focus styles unset by the previous rule.
208 | */
209 |
210 | button:-moz-focusring,
211 | [type="button"]:-moz-focusring,
212 | [type="reset"]:-moz-focusring,
213 | [type="submit"]:-moz-focusring {
214 | outline: 1px dotted ButtonText;
215 | }
216 |
217 | /**
218 | * Correct the padding in Firefox.
219 | */
220 |
221 | fieldset {
222 | padding: 0.35em 0.75em 0.625em;
223 | }
224 |
225 | /**
226 | * 1. Correct the text wrapping in Edge and IE.
227 | * 2. Correct the color inheritance from `fieldset` elements in IE.
228 | * 3. Remove the padding so developers are not caught out when they zero out
229 | * `fieldset` elements in all browsers.
230 | */
231 |
232 | legend {
233 | box-sizing: border-box; /* 1 */
234 | color: inherit; /* 2 */
235 | display: table; /* 1 */
236 | max-width: 100%; /* 1 */
237 | padding: 0; /* 3 */
238 | white-space: normal; /* 1 */
239 | }
240 |
241 | /**
242 | * Add the correct vertical alignment in Chrome, Firefox, and Opera.
243 | */
244 |
245 | progress {
246 | vertical-align: baseline;
247 | }
248 |
249 | /**
250 | * Remove the default vertical scrollbar in IE 10+.
251 | */
252 |
253 | textarea {
254 | overflow: auto;
255 | }
256 |
257 | /**
258 | * 1. Add the correct box sizing in IE 10.
259 | * 2. Remove the padding in IE 10.
260 | */
261 |
262 | [type="checkbox"],
263 | [type="radio"] {
264 | box-sizing: border-box; /* 1 */
265 | padding: 0; /* 2 */
266 | }
267 |
268 | /**
269 | * Correct the cursor style of increment and decrement buttons in Chrome.
270 | */
271 |
272 | [type="number"]::-webkit-inner-spin-button,
273 | [type="number"]::-webkit-outer-spin-button {
274 | height: auto;
275 | }
276 |
277 | /**
278 | * 1. Correct the odd appearance in Chrome and Safari.
279 | * 2. Correct the outline style in Safari.
280 | */
281 |
282 | [type="search"] {
283 | -webkit-appearance: textfield; /* 1 */
284 | outline-offset: -2px; /* 2 */
285 | }
286 |
287 | /**
288 | * Remove the inner padding in Chrome and Safari on macOS.
289 | */
290 |
291 | [type="search"]::-webkit-search-decoration {
292 | -webkit-appearance: none;
293 | }
294 |
295 | /**
296 | * 1. Correct the inability to style clickable types in iOS and Safari.
297 | * 2. Change font properties to `inherit` in Safari.
298 | */
299 |
300 | ::-webkit-file-upload-button {
301 | -webkit-appearance: button; /* 1 */
302 | font: inherit; /* 2 */
303 | }
304 |
305 | /* Interactive
306 | ========================================================================== */
307 |
308 | /*
309 | * Add the correct display in Edge, IE 10+, and Firefox.
310 | */
311 |
312 | details {
313 | display: block;
314 | }
315 |
316 | /*
317 | * Add the correct display in all browsers.
318 | */
319 |
320 | summary {
321 | display: list-item;
322 | }
323 |
324 | /* Misc
325 | ========================================================================== */
326 |
327 | /**
328 | * Add the correct display in IE 10+.
329 | */
330 |
331 | template {
332 | display: none;
333 | }
334 |
335 | /**
336 | * Add the correct display in IE 10.
337 | */
338 |
339 | [hidden] {
340 | display: none;
341 | }
342 |
--------------------------------------------------------------------------------
/static/css/github-markdown.css:
--------------------------------------------------------------------------------
1 | @font-face {
2 | font-family: octicons-link;
3 | src: url(data:font/woff;charset=utf-8;base64,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) format('woff');
4 | }
5 |
6 | .markdown-body {
7 | -ms-text-size-adjust: 100%;
8 | -webkit-text-size-adjust: 100%;
9 | line-height: 1.5;
10 | color: #24292e;
11 | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
12 | font-size: 16px;
13 | line-height: 1.5;
14 | word-wrap: break-word;
15 | }
16 |
17 | .markdown-body .pl-c {
18 | color: #6a737d;
19 | }
20 |
21 | .markdown-body .pl-c1,
22 | .markdown-body .pl-s .pl-v {
23 | color: #005cc5;
24 | }
25 |
26 | .markdown-body .pl-e,
27 | .markdown-body .pl-en {
28 | color: #6f42c1;
29 | }
30 |
31 | .markdown-body .pl-smi,
32 | .markdown-body .pl-s .pl-s1 {
33 | color: #24292e;
34 | }
35 |
36 | .markdown-body .pl-ent {
37 | color: #22863a;
38 | }
39 |
40 | .markdown-body .pl-k {
41 | color: #d73a49;
42 | }
43 |
44 | .markdown-body .pl-s,
45 | .markdown-body .pl-pds,
46 | .markdown-body .pl-s .pl-pse .pl-s1,
47 | .markdown-body .pl-sr,
48 | .markdown-body .pl-sr .pl-cce,
49 | .markdown-body .pl-sr .pl-sre,
50 | .markdown-body .pl-sr .pl-sra {
51 | color: #032f62;
52 | }
53 |
54 | .markdown-body .pl-v,
55 | .markdown-body .pl-smw {
56 | color: #e36209;
57 | }
58 |
59 | .markdown-body .pl-bu {
60 | color: #b31d28;
61 | }
62 |
63 | .markdown-body .pl-ii {
64 | color: #fafbfc;
65 | background-color: #b31d28;
66 | }
67 |
68 | .markdown-body .pl-c2 {
69 | color: #fafbfc;
70 | background-color: #d73a49;
71 | }
72 |
73 | .markdown-body .pl-c2::before {
74 | content: "^M";
75 | }
76 |
77 | .markdown-body .pl-sr .pl-cce {
78 | font-weight: bold;
79 | color: #22863a;
80 | }
81 |
82 | .markdown-body .pl-ml {
83 | color: #735c0f;
84 | }
85 |
86 | .markdown-body .pl-mh,
87 | .markdown-body .pl-mh .pl-en,
88 | .markdown-body .pl-ms {
89 | font-weight: bold;
90 | color: #005cc5;
91 | }
92 |
93 | .markdown-body .pl-mi {
94 | font-style: italic;
95 | color: #24292e;
96 | }
97 |
98 | .markdown-body .pl-mb {
99 | font-weight: bold;
100 | color: #24292e;
101 | }
102 |
103 | .markdown-body .pl-md {
104 | color: #b31d28;
105 | background-color: #ffeef0;
106 | }
107 |
108 | .markdown-body .pl-mi1 {
109 | color: #22863a;
110 | background-color: #f0fff4;
111 | }
112 |
113 | .markdown-body .pl-mc {
114 | color: #e36209;
115 | background-color: #ffebda;
116 | }
117 |
118 | .markdown-body .pl-mi2 {
119 | color: #f6f8fa;
120 | background-color: #005cc5;
121 | }
122 |
123 | .markdown-body .pl-mdr {
124 | font-weight: bold;
125 | color: #6f42c1;
126 | }
127 |
128 | .markdown-body .pl-ba {
129 | color: #586069;
130 | }
131 |
132 | .markdown-body .pl-sg {
133 | color: #959da5;
134 | }
135 |
136 | .markdown-body .pl-corl {
137 | text-decoration: underline;
138 | color: #032f62;
139 | }
140 |
141 | .markdown-body .octicon {
142 | display: inline-block;
143 | vertical-align: text-top;
144 | fill: currentColor;
145 | }
146 |
147 | .markdown-body a {
148 | background-color: transparent;
149 | }
150 |
151 | .markdown-body a:active,
152 | .markdown-body a:hover {
153 | outline-width: 0;
154 | }
155 |
156 | .markdown-body strong {
157 | font-weight: inherit;
158 | }
159 |
160 | .markdown-body strong {
161 | font-weight: bolder;
162 | }
163 |
164 | .markdown-body h1 {
165 | font-size: 2em;
166 | margin: 0.67em 0;
167 | }
168 |
169 | .markdown-body img {
170 | border-style: none;
171 | }
172 |
173 | .markdown-body code,
174 | .markdown-body kbd,
175 | .markdown-body pre {
176 | font-family: monospace, monospace;
177 | font-size: 1em;
178 | }
179 |
180 | .markdown-body hr {
181 | box-sizing: content-box;
182 | height: 0;
183 | overflow: visible;
184 | }
185 |
186 | .markdown-body input {
187 | font: inherit;
188 | margin: 0;
189 | }
190 |
191 | .markdown-body input {
192 | overflow: visible;
193 | }
194 |
195 | .markdown-body [type="checkbox"] {
196 | box-sizing: border-box;
197 | padding: 0;
198 | }
199 |
200 | .markdown-body * {
201 | box-sizing: border-box;
202 | }
203 |
204 | .markdown-body input {
205 | font-family: inherit;
206 | font-size: inherit;
207 | line-height: inherit;
208 | }
209 |
210 | .markdown-body a {
211 | color: #0366d6;
212 | text-decoration: none;
213 | }
214 |
215 | .markdown-body a:hover {
216 | text-decoration: underline;
217 | }
218 |
219 | .markdown-body strong {
220 | font-weight: 600;
221 | }
222 |
223 | .markdown-body hr {
224 | height: 0;
225 | margin: 15px 0;
226 | overflow: hidden;
227 | background: transparent;
228 | border: 0;
229 | border-bottom: 1px solid #dfe2e5;
230 | }
231 |
232 | .markdown-body hr::before {
233 | display: table;
234 | content: "";
235 | }
236 |
237 | .markdown-body hr::after {
238 | display: table;
239 | clear: both;
240 | content: "";
241 | }
242 |
243 | .markdown-body table {
244 | border-spacing: 0;
245 | border-collapse: collapse;
246 | }
247 |
248 | .markdown-body td,
249 | .markdown-body th {
250 | padding: 0;
251 | }
252 |
253 | .markdown-body h1,
254 | .markdown-body h2,
255 | .markdown-body h3,
256 | .markdown-body h4,
257 | .markdown-body h5,
258 | .markdown-body h6 {
259 | margin-top: 0;
260 | margin-bottom: 0;
261 | }
262 |
263 | .markdown-body h1 {
264 | font-size: 32px;
265 | font-weight: 600;
266 | }
267 |
268 | .markdown-body h2 {
269 | font-size: 24px;
270 | font-weight: 600;
271 | }
272 |
273 | .markdown-body h3 {
274 | font-size: 20px;
275 | font-weight: 600;
276 | }
277 |
278 | .markdown-body h4 {
279 | font-size: 16px;
280 | font-weight: 600;
281 | }
282 |
283 | .markdown-body h5 {
284 | font-size: 14px;
285 | font-weight: 600;
286 | }
287 |
288 | .markdown-body h6 {
289 | font-size: 12px;
290 | font-weight: 600;
291 | }
292 |
293 | .markdown-body p {
294 | margin-top: 0;
295 | margin-bottom: 10px;
296 | }
297 |
298 | .markdown-body blockquote {
299 | margin: 0;
300 | }
301 |
302 | .markdown-body ul,
303 | .markdown-body ol {
304 | padding-left: 0;
305 | margin-top: 0;
306 | margin-bottom: 0;
307 | }
308 |
309 | .markdown-body ol ol,
310 | .markdown-body ul ol {
311 | list-style-type: lower-roman;
312 | }
313 |
314 | .markdown-body ul ul ol,
315 | .markdown-body ul ol ol,
316 | .markdown-body ol ul ol,
317 | .markdown-body ol ol ol {
318 | list-style-type: lower-alpha;
319 | }
320 |
321 | .markdown-body dd {
322 | margin-left: 0;
323 | }
324 |
325 | .markdown-body code {
326 | font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;
327 | font-size: 12px;
328 | }
329 |
330 | .markdown-body pre {
331 | margin-top: 0;
332 | margin-bottom: 0;
333 | font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;
334 | font-size: 12px;
335 | }
336 |
337 | .markdown-body .octicon {
338 | vertical-align: text-bottom;
339 | }
340 |
341 | .markdown-body .pl-0 {
342 | padding-left: 0 !important;
343 | }
344 |
345 | .markdown-body .pl-1 {
346 | padding-left: 4px !important;
347 | }
348 |
349 | .markdown-body .pl-2 {
350 | padding-left: 8px !important;
351 | }
352 |
353 | .markdown-body .pl-3 {
354 | padding-left: 16px !important;
355 | }
356 |
357 | .markdown-body .pl-4 {
358 | padding-left: 24px !important;
359 | }
360 |
361 | .markdown-body .pl-5 {
362 | padding-left: 32px !important;
363 | }
364 |
365 | .markdown-body .pl-6 {
366 | padding-left: 40px !important;
367 | }
368 |
369 | .markdown-body::before {
370 | display: table;
371 | content: "";
372 | }
373 |
374 | .markdown-body::after {
375 | display: table;
376 | clear: both;
377 | content: "";
378 | }
379 |
380 | .markdown-body>*:first-child {
381 | margin-top: 0 !important;
382 | }
383 |
384 | .markdown-body>*:last-child {
385 | margin-bottom: 0 !important;
386 | }
387 |
388 | .markdown-body a:not([href]) {
389 | color: inherit;
390 | text-decoration: none;
391 | }
392 |
393 | .markdown-body .anchor {
394 | float: left;
395 | padding-right: 4px;
396 | margin-left: -20px;
397 | line-height: 1;
398 | }
399 |
400 | .markdown-body .anchor:focus {
401 | outline: none;
402 | }
403 |
404 | .markdown-body p,
405 | .markdown-body blockquote,
406 | .markdown-body ul,
407 | .markdown-body ol,
408 | .markdown-body dl,
409 | .markdown-body table,
410 | .markdown-body pre {
411 | margin-top: 0;
412 | margin-bottom: 16px;
413 | }
414 |
415 | .markdown-body hr {
416 | height: 0.25em;
417 | padding: 0;
418 | margin: 24px 0;
419 | background-color: #e1e4e8;
420 | border: 0;
421 | }
422 |
423 | .markdown-body blockquote {
424 | padding: 0 1em;
425 | color: #6a737d;
426 | border-left: 0.25em solid #dfe2e5;
427 | }
428 |
429 | .markdown-body blockquote>:first-child {
430 | margin-top: 0;
431 | }
432 |
433 | .markdown-body blockquote>:last-child {
434 | margin-bottom: 0;
435 | }
436 |
437 | .markdown-body kbd {
438 | display: inline-block;
439 | padding: 3px 5px;
440 | font-size: 11px;
441 | line-height: 10px;
442 | color: #444d56;
443 | vertical-align: middle;
444 | background-color: #fafbfc;
445 | border: solid 1px #c6cbd1;
446 | border-bottom-color: #959da5;
447 | border-radius: 3px;
448 | box-shadow: inset 0 -1px 0 #959da5;
449 | }
450 |
451 | .markdown-body h1,
452 | .markdown-body h2,
453 | .markdown-body h3,
454 | .markdown-body h4,
455 | .markdown-body h5,
456 | .markdown-body h6 {
457 | margin-top: 24px;
458 | margin-bottom: 16px;
459 | font-weight: 600;
460 | line-height: 1.25;
461 | }
462 |
463 | .markdown-body h1 .octicon-link,
464 | .markdown-body h2 .octicon-link,
465 | .markdown-body h3 .octicon-link,
466 | .markdown-body h4 .octicon-link,
467 | .markdown-body h5 .octicon-link,
468 | .markdown-body h6 .octicon-link {
469 | color: #1b1f23;
470 | vertical-align: middle;
471 | visibility: hidden;
472 | }
473 |
474 | .markdown-body h1:hover .anchor,
475 | .markdown-body h2:hover .anchor,
476 | .markdown-body h3:hover .anchor,
477 | .markdown-body h4:hover .anchor,
478 | .markdown-body h5:hover .anchor,
479 | .markdown-body h6:hover .anchor {
480 | text-decoration: none;
481 | }
482 |
483 | .markdown-body h1:hover .anchor .octicon-link,
484 | .markdown-body h2:hover .anchor .octicon-link,
485 | .markdown-body h3:hover .anchor .octicon-link,
486 | .markdown-body h4:hover .anchor .octicon-link,
487 | .markdown-body h5:hover .anchor .octicon-link,
488 | .markdown-body h6:hover .anchor .octicon-link {
489 | visibility: visible;
490 | }
491 |
492 | .markdown-body h1 {
493 | padding-bottom: 0.3em;
494 | font-size: 2em;
495 | border-bottom: 1px solid #eaecef;
496 | }
497 |
498 | .markdown-body h2 {
499 | padding-bottom: 0.3em;
500 | font-size: 1.5em;
501 | border-bottom: 1px solid #eaecef;
502 | }
503 |
504 | .markdown-body h3 {
505 | font-size: 1.25em;
506 | }
507 |
508 | .markdown-body h4 {
509 | font-size: 1em;
510 | }
511 |
512 | .markdown-body h5 {
513 | font-size: 0.875em;
514 | }
515 |
516 | .markdown-body h6 {
517 | font-size: 0.85em;
518 | color: #6a737d;
519 | }
520 |
521 | .markdown-body ul,
522 | .markdown-body ol {
523 | padding-left: 2em;
524 | }
525 |
526 | .markdown-body ul ul,
527 | .markdown-body ul ol,
528 | .markdown-body ol ol,
529 | .markdown-body ol ul {
530 | margin-top: 0;
531 | margin-bottom: 0;
532 | }
533 |
534 | .markdown-body li {
535 | word-wrap: break-all;
536 | }
537 |
538 | .markdown-body li>p {
539 | margin-top: 16px;
540 | }
541 |
542 | .markdown-body li+li {
543 | margin-top: 0.25em;
544 | }
545 |
546 | .markdown-body dl {
547 | padding: 0;
548 | }
549 |
550 | .markdown-body dl dt {
551 | padding: 0;
552 | margin-top: 16px;
553 | font-size: 1em;
554 | font-style: italic;
555 | font-weight: 600;
556 | }
557 |
558 | .markdown-body dl dd {
559 | padding: 0 16px;
560 | margin-bottom: 16px;
561 | }
562 |
563 | .markdown-body table {
564 | display: block;
565 | width: 100%;
566 | overflow: auto;
567 | }
568 |
569 | .markdown-body table th {
570 | font-weight: 600;
571 | }
572 |
573 | .markdown-body table th,
574 | .markdown-body table td {
575 | padding: 6px 13px;
576 | border: 1px solid #dfe2e5;
577 | }
578 |
579 | .markdown-body table tr {
580 | background-color: #fff;
581 | border-top: 1px solid #c6cbd1;
582 | }
583 |
584 | .markdown-body table tr:nth-child(2n) {
585 | background-color: #f6f8fa;
586 | }
587 |
588 | .markdown-body img {
589 | max-width: 100%;
590 | box-sizing: content-box;
591 | background-color: #fff;
592 | }
593 |
594 | .markdown-body img[align=right] {
595 | padding-left: 20px;
596 | }
597 |
598 | .markdown-body img[align=left] {
599 | padding-right: 20px;
600 | }
601 |
602 | .markdown-body code {
603 | padding: 0.2em 0.4em;
604 | margin: 0;
605 | font-size: 85%;
606 | background-color: rgba(27,31,35,0.05);
607 | border-radius: 3px;
608 | }
609 |
610 | .markdown-body pre {
611 | word-wrap: normal;
612 | }
613 |
614 | .markdown-body pre>code {
615 | padding: 0;
616 | margin: 0;
617 | font-size: 100%;
618 | word-break: normal;
619 | white-space: pre;
620 | background: transparent;
621 | border: 0;
622 | }
623 |
624 | .markdown-body .highlight {
625 | margin-bottom: 16px;
626 | }
627 |
628 | .markdown-body .highlight pre {
629 | margin-bottom: 0;
630 | word-break: normal;
631 | }
632 |
633 | .markdown-body .highlight pre,
634 | .markdown-body pre {
635 | padding: 16px;
636 | overflow: auto;
637 | font-size: 85%;
638 | line-height: 1.45;
639 | background-color: #f6f8fa;
640 | border-radius: 3px;
641 | }
642 |
643 | .markdown-body pre code {
644 | display: inline;
645 | max-width: auto;
646 | padding: 0;
647 | margin: 0;
648 | overflow: visible;
649 | line-height: inherit;
650 | word-wrap: normal;
651 | background-color: transparent;
652 | border: 0;
653 | }
654 |
655 | .markdown-body .full-commit .btn-outline:not(:disabled):hover {
656 | color: #005cc5;
657 | border-color: #005cc5;
658 | }
659 |
660 | .markdown-body kbd {
661 | display: inline-block;
662 | padding: 3px 5px;
663 | font: 11px "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;
664 | line-height: 10px;
665 | color: #444d56;
666 | vertical-align: middle;
667 | background-color: #fafbfc;
668 | border: solid 1px #d1d5da;
669 | border-bottom-color: #c6cbd1;
670 | border-radius: 3px;
671 | box-shadow: inset 0 -1px 0 #c6cbd1;
672 | }
673 |
674 | .markdown-body :checked+.radio-label {
675 | position: relative;
676 | z-index: 1;
677 | border-color: #0366d6;
678 | }
679 |
680 | .markdown-body .task-list-item {
681 | list-style-type: none;
682 | }
683 |
684 | .markdown-body .task-list-item+.task-list-item {
685 | margin-top: 3px;
686 | }
687 |
688 | .markdown-body .task-list-item input {
689 | margin: 0 0.2em 0.25em -1.6em;
690 | vertical-align: middle;
691 | }
692 |
693 | .markdown-body hr {
694 | border-bottom-color: #eee;
695 | }
696 |
--------------------------------------------------------------------------------