返回介绍

样式导入(Import Styles)

发布于 2020-06-05 22:50:58 字数 2093 浏览 2955 评论 0 收藏 0

在上一个小节中,有关混合(mixins)的知识已经全部讲解完毕。

在软件工程中代码的拆分机制,可以帮助我们增强代码的可维护性,同样在 Less 中也提供了这种导入导出机制,帮助我们进行样式的拆分。

1. 语法定义

Import styles from other style sheets——官方定义

慕课解释:通过导入指令引入其他样式表的内容 。

导出并不需要特殊的语法,但是导入需要我们使用 @import 语法并加上文件名称。此外导入机制仅编译我们用到的代码,并不会编译多余的代码。

2. 语法详情

类似于原生 CSS 语法的导入指令,在 Less 中我们也是通过 @import 指令引入其他样式表。

比如引入base.less文件:

@import 'base.less';

有一点与原生语法不同的是,在 CSS 中 @import 规则必须位于所有其他类型的规则之前。但是 Less 可以将 @import 语句放在任意位置。

.apple {
  background: red;
}

@import "base.less";

TIPS:注意,在这里 Less 中虽然允许我们将导入指令写在任意位置,个人建议同 CSS 语法一样在文件头部导入文件,便于我们快速查阅导入文件的列表并进行修改。

3. 导入文件类型

除了可以引入.less 文件,还可以引导不同类型的文件。

根据导入文件类型的不同,@import 语句可能会出现以下几种情形:

  1. 如果文件扩展名为 .css,该文件将被视为 CSS 文件,@import 语句引入规则保持不变。
  2. 如果文件扩展名为除 .css.less 以外的拓展名,@import 语句将会将其拓展名视为 .less 并将其引入。
  3. 文件无扩展名时,@import 语句将会默认添加 .less 拓展名并引入。
@import "foo";      // 引入 foo.less
@import "foo.js";  // foo.js 会被当作 less 文件引入
@import "foo.css";  // 规则不变

4. 使用场景

@import 可以帮助我们形成一个个的文件模块,使用文件模块有以下几个优点:

  • 提高代码复用性
  • 提高代码可维护性

所以说我们可以把复用性较强语法,比如全局变量、mixins 等可以单独提取出来放到一个文件(模块)中。例如我们新建一个 mixins.less :

// mixins.less
.mixins1() {
  color: red;
}

.mixins2() {
  color: blue;
}

// componenets.less
@import 'mixins.less'

.color {
    .mixins1();
}

5. 小结

本章节介绍了 Less 中的文件导入机制,在语法上与 CSS 的文件导入大致相同,学习的门槛不是很高,但是 Less 拓展了 CSS 文件导入的机制,这些是需要我们重点学习的地方。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文