当前位置: 首页 > news >正文

前端小白的学习之路(lessscss)

提示:less,sass&scss

目录

一、less

1.变量

2.嵌套规则 

3.混合

4.针对属性值进行操作的函数

5.循环

6.拓展语法

二、scss&sass

1.sass 

2.scss


一、less

是一个开源的、基于 CSS 的预处理器,它使得编写和维护 CSS 更加简单和高效。通过使用 Less,你可以使用类似于编程语言的结构,如变量、嵌套、混合(Mixins)、函数等,来组织和管理你的样式表。Less 的语法比原生的 CSS 更加灵活和强大,使得开发者能够更轻松地构建复杂的样式。

1.变量

/* 
*
* 1) 声明变量
*
* 
*/@color: #ff5500;
@w: 1000px;
@h: 80px;
@bgColor: #f3e4ca;
@pad: 0 20px;
@borderColor: #ff5500;.container {width: @w;margin: 0 auto;
}

2.嵌套规则 

/* 
*
* 2) 嵌套规则
*
* 
*/.index-header {height: @h;line-height: @h;background-color: @bgColor;padding: @pad;.logo {color: @color;font-size: 40px;font-weight: bold;}
}// 过去的做法
// .index-nav {}
// .index-nav ul {}
// .index-nav ul li {}
// .index-nav ul li  a {}// 现在的做法
.index-nav {padding: @pad;ul {width: 100%;height: 80px;display: flex;align-items: center;border-bottom: 2px solid @color;li {margin: 0 15px;a {color: @color;text-decoration: none;}}}
}

3.混合

/* 
*
* 3) 混合
*  可以重复使用的代码块
* 
*/@width: 50px;
@height: 50px;.size() {width: @width;height: @height;
}.base() {content: "";display: block;position: absolute;top: 0;left: 0;border-radius: 50%;
}.addColor(@c: red) {background-color: @c;
}.icon-heart {display: inline-block;vertical-align: middle;position: relative;// 在less 文档 可以直接使用加减乘除 + - * / margin: (@width / 2) (@width / 2);transform: rotate(45deg) scale(1);.size();.addColor(red);// 伪类元素&::before {.base();.size();.addColor(red);left: -(@width / 2);}&::after {.base();.size();.addColor(red);top: -(@width / 2);}
}

4.针对属性值进行操作的函数

/* 
*
* 4) 针对属性值进行操作的函数
*  向上取整  向下取整  
* 
*/
.box {width: (1000px / 3);width: floor((1000px / 3));width: ceil((1000px / 3));
}ol {list-style: none;padding: 0;margin: 0;
}

5.循环

// 5) 循环 1 2 3 4 5 6
.loop(@i) when (@i < 7) {// less文档中字符串.demo-@{i} {margin-top: 5px;width: 50px + (@i * 50);height: 10px;background-color: rgba(255,0,0, (@i / 10));}.loop(@i + 1);
}
// 使用.loop()
.loop(1);
// 字符串拼接
// @i: 1;
// .demo-@{i} {
//    

6.拓展语法

// 6) 拓展语法 (代码重复使用)
.square {width: 100px;height: 100px;background-color: deepskyblue;margin-top: 10px;
}.circle:extend(.square) {border-radius: 20px;
}

 注:less中有两种注释方式,//不会编译到.css文件中,/**/会编译到.css文件中

二、scss&sass

1.sass 

// 声明变量
$color: red;// 后缀名为.sass的文件 对语法要求比较严格 
// 对换行、空格有要求
.boxwidth: 1000px;height: 1000px;background-color: red;ullist-style: none;li border-bottom: 1px solid #ccc;

注:旧的版本已经不推荐使用 

2.scss

// 注释1
/*注释2*//*
*
*
*1) 声明变量
*
*
*/
$color: red;
.box {color: $color;
}/*
*
*
*2) 嵌套规则
*
*
*/
.nav {width: 1000px;ul {list-style: none;li {border-bottom: 1px solid #ccc;a {text-decoration: none;height: 40px;line-height: 40px;}}}
}/*
*
*
* 3) 混合语法 
*  可重复使用的代码块
*
*/
@mixin size(){width: 1000px;height: 100px;
}
@mixin addColor($c:red){background-color: $c;
}.header {@include size();@include addColor();
}
.footer {@include size();@include addColor(green);
}
.nav {@include size();@include addColor(blue);
}// 4) 运算 + - * / 
.image-box {width: (256px / 2);
}// 5) 函数
.text-box {width: floor(1000.99999px);
}// 6) 循环
// 写法1:
@for $i from 1 to 5 {// 字符串拼接.demo-#{$i}{width: 100px + (10px * $i);}
}// 写法2:
@each $key in header nav  footer {.#{$key}-demo{width: 100px;}
}// 7) 拓展语法
.square {width: 100px;height: 100px;background-color: pink;
}
.circle {@extend .square;border-radius: 50%;
}

http://www.lryc.cn/news/323671.html

相关文章:

  • 算法体系-15 第十五节:贪心算法(下)
  • 2.10 模型评估的方法有哪些?优缺点
  • Linux centos7安装nginx-1.24.0并且实现自启动
  • 001-Windows下PyTorch极简开发环境配置(上)
  • 分布式Raft原理详解,从不同角色视角分析相关状态
  • 大数据的实时计算和离线计算你理解吗?
  • OS Package Manager
  • 【滑动窗口、矩阵】算法例题
  • 【事务】开发用到的事务,TransactionDefinition实例详解,事务的传播机制
  • Linux信号处理
  • nuclei使用方法
  • 【并查集专题】【蓝桥杯备考训练】:网络分析、奶酪、合并集合、连通块中点的数量、格子游戏【已更新完成】
  • 数据结构(三)复杂度的深层次剖析
  • JavaWeb -- HTTP -- WEB服务器TOMCAT
  • GitHub与Git命令使用笔记
  • 二叉树的层次遍历经典问题-算法通关村
  • SQLiteC/C++接口详细介绍sqlite3_stmt类(十二)
  • 大模型时代如何做安全?
  • 新型储能是什么,储能系统解决方案现状及趋势详细说明
  • 掌握Go语言:Go语言中的字典魔法,高效数据检索与应用实例解析(18)
  • Flutter-仿携程首页类型切换
  • C语言 自定义类型:结构体
  • 计算机网络拓扑结构
  • FPGA通过I2C控制AT24C64
  • 134. 加油站(力扣LeetCode)
  • XSKY 智能存储,助力“数据要素 X”先进制造
  • 数据挖掘与分析学习笔记
  • linux docker镜像初始化
  • 专业140+总分410+南京大学851信号与系统考研经验南大电子信息与通信集成,电通,真题,大纲,参考书。
  • . ./ bash dash source 这五种执行shell脚本方式 区别