CSS之 sass、less、stylus 预处理器的使用方式

CSS之 sass、less、stylus 预处理器的使用方式

更详细区别参考文档:https://blog.csdn.net/pedrojuliet/article/details/72887490

使用变量:

  sass:  使用 $ 符号定义变量,如: $base_color: #efefef

   less: 使用 @ 符号定义变量,如:@base_font_size: 16px

  stylus: 对变量没有任何设定(变量不能以@符号开头),变量之间可以使用 “=”, “空格”或者 “:”,如:  base_font_color: red,   borderwidth=1px,  borderColor #cacaca

 

导入操作(@import):

  如:

base  css文件
/* file.{type} */
body {
  background: #000;
}


xxx css文件
@ import "1.css";
@ import "file.{type}";
p {
  background: #092873;
}


结果
@ import "1.css";
body {
  background: #000;
}
p {
  background: #092873;
}

 

继承:当我们需要为多个元素定义相同的样式的时候,我们可以考虑使用继承的做法

  sass继承:通过 @extend来实现代码组合声明(stylus也可以使用此方法实现继承)

.message {
  border: 1px solid #ccc;
  padding: 10px;
  color: #333;
}

.success {
  @extend .message;
  border-color: green;  
}

.err {
  @extend .message;
  border-color: red;
}

  less继承

.message {
  border: 1px solid #ccc;
  padding: 10px;
  color: #333;
}
.success {
  .message;
  border-color: green;
}
.error {
  .message;
  border-color: red;
}

 

混入(Mixins):有点像函数或者宏,当某段css经常要在多个元素中使用时,可以为这些共用的css定义一个Mixin,然后在需要的地方引入该Mixin即可

  sass语法:

/* 定义一个混入语法,接受一个变量,默认值为2px,可选 */
@mixin err($borderWidth:2px){
    border:$borderWidth solid #cacaca
    color: #cacaca
}

.generic-error {
    padding: 20px;
    margin: 4px;
    @include error(5px);  /* 调用混入语法,传入一个参数得到 border:5px solid #cacaca*/
}

  stylus语法

error(borderWidth= 2px) {
  border: borderWidth solid #F00;
  color: #F00;
}
.generic-error {
  padding: 20px;
  margin: 4px;/* 调用混入语法,传入一个参数得到 border:5px solid #cacaca*/、
error();
}

 

  

怎能让着不停燃烧的心,就这样耗尽消失在平庸里

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/2592.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • java tp_tp90和tp99指标

    java tp_tp90和tp99指标TP指标:TP50:指在一个时间段内(如5分钟),统计该方法每次调用所消耗的时间,并将这些时间按从小到大的顺序进行排序,取第50%的那个值作为TP50值;配置此监控指标对应的报警阀值后,需要保证在这个时间段内该方法所有调用的消耗时间至少有50%的值要小于此阀值,否则系统将会报警。TP90,TP99,TP999与TP50值计算方式一致,它们分别代表着对方法的不同性能要求,TP50相对较低,TP9…

    2022年10月29日
  • Office2007集成SP1光盘镜像下载(简体中文专业版+企业版VOL)「建议收藏」

    Office2007集成SP1光盘镜像下载(简体中文专业版+企业版VOL)「建议收藏」MicrosoftOffice2007sp1简体中文专业版http://www.namipan.com/d/fe0fb8a3037fc08c9bbec2cce55296b60160be5d0000763aMicrosoftOffice2007sp1简体中文企业版http://www.namipan.com/d/a25862908b03e67f02249e96b3e9a086…

  • mysql安装教程2005,SQL 2005怎么安装 SQL Server 2005安装图解教程

    mysql安装教程2005,SQL 2005怎么安装 SQL Server 2005安装图解教程很多朋友由于工作需要,要在电脑上安装SQLServer2005数据库软件。而SQLServer的安装还有点小麻烦的,因为其要开启Windows的IIS服务功能,并且安装设置步骤也比较多SQL2005怎么安装呢?今天百事网小编瑞特就来给大家讲一下SQLServer2005安装图解教程。SQL2005怎么安装SQLServer2005安装图解教程以下我们演示的是Win7系统下安装SQL…

    2022年10月25日
  • 把ocx打包成CAB,并签名

    把ocx打包成CAB,并签名准备好工具包,微软的IESDK里包含这些工具, 但是那个开发包太过庞大,而且操作起来也稍微得繁琐了一些你只需要下载这么几个文件就可以了 文中提到的数字签名工具包,请在此处下载&#

  • Java入门代码_java编程自学网

    Java入门代码_java编程自学网首先在配置好java环境的前提下,安装好eclipse,以下示例均在eclipse下运行,代码详解看注释一、HelloWorld示例代码:packagecom.hpe.java;//这是一个问好程序publicclassHello{//一个类只能有一个main方法publicstaticvoidmain(Stringarg[]){System.out.print(“hellowo…

    2022年10月17日
  • 【object window】= $0

    【object window】= $0

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号