【Less-CSS】初识Less,使编写 CSS 变得简洁

news2024/12/30 3:45:34

初识Less,使编写 CSS 变得简洁

    • 1.Less简述
    • 2.LESS 原理及使用方式
    • 3.示例
    • 4.less语法
    • 5.Easy Less插件

作为一门标记性语言,CSS 的语法相对简单,对使用者的要求较低,但同时也带来一些问题:CSS 需要书写大量看似没有逻辑的代码,不方便维护及扩展,不利于复用,尤其对于非前端开发工程师来讲,往往会因为缺少 CSS 编写经验而很难写出组织良好且易于维护的 CSS 代码,造成这些困难的很大原因源于 CSS 是一门非程序式语言,没有变量、函数、SCOPE(作用域)等概念。

LESS 为 Web 开发者带来了福音,它在 CSS 的语法基础之上,引入了变量,Mixin(混入),运算以及函数等功能,大大简化了 CSS 的编写,并且降低了 CSS 的维护成本,就像它的名称所说的那样,LESS 可以让我们用更少的代码做更多的事情。

1.Less简述

less就是简便书写css的工具还是像写css那样写,只是有些比较简洁,可以写除法、选择器套选择器等等。保存.less文件,就会在同级别下自动生成.css文件。

在px单位转换到rem单位过程中,哪项工作是最麻烦的?

答:除法运算。CSS不支持计算写法。解决方案:可以通过Less实现。

Less是一个CSS预处理器, Less文件后缀是.less;

扩充了 CSS 语言, 使 CSS 具备一定的逻辑性、计算能力;

注意:浏览器不识别Less代码,目前阶段,网页要引入对应的CSS文件。

2.LESS 原理及使用方式

本质上,LESS 包含一套自定义的语法及一个解析器,用户根据这些语法定义自己的样式规则,这些规则最终会通过解析器,编译生成对应的 CSS 文件。LESS 并没有裁剪 CSS 原有的特性,更不是用来取代 CSS 的,而是在现有 CSS 语法的基础上,为 CSS 加入程序式语言的特性。

3.示例

.less文件:

.father {
    color: red;
 
    width: (68 / 37.5rem);
 
    .son {
        background-color: pink;
    }
}

保存.less文件以后,在同级别的目录下生成的.css文件:

.father {
  color: red;
  width: 1.81333333rem;
}
.father .son {
  background-color: pink;
}

4.less语法

  • 四则运算:
    运算: 加、减、乘直接书写计算表达式;
    除法需要添加 小括号 .

    //表达式存在多个单位以第一个单位为准!
    div {
        width: 100 + 5px;
        width: 100 -5px;
        width: 100 * 2px;
     
        // 除法
        // 68  > rem
        width: (68 / 37.5rem);
        height: 29 ./ 37.5rem;
     
    }
    
  • 嵌套:快速生成后代选择器。
    语法:

    .父级选择器{
    	//父类样式
    	.子级选择器{
    		//子类样式
    	}
    }
    
    .father {
    	color:red;
    	.son {
    		color:pink;
    	}
    }
    
    &不生成后代选择器,表示当前选择器,通常配合伪类或伪元素使用。
    .father {
    	color:red;
    	&:hover {
    		color:pink;
    	}
    }
    
  • 使用Less变量设置属性
    语法:

    定义变量:@变量名: 值;
    使用变量:CSS属性:@变量名;
    

    示例:
    .less文件:

    // 1. 定义. 2.使用
    @colora:green;
     
    .box {
        color: @colora;
    }
     
    .father {
        background-color: @colora;
    }
     
    .aa {
        color: @colora;
    }
    

    对应的.css文件:

    .box {
      color: green;
    }
    .father {
      background-color: green;
    }
    .aa {
      color: green;
    }
    
  • 导入

开发网站时,网页如何引入公共样式?
答:CSS:书写link标签;
       Less:导入

