前端技能(七)——less 教程

[复制链接]
发表于 2026-1-26 05:33:22 | 显示全部楼层 |阅读模式
一、less简介

1. less是什么?

less是一种动态样式语言,属于css预处置惩罚器的范畴,它扩展了CSS语言,增长了变量、Mixin、函数等特性,使CSS 更易维护和扩展LESS 既可以在 客户端 上运行 ,也可以借助Node.js在服务端运行。
less的中文官网:https://lesscss.cn/
2. less编译工具

koala 官网 http://koala-app.com/
3. less中的嵌套规则

1.根本嵌套规则
⑴ css中的标签嵌套的写法

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6.     <title>Document</title>
  7.     <style>
  8.         *{
  9.    
  10.    
  11.             margin: 0;
  12.             padding: 0;
  13.         }
  14.         #wrap{
  15.    
  16.    
  17.             position: relative;
  18.             width: 300px;
  19.             height: 400px;
  20.             border: 1px solid;
  21.             margin: 0 auto;
  22.         }
  23.         #wrap .inner{
  24.    
  25.    
  26.             position: absolute;
  27.             left: 0;
  28.             right: 0;
  29.             top: 0;
  30.             bottom: 0;
  31.             margin: auto;
  32.             background-color: pink;
  33.             height: 100px;
  34.             width: 100px;
  35.         }
  36.     </style>
  37. </head>
  38. <body>
  39.     <div id="wrap">
  40.         <div class="inner">
  41.         </div>
  42.     </div>
  43. </body>
  44. </html>
复制代码

⑵ less中嵌套标签中样式设置的写法


  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6.     <title>Document</title>
  7.     <style type="text/less">
  8.         *{
  9.    
  10.    
  11.             margin: 0;
  12.             padding: 0;
  13.         }
  14.         #wrap{
  15.    
  16.    
  17.             position: relative;
  18.             width: 300px;
  19.             height: 400px;
  20.             border: 1px solid;
  21.             margin: 0 auto;
  22.             .inner{
  23.    
  24.    
  25.                 position: absolute;
  26.                 left: 0;
  27.                 right: 0;
  28.                 top: 0;
  29.                 bottom: 0;
  30.                 margin: auto;
  31.                 background-color: pink;
  32.                 height: 100px;
  33.                 width: 100px;
  34.             }
  35.         }
  36.     </style>
  37. </head>
  38. <body>
  39.     <div id="wrap">
  40.         <div class="inner">
  41.         </div>
  42.     </div>
  43. </body>
  44. <script src="/less/less.min.js" type="text/javascript"></script>
  45. </html>
复制代码
样式如下:

4. 使用koala将less文件编译成css文件

⑴ 先将之前的less样式拆分到css文件夹中的test.less文件中

拆分前的:

拆分后的

test.less
  1. *{
  2.    
  3.    
  4.     margin: 0;
  5.     padding: 0;
  6. }
  7. #wrap{
  8.    
  9.    
  10.     position: relative;
  11.     width: 300px;
  12.     height: 400px;
  13.     border: 1px solid;
  14.     margin: 0 auto;
  15.     .inner{
  16.    
  17.    
  18.         position: absolute;
  19.         left: 0;
  20.         right: 0;
  21.         top: 0;
  22.         bottom: 0;
  23.         margin: auto;
  24.         background-color: pink;
  25.         height: 100px;
  26.         width: 100px;
  27.     }
  28. }
复制代码
test.html
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6.     <title>Document</title>
  7.     <link rel="stylesheet" type="text/less" href="css/test.less"/>
  8. </head>
  9. <body>
  10.     <div id="wrap">
  11.         <div class="inner">
  12.         </div>
  13.     </div>
  14. </body>
  15. <script src="/less/less.min.js" type="text/javascript"></script>
  16. </html>
复制代码
效果为:

⑵ 通过koala将.less文件编译成.css文件




将.less编译后天生的.css文件引入的html文件中

test.css文件
  1. * {
  2.    
  3.    
  4.   margin: 0;
  5.   padding: 0;
  6. }
  7. #wrap {
  8.    
  9.    
  10.   position: relative;
  11.   width: 300px;
  12.   height: 400px;
  13.   border: 1px solid;
  14.   margin: 0 auto;
  15. }
  16. #wrap .inner {
  17.    
  18.    
  19.   position: absolute;
  20.   left: 0;
  21.   right: 0;
  22.   top: 0;
  23.   bottom: 0;
  24.   margin: auto;
  25.   background-color: pink;
  26.   height: 100px;
  27.   width: 100px;
  28. }
复制代码
test.html文件
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6.     <title>Document</title>
  7.     <link rel="stylesheet" type="text/css" href="css/test.css"/>
  8. </head>
  9. <body>
  10.     <div id="wrap">
  11.         <div class="inner">
  12.         </div>
  13.     </div>
  14. </body>
  15. <script src="/less/less.min.js" type="text/javascript"></script>
  16. </html>
复制代码
效果如下:

5. less中的解释

以 // 开头的解释,不会被编译到css文件中
以 /**/包裹的解释会被编译到css文件中
6. less中的变量

使用@来声明一个变量:@pink:pink;
1.作为平常属性值来使用: @pink
2.作为选择器和属性名来使用: @{selector的值}
3.作为URL: @{url}
.less倒霉用变量和.less使用变量对比

编译前的.less文件和编译后天生的.css文件对比

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!qidao123.com:ToB企服之家,中国第一个企服评测及软件市场,开放入驻,技术点评得现金

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表