CSS预处理器之Less详解

CSS 预处理器

为什么要有 CSS 预处理器

css基本上是设计师的工具,不是程序员的工具。在程序员的眼里,css是很头痛的事情,它并不像其它程序语言,比如说php、javascript等等,有自己的变量、常量、条件语句以及一些编程语法,只是一行行单纯的属性描述,写起来相当的费事,而且代码难以组织和维护。

很自然的,有人就开始在想,能不能给CSS像其他程序语言一样,加入一些编程元素,让CSS能像其他程序语言一样可以做一些预定的处理。这样一来,就有了“CSS预处器(CSS Preprocessor)”。

什么是 CSS 预处理器

是 CSS 语言的超集,比CSS更丰满。

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

通俗的说,CSS预处理器用一种专门的编程语言,进行Web页面样式设计,然后再编译成正常的CSS文件,以供项目使用。CSS预处理器为CSS增加一些编程的特性,无需考虑浏览器的兼容性问题,例如你可以在CSS中使用变量、简单的逻辑程序、函数等等在编程语言中的一些基本特性,可以让你的CSS更加简洁、适应性更强、可读性更佳,更易于代码的维护等诸多好处。

立即学习“前端免费学习笔记(深入)”;

CSS预处理器技术已经非常成熟,而且也涌现出了很多种不同的CSS预处理器语言,比如说:Sass(SCSS)、LESS、Stylus、Turbine、Swithch CSS、CSS Cacheer、DT CSS等。如此之多的CSS预处理器,那么“我应该选择哪种CSS预处理器?”也相应成了最近网上的一大热门话题,在Linkedin、Twitter、CSS-Trick、知呼以及各大技术论坛上,很多人为此争论不休。相比过计我们对是否应该使用CSS预处理器的话题而言,这已经是很大的进步了。

到目前为止,在众多优秀的CSS预处理器语言中就属Sass、LESS和Stylus最优秀,讨论的也多,对比的也多。本文将分别从他们产生的背景、安装、使用语法、异同等几个对比之处向你介绍这三款CSS预处理器语言。相信前端开发工程师会做出自己的选择——我要选择哪款CSS预处理器。

less 的介绍,less 是一款比较流行的预处理 CSS,支持变量、混合、函数、嵌套、循环等特点。

less 的语法

注释

less 的注释可以有两种。

第一种注释:模板注释

 // 模板注释 这里的注释转换成CSS后将会删除

因为 less 要转换为 css才能在浏览器中使用。转换成 css 之后,这种注释会被删除(毕竟 css 不识别这种注释)。

第二种注释:CSS 注释语法

/* CSS 注释语法 转换为CSS后让然保留 */

总结:如果在less中写注释,我们推荐写第一种注释。除非是类似于版权等内容,就采用第二种注释。

定义变量

我们可以把重复使用或经常修改的值定义为变量,在需要使用的地方引用这个变量即可。这样可以避免很多重复的工作量。

(1)在less文件中,定义一个变量的格式:

@变量名: 变量值;        //格式@bgColor: #f5f5f5;      //格式举例

(2)同时,在 less 文件中引用这个变量。

最终,less文件的完整版代码如下:

main.less:// 定义变量@bgColor: #f5f5f5;// 引用变量body{    background-color: @bgColor;}

我们将上面的less文件编译为 css 文件后(下一段讲less文件的编译),自动生成的代码如下:

main.css:body{    background-color: #f5f5f5;}

使用嵌套

在 css 中经常会用到子代选择器,效果可能是这样的:

.container {  width: 1024px;}.container > .row {  height: 100%;}.container > .row a {  color: #f40;}.container > .row a:hover {  color: #f50;}

上面的代码嵌套了很多层,写起来很繁琐。可如果用 less 的嵌套语法来写这段代码,就比较简洁。

嵌套的举例如下:

main.less:.container {  width: @containerWidth;  > .row {    height: 100%;    a {      color: #f40;      &:hover {        color: #f50;      }    }  }  div {    width: 100px;    .hello {      background-color: #00f;    }  }}

将上面的less文件编译为 css 文件后,自动生成的代码如下:

main.css.container {    width: 1024px;}.container > .row {    height: 100%;}.container > .row a {    color: #f40;}.container > .row a:hover {    color: #f50;}.container div {    width: 100px;}.container div .hello {    background-color: #00f;}

相信看了这些案例你已经掌握了方法,更多精彩请关注创想鸟其它相关文章!

相关阅读:

JavaScript里最常用的20条正则表达式

vscode的常用设置

10进制数如何转为16进制

JS如何实现自定义鼠标右击菜单

以上就是CSS预处理器之Less详解的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1545884.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月21日 17:35:28
下一篇 2025年12月21日 17:35:36

相关推荐

  • css3和less的区别是什么

    区别是:1、Less是一门CSS预处理语言,css是一种用来表现HTML或XML等文件样式的计算机语言;2、less扩展了CSS语言,增加了变量、Mixin、函数等特性;3、css可以被浏览器直接识别,less需要先编译为css。 本教程操作环境:windows7系统、CSS3&&H…

    2025年12月24日
    000
  • css三种样式表写法是什么

    css三种样式表写法:1、使用【  】方法;2、使用【】方法;3、使用【 本教程操作环境:windows7系统、css3版,DELL G3电脑。 css三种样式表写法: 方法1 立即学习“前端免费学习笔记(深入)”; 方法2  方法3 样式三 相关学习推荐:css教程 以上就是css三种样式表写法是…

    2025年12月24日 好文分享
    000
  • 关于css样式表及多重样式优先级的介绍

    插入样式表的方法有三种,分别是: 1、外部样式表; 2、内部样式表; 3、内联样式 外部样式表 立即学习“前端免费学习笔记(深入)”; 在使用外部样式表的情况下,你可以通过改变一个文件来改变整个站点的外观。每个页面使用 标签链接到样式表。 标签在(文档的)头部: 实例如下: 浏览器会从文件 myst…

    2025年12月24日
    000
  • 如何使用less实现随机下雪动画详解

    冬天来了,设计师说摇摇乐的场景需要随机下落的雪花动画,第一时间就想到的方法是canvas比较好,项目非常紧急,然而小程序对canvas支持不够友好,容易在项目中出现无法预估的兼容性问题 ,马上又否定了这种想法,想了想用javascript来写随机动画成本又高。既不用canvas也不用javascri…

    2025年12月24日
    000
  • 什么是Sass?如何使用Sass?

    对于一个网页设计的新手来说,可能听说过“sass”这个词。但却不确定sass的作用以及是否可以使用它,本篇文章就给大家介绍一下什么是sass?如何使用sass?让大家对sass有一个简单的理解。 简而言之,Sass是一个CSS预处理器,它将特殊功能(如变量,嵌套规则和mixins(有时称为语法糖))…

    2025年12月24日
    000
  • Less是什么

    Less是一种CSS的扩展和动态样式表语言,CSS预处理器,可以在客户端或服务器端运行,帮助我们自定义,管理和重用网页的样式表;Less是一种开源语言,也是跨浏览器兼容的语言。 本文操作环境:Windows7系统、Dell G3电脑、css3。 本篇文章主要给大家介绍Less是什么?让大家了解Les…

    2025年12月24日
    000
  • CSS3如何实现聊天气泡效果?(代码示例)

    本篇文章给大家带来的内容是介绍css3巧妙实现聊天气泡效果的方法,有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 前一阵子敢玩的 Mobile 页改版完成了,就之前的页面风格更加扁平化,从暗色系为主背景转到亮色背景,去掉更多的阴影,给用户简约的体验风格,哈哈我不是设计师不过多评价啦…

    2025年12月24日 好文分享
    000
  • padding制作图片自适应布局(CSS百分比)

    css知识点:当padding/margin取形式为百分比的值时,无论是left/right,还是top/bottom,都是以父元素的width为参照物的! 一、CSS百分比padding都是相对宽度计算的 在默认的水平文档流方向下,CSS margin和padding属性的垂直方向的百分比值都是相…

    2025年12月24日
    000
  • 如何使用源生css3实现圆环加载进度条

    这次给大家带来如何使用源生css3实现圆环加载进度条,使用源生css3实现圆环加载进度条的注意事项有哪些,下面就是实战案例,一起来看一下。 效果图: 当时的要求是让进度条以扇形渐变的效果加载。我想了半天,好像只有用border-img来做渐变图了,还有一个超笨的方法就是写50个长方形分布在进度条上。…

    2025年12月24日
    000
  • css实现图片切换效果

    本篇文章主要介绍css实现图片切换效果非常不错,不用css,代码比较精简,推荐使用,注意一下多浏览器的兼容性。 代码如下: 纯css图切换 练习 教程来自snwebsite a{ display:block; border:1px solid #cccccc; width:20px; height:…

    好文分享 2025年12月24日
    000
  • 如何使用css固定位置

    本篇文章主要介绍如何使用css固定位置,非常不错,可以方便提示用户等信息,有感兴趣的小伙伴了解一下。 代码如下: 层固定位置练习–by 阿会楠 html,body{ overflow:hidden; padding:0; margin:0; width:100%; height:100%; } #…

    2025年12月24日
    000
  • css中font的缩写

    本篇文章将详细介绍css中font的缩写,有感兴趣的小伙伴参考一下。 实例代码如下: .login_top{height:26px;font:bold 14px/26px “宋体”; border:1px solid #000} .login_top2{height:26px; line-heigh…

    好文分享 2025年12月24日
    000
  • css中Sprites的应用

    本篇文章主要介绍css中sprites的应用,这是一个很简单的应用,不过在设计中,这样做可以减轻服务器的压力,是请求次数减少,是一个不错的方法。 实例代码如下: body { font-family: “Lucida Sans”, “Lucida Sans Unicode”; font-size: …

    好文分享 2025年12月24日
    000
  • 用CSS实现的一张图完成的按钮实例

    本篇文章主要介绍如何用css实现的一张图完成的按钮实例,很好用很奥妙,值得收藏和分享 通过css来读取图片坐标系实现局部背景图,感兴趣的小伙伴参考一下。 网易126登录按钮代码如下: .inp_L1,.inp_L2,{background:url(/upload/20080515201218970.…

    好文分享 2025年12月24日
    000
  • css动画教程

    本篇文章主要向大家介绍如何使用css制作简单的动画,感兴趣的小伙伴参考下. 案例一: 创想鸟 div{width:100px;height:100px;background:red;animation:myfirst 5s;-moz-animation:myfirst 5s; /* Firefox …

    好文分享 2025年12月24日
    000
  • css登录界面美化

    本篇文章主要介绍如何用css美化网站登录界面,需要的小伙伴参考下。 代码如下: 美化登录 *{margin:0;padding:0;}/*去掉页面样式*/ body{color:white;} .content{ background-color:pink; position:absolute;/*…

    好文分享 2025年12月24日
    000
  • css如何实现鼠标滑过缩略图时放大图片

    本篇文章主要介绍css如何实现鼠标滑过缩略图时放大图片,日常购物网站中非常方便实用,有兴趣的小伙伴参考下。 代码如下: www.php.cn 创想鸟 鼠标滑过缩略图时放大图片 本例旨在展示鼠标滑到缩略图上时,放大图片。 @@##@@ 相关推荐: 如何使用HTML+CSS做出鼠标划过就可以显示二级菜单…

    好文分享 2025年12月24日
    000
  • css实现鼠标触发效果

    本片文章主要介绍使用css实现鼠标触发效果,感兴趣的朋友参考下。 代码如下: css打造鼠标触发效果 <!– startList = function() { if (document.all&&document.getElementById) { navRoot = doc…

    好文分享 2025年12月24日
    000
  • 详细介绍有关CSS页面布局技巧

    下面是我给大家整理的详细介绍有关CSS页面布局技巧,有兴趣的同学可以去看看。 设置文本样式 1、字体类型 绝大多数用户系统默认支持的中文字体有宋体、黑体、幼圆、楷体;默认支持的英文字体有arial、arial black、arial narrow、 century gothic 、comic san…

    好文分享 2025年12月24日
    000
  • 简单易懂,DIV+CSS架构网站的7种版面布局形式,一语道破

    下面是我给大家整理的div+css架构网站的7种版面布局形式,有兴趣的同学可以去看看。 1.“T”结构布局形式。所谓“T”结构,就是指页面顶部为横条网站标志+广告条,下方左面为主菜单,右面显示内容的布局,整体效果类似英文字母“T”,所以称之为“T,形布局。这是网页设计中用得最广泛的一种布局方式。这种…

    好文分享 2025年12月24日
    000

发表回复

登录后才能评论
关注微信