导入的语法: @import “文件路径”;
导入了这个less文件,保存以后这个less对应的css都会有。

  • 导出
    less一保存,都是在当前的路径生成css,
    如果想改变这个路径:
    方法一:实现把less文件夹里的less文件,保存后生成的css文件都放到css文件夹中。

     配置EasyLess插件, 实现所有Less有相同的导出路径;
    
     配置插件: 设置 → 搜索EasyLess → 在setting.json中编辑 
     			→ 添加代码(注意,必须是双引号)
    

    在这里插入图片描述
    实现把less文件夹里的less文件,保存后生成的css文件都放到css文件夹中。

    方法二:
    让对应less文件的css文件导出到另外一个路径;
    Less文件第一行添加如下代码, 注意文件夹名称后面添加 /

    // out: ./qqq/daqiu.css
     
    // out: ./abc/
     
    .box {
        color: red;
    }
    

    第一行不仅换了位置,还改了css文件名;
    第二行是换位置。./表示当前文件夹的目录

    有一些less不需要导出css文件:
    禁止导出:在less文件第一行添加: // out: false

5.Easy Less插件

Easy Less是vscode插件,其作用:less文件保存自动生成css文件。
一定要在vscode中加了这个插件,才能保存后自动生成css文件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1033105.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【初阶数据结构】二叉树链式结构的实现和遍历

个人主页 代码仓库 C语言专栏 初阶数据结构专栏 Linux专栏 目录 前言 二叉树链式结构的实现 二叉树的遍历 前序、中序和后序遍历 前序遍历 中序遍历 后序遍历 求结点个数 求总的结点个数 创建变量求结点 创建静态修饰变量 拆分左右子树加根 求叶子节点的个…

LeetCode【65. 有效数字】

没有完美的傀儡,没有完美的人类,却有绝美的离逝。 有效数字(按顺序)可以分成以下几个部分: 一个 小数 或者 整数(可选)一个 e 或 E ,后面跟着一个 整数 小数(按顺序)可以分成以下几…

2023华为杯研究生数学建模竞赛CDEF题思路+模型代码

全程更新华为杯研赛CDEF题思路模型及代码,大家查看文末名片获取 华为杯C题思路分析 问题一 在每个评审阶段,作品通常都是随机分发的,每份作品需要多位评委独立评审。为了增加不同评审专家所给成绩之间的可比性,不同专家评审的作…

【Java毕设项目】基于SpringBoot+Vue校园便利平台的设计与实现

博主主页:一季春秋博主简介:专注Java技术领域和毕业设计项目实战、Java、微信小程序、安卓等技术开发,远程调试部署、代码讲解、文档指导、ppt制作等技术指导。主要内容:毕业设计(Java项目、小程序等)、简历模板、学习资料、面试题…

3.6+铁死亡+WGCNA+机器学习

今天给同学们分享一篇3.6铁死亡WGCNA机器学习的生信文章“Identification of ferroptosis related biomarkers and immune infiltration in Parkinsons disease by integrated bioinformatic analysis”,这篇文章于2023年3月14日发表在BMC Med Genomics期刊上&#…

【笔记】ubuntu 20.04 + mongodb 4.4.14定时增量备份脚本

环境 ubuntu 20.04mongodb 4.4.14还没实际使用(20230922)后续到10月底如果有问题会修改 原理 只会在有新增数据时生成新的备份日期目录备份恢复时,如果恢复的数据库未删除,则会覆盖数据 准备 准备一个文件夹,用于…

2023华为杯数学建模竞赛E题

一、前言 颅内出血(ICH)是由多种原因引起的颅腔内出血性疾病,既包括自发性出血,又包括创伤导致的继发性出血,诊断与治疗涉及神经外科、神经内科、重症医学科、康复科等多个学科,是临床医师面临的重要挑战。…

Springboot2 Pandas Pyecharts 量子科技专利课程设计大作业

数据集介绍 1.背景 根据《中国科学:信息科学》期刊上的一篇文章,量子通信包括多种协议与应用类型: 基于量子隐形传态与量子存储中继等技术,可实现量子态信息传输,进而构建量子信息网络,已成为当前科研热点&…

成为威胁:网络安全中的动手威胁模拟案例

不断变化的网络威胁形势要求组织为其网络安全团队配备必要的技能来检测、响应和防御恶意攻击。然而,在研究中发现并继续探索的最令人惊讶的事情是,欺骗当前的网络安全防御是多么容易。 防病毒程序建立在庞大的签名数据库之上,只需更改程序内…

聊聊自动化测试路上会遇到的挑战~

一、测试范围 无论是功能测试,还是自动化或者性能测试,第一步要做的,是明确测试范围和需求指标。对于自动化测试来说,特别是UI自动化,并不是所有的功能点都适合做UI自动化。 根据具体的业务情况和项目稳定程度&#…

Unity之Hololens2开发 如何接入的MRTK OpenXR Plugin

一.前言 什么是Hololens? Hololens是由微软开发的一款混合现实头戴式设备,它将虚拟内容与现实世界相结合,为用户提供了沉浸式的AR体验。Hololens通过内置的传感器和摄像头,能够感知用户的环境,并在用户的视野中显示虚拟对象。这使得用户可以与虚拟内容进行互动,将数字信…

conda的安装和使用

参考资料: https://www.bilibili.com/read/cv8956636/?spm_id_from333.999.0.0 https://www.bilibili.com/video/BV1Mv411x775/?spm_id_from333.999.0.0&vd_source98d31d5c9db8c0021988f2c2c25a9620 目录 conda是啥以及作用conda的安装conda的启动conda的配置…

一招解除csdn复制限制

先看这个代码 python读取英文pdf翻译成中文pdf文件导出代码 想要复制代码,csdn有限制怎么办(csdn流氓,无耻) 解除方法 ctrlu 看效果

PIL或Pillow学习1

PIL( Python Imaging Library)是 Python 的第三方图像处理库,由于其功能丰富,API 简洁易用,因此深受好评。 自 2011 年以来,由于 PIL 库更新缓慢,目前仅支持 Python 2.7 版本,这明显…

数据仓库数据库

在当今的数字化时代,数据存储和管理是非常重要的领域。数据仓库和数据库是两个重要的数据存储和管理工具,它们有着不同的特点和用途。 一、数据仓库与数据库的定义 1. 数据仓库 数据仓库,是为企业所有级别的决策制定过程,提供所…

2023华为杯D题——基于Kaya模型的碳排放达峰实证研究

一、前言 化石能源是推动现代经济增长的重要生产要素,经济生产活动与碳排放活动密切相关。充分认识经济增长与碳排放之间的关系对转变生产方式,确定碳达峰、碳中和路径极为必要。本研究在对经济增长与碳排放关系现有研究梳理的基础上,系统地分…

postman发送图片

POSTMAN 如何发送携带图片的请求? 闲话不叙 步骤如下: 新建一个请求,在Headers中添加一对k-v : Content-Type > multipart/form-data 请求的接口: RequestMapping("/fileUploadController")public String fileUpload(MultipartFile fil…

手机无人直播手机用哪些软件系统最好?

最近手机无人直播可是风靡大江南北,只要是一个抖音用户都想装个手机无人直播软件,随时随地开启手机无人直播,抖音8亿用户想想这个市场得有多大,蛋糕有多肥。 那么问题来了,手机无人直播手机用啥软件? 推荐…

Learn Prompt-GPT-4:能力

GPT-4能力大赏​ 常识知识推理​ 一个猎人向南走了一英里,向东走了一英里,向北走了一英里,最后回到了起点。他看到了一只熊,于是开枪打了它。这只熊是什么颜色的? 答案是白色,因为这种情况只可能发生在北…

智慧银行:数字化金融时代的引领者

在当今数字化的时代,金融行业正经历着一场前所未有的变革。传统的银行模式已经不再适用,取而代之的是智慧银行的新兴概念。智慧银行不仅仅是数字化的银行,更是一个全新的金融服务范式,将科技与金融相结合,为客户提供更…