美文网首页
CSS预处理

CSS预处理

作者: consolelog | 来源:发表于2019-08-15 17:22 被阅读0次

CSS预处理器定义了一种新的语言,其基本思想是,用一种专门的编程语言,为CSS增加了一些编程的特特性,将CSS作为目标生成文件,然后开发者只要用这种语言进行编码工作。

使用CSS预处理器语言,可以让你的CSS看起来更加的整洁、适应性更强、可读性更佳,更易于代码的维护等诸多的好处。

目前市面上的主要CSS预处理语言有Less,Sass,Stylus三种

使用方法

  • 方法一,引入Less.js文件

去官网下载Less.js文件,使用时候引入这两行代码

<link rel="stylesheet/less" type="text/css" href="styles.less">
<script src="Less.js" type="text/javascript"></script>
  • 方法二,软件方式编译
    推荐koala,koala是优秀的编译器,界面清晰简洁,操作起来也非常简单。鉴于koala是免费编译器,简单操作如下图:

  • 方法三,使用编辑器插件

Hbuild X的插件使用为例子
安装less插件


修改配置
"commands": [
            {
                "id": "LESS_COMPILE",
                "name": "编译less",
                "command": [
                    "${programPath}",
                    "${file}",
                    "../css/${fileBasename}.css"  //此处代表文件地址
                ],
                "extensions": "less",
                "key": "",
                "showInParentMenu": false,
                "onDidSaveExecution": true   //此处代表是否打开自动保存
            }
        ]

完成以上步骤之后,当.less文件保存之后会自动生成一个.css文件

语法

  1. 注释
  • 标准CSS注释/* comment */,会保留到编译后的文件中。
  • 单行注释//comment,之后保留在less源文件中,编译后被省略。
  1. 变量
    less允许用户使用变量,变量以@开头
@color:#FF0000;

#div {
    color:@color;
}

@side:left;

#div {
    border-@{side}-radius:5px;
}

3.嵌套

  • 选择器嵌套
#header {
    width: 100px;
    #con {
        font-size: 14px;
        h3 {
            background: #00E5EE;
        }
    }
}

编译后的文件

#header {
  width: 100px;
}
#header #con {
  font-size: 14px;
}
#header #con h3 {
  background: #00E5EE;
}

在嵌套的代码中,可以使用&引用父元素。例如a:hover伪类可以写成

a {
   &:hover{color:#FFAD00;}
}
  1. 混入
.box {
    border:1px solid black;
    background: skyblue;
}

.inner {
    color: white;
    .box;
}

编译后的文件

.inner {
color: white;
border: 1px solid black;
background: skyblue;
}
  • 混入参数
.box(@clolr:red) {
    background: @clolr;
}

#header {
    .box(green);
}

编译结果

#header {
  background: green;
}

混入参数是,如果指定了参数,则使用指定的参数,如果没有指定参数,则使用默认的。当没有指定默认参数时,必须指定参数,负责编译错误。

  1. 运算
    任何数字、颜色、或者变量都可以参与运算,运算被包括在括号里面。
.box {width:(200px-20)*2;}

//结果
.box{width:360px;}

相关文章

  • Sass和Less

    什么是Sass和Less? Sass和Less都属于CSS预处理器。 什么是 CSS 预处理器呢? CSS 预处理...

  • 在Vue.js中使用Stylus预处理器

    概述 什么是Stylus Stylus是一个CSS预处理器。 什么是CSS预处理器 关于CSS预处理器,推荐先行阅...

  • 十分钟入门sass

    什么是css预处理器 :bookmark: CSS 预处理器是一个能让你通过预处理器自己的语法生成CSS的工具。 ...

  • CSS预处理器之Less

    CSS预处理器 什么是CSS预处理器 CSS 预处理器就是用某一种语言用来为 CSS 增加一些动态语言的的特性(变...

  • sass是什么?为什么要使用sass?使用sass,以及其他一些

    什么是scss? Sass属于CSS预处理器,那什么是 CSS 预处理器呢? CSS 预处理器定义了一种新的语言,...

  • 【Web前端】node-sass的免翻墙团队安装

    选型 项目打算用css预处理(预处理的嵌套语法实在不能拒绝),而css的预处理sass、less和stylus这三...

  • CSS预处理器之less0731

    CSS预处理器之less 1.基础内容 1.1什么是CSS预处理器? CSS 预处理器就是用某一种语言用来为 CS...

  • less在webstorm中的配置

    css预处理技术已经发展的比较成熟了,通过css预处理技术可以很好的提升css的编程性,提高css代码的开发效率和...

  • web开发小部分单词

    Sass=scss编程 Sass 是css预处理器 css预处理器用编程思维写一些可以转成css的东西 优点:更加...

  • 为什么选择Sass而不是Less?

    什么是Sass和Less? Sass和Less都是属于CSS的预处理器,那什么是预处理器呢? CSS预处理器定义了...

网友评论

      本文标题:CSS预处理

      本文链接:https://www.haomeiwen.com/subject/upjajctx.html