2018-10-10 18:03:03 -04:00
|
|
|
|
---
|
|
|
|
|
id: 587d7dbf367417b2b2512bbc
|
2021-03-07 09:15:14 -07:00
|
|
|
|
title: 用 Partials 将样式分成小块
|
2018-10-10 18:03:03 -04:00
|
|
|
|
challengeType: 0
|
2020-09-07 16:11:08 +08:00
|
|
|
|
forumTopicId: 301459
|
2021-01-13 03:31:00 +01:00
|
|
|
|
dashedName: split-your-styles-into-smaller-chunks-with-partials
|
2018-10-10 18:03:03 -04:00
|
|
|
|
---
|
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
# --description--
|
2020-09-07 16:11:08 +08:00
|
|
|
|
|
2021-03-07 09:15:14 -07:00
|
|
|
|
Sass 中的 <dfn>Partials</dfn> 是包含 CSS 代码段的单独的文件。 这些片段可以导入其它 Sass 文件使用。 可以把类似代码放到模块中,以保持代码结构规整且易于管理。
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2021-03-07 09:15:14 -07:00
|
|
|
|
partials 的名称以下划线(`_`)字符开头,这样 Sass 就知道它是 CSS 的一小部分,而不会将其转换为 CSS 文件。 此外,Sass 文件以 `.scss` 文件扩展名结尾。 要将 partial 中的代码放入另一个 Sass 文件中,使用 `@import` 指令。
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2021-03-07 09:15:14 -07:00
|
|
|
|
例如,如果所有 mixins 都保存在名为 “\_mixins.scss” 的 partial 中,并且在 “main.scss” 文件中需要它们,下面是使用方法:
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
```scss
|
|
|
|
|
@import 'mixins'
|
2018-10-10 18:03:03 -04:00
|
|
|
|
```
|
|
|
|
|
|
2021-03-07 09:15:14 -07:00
|
|
|
|
请注意,`import` 语句中不需要下划线——Sass 知道它是 partial。 将 partial 导入文件后,可以使用所有变量、mixins 和其它代码。
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
# --instructions--
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2021-03-07 09:15:14 -07:00
|
|
|
|
编写 `@import` 语句,将名为 `_variables.scss` 的 partial 导入 main.scss 文件。
|
2020-09-07 16:11:08 +08:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
# --hints--
|
2020-09-07 16:11:08 +08:00
|
|
|
|
|
2021-03-07 09:15:14 -07:00
|
|
|
|
代码应使用 `@import` 指令,并且不应在文件名中包含下划线。
|
2020-09-07 16:11:08 +08:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
```js
|
|
|
|
|
assert(code.match(/@import\s+?('|")variables\1/gi));
|
2018-10-10 18:03:03 -04:00
|
|
|
|
```
|
|
|
|
|
|
2021-01-13 03:31:00 +01:00
|
|
|
|
# --seed--
|
|
|
|
|
|
|
|
|
|
## --seed-contents--
|
|
|
|
|
|
|
|
|
|
```html
|
|
|
|
|
<!-- The main.scss file -->
|
|
|
|
|
```
|
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
# --solutions--
|
2020-08-13 17:24:35 +02:00
|
|
|
|
|
2021-01-13 03:31:00 +01:00
|
|
|
|
```html
|
|
|
|
|
@import 'variables'
|
|
|
|
|
```
|