zoukankan      html  css  js  c++  java
  • less基本语法

    什么是LESSCSS

    LESSCSS是一种动态样式语言,属于CSS预处理语言的一种,它使用类似CSS的语法,为CSS的赋予了动态语言的特性,如变量、继承、运算、函数等,更方便CSS的编写和维护。

    语言特性

    1、变量:

    变量允许我们单独定义一系列通用的样式,然后在需要的时候去调用。所以在做全局样式调整的时候我们可能只需要修改几行代码就可以了

    less中声明变量一定要用@,@变量名:变量;

     1 LESS源码:
     2 
     3 @color: #4D926F;
     4 
     5 #header {
     6     color: @color;
     7 }
     8 h2 {
     9     color: @color;
    10 }
    1 编译后的CSS:
    2 
    3 #header {
    4     color: #4D926F;
    5 }
    6 h2 {
    7     color: #4D926F;
    8 }

    2、混合(Mixins)

    混合可以将一个定义好的class A轻松的引入到另一个class B中,从而简单实现class B继承class A中的所有属性。

    我们还可以带参数地调用,就像使用函数一样。

     1 /*第一种:不带默认值*/
     2 .box1{
     3     width: 100px; height: 100px;
     4     margin: 30px auto;
     5     .border
     6 }
     7 .box2{
     8     width: 100px; height: 100px;
     9     margin: 30px auto;
    10     .border01(30px);
    11 }
    12 .border{
    13     border: 1px solid red;
    14 }
    15 .border01(@border_width){
    16     border: @border_width solid red;
    17 }
     1 LESS源码:
     2 /*带默认值:需要变得时候再去变化或者去改*/
     3 .rounded-corners (@radius: 5px) {
     4     -webkit-border-radius: @radius;
     5     -moz-border-radius: @radius;
     6     -ms-border-radius: @radius;
     7     -o-border-radius: @radius;
     8     border-radius: @radius;
     9 }
    10 
    11 #header {
    12     .rounded-corners;
    13 }
    14 #footer {
    15     .rounded-corners(10px);//在这里变量也可以是多个中间用,隔开
    16 }
    17 编译后的CSS:
    18 
    19 #header {
    20     -webkit-border-radius: 5px;
    21     -moz-border-radius: 5px;
    22     -ms-border-radius: 5px;
    23     -o-border-radius: 5px;
    24     border-radius: 5px;
    25 }
    26 #footer {
    27     -webkit-border-radius: 10px;
    28     -moz-border-radius: 10px;
    29     -ms-border-radius: 10px;
    30     -o-border-radius: 10px;
    31     border-radius: 10px;
    32 }

    3、嵌套

    我们可以在一个选择器中嵌套另一个选择器来实现继承,这样很大程度减少了代码量,并且代码看起来更加的清晰。

     1 LESS源码:
     2 
     3 #header {
     4     h1 {
     5         font-size: 26px;
     6         font-weight: bold;
     7     }
     8     p {
     9         font-size: 12px;
    10         a {
    11             text-decoration: none;
    12             &:hover {
    13                 border- 1px
    14             }
    15         }
    16     }
    17 }
    18 编译后的CSS:
    19 
    20 #header h1 {
    21     font-size: 26px;
    22     font-weight: bold;
    23 }
    24 #header p {
    25     font-size: 12px;
    26 }
    27 #header p a {
    28     text-decoration: none;
    29 }
    30 #header p a:hover {
    31     border-width: 1px;
    32 }

    4、函数和运算

    运算提供了加,减,乘,除操作;我们可以做属性值和颜色的运算,这样就可以实现属性值之间的复杂关系。LESS中的函数一一映射了JavaScript代码,如果你愿意的话可以操作属性值。

     1 LESS源码:
     2 
     3 @the-border: 1px;
     4 @base-color: #111;
     5 @red:        #842210;
     6 
     7 #header {
     8     color: (@base-color * 3);
     9     border-left: @the-border;
    10     border-right: (@the-border * 2);
    11 }
    12 #footer {
    13     color: (@base-color + #003300);
    14     border-color: desaturate(@red, 10%);
    15 }
    16 编译后的CSS:
    17 
    18 #header {
    19     color: #333;
    20     border-left: 1px;
    21     border-right: 2px;
    22 }
    23 #footer {
    24     color: #114411;
    25     border-color: #7d2717;
    26 }
  • 相关阅读:
    js debounce防抖技术
    我在项目中es6中数组的常用方法
    windows 部署Nginx转发http2.0协议
    AES加密,C#和java相同
    asp:Button js弹出提示框信息
    服务器不重启安装Asp.net Core 程序包
    C# string.Join的用法
    IIS部署asp.net core webapi
    ASP.net 加载不了字体Failed to load resource: the server responded with a status of 404 (Not Found)
    Windows Redis 取消保护模式C#进行访问
  • 原文地址:https://www.cnblogs.com/haonanZhang/p/6375798.html
Copyright © 2011-2022 走看看