less css预编译语言学习

less语言其实也是css语言的一种,只不过我认为的它是可以用编程化的思维来写样式,所以在大型工程里面需要整体修改一些样式的时候就会很方便,less的几大特色分别是 变量,混合,嵌套,函数和运算。
第一步,引入,less是需要编译的,可以下载插件,利用基于Node.js库,或者更简单的引入less.js文件直接在浏览器端预览。

<link rel="stylesheet/less" type="text/css" href="style.less" />
<script type="text/javascript" src="less.js"></script>

引入有几点要注意的:
1.引入less文件的时候rel要写成”stylesheet/less”;
2.less文件要在js文件之前引入;
3.需要特别注意的是,由于浏览器端使用时是使用ajax来拉取.less文件,因此直接在本机文件系统打开(即地址是file://开头)或者是有跨域的情况下会拉取不到.less文件,导致样式无法生效。
第二步,来使用一下less的基本功能。
变量:

/*变量*/
@color: #4D926F;

#header {
    background: @color;
    width:100px;
    height:100px;
}

这里写图片描述

混合:
个人认为这一点在运用在css3的在多浏览器写前缀的时候很有用,减小了很多工作量和重复的样式编写。在调用.rounded-corners 时可以自定义半径大小。

/*混合*/
.rounded-corners (@radius: 5px) {
    -webkit-border-radius: @radius;
    -moz-border-radius: @radius;
    -ms-border-radius: @radius;
    -o-border-radius: @radius;
    border-radius: @radius;
}

#header {
    background: @color;
    width:100px;
    height:100px;
    .rounded-corners(20px);
}

这里写图片描述

样式嵌套

#header {
    background: @color;
    width:100px;
    height:100px;
    line-height: 50px;
    text-align: center;
    .rounded-corners(20px);
/*嵌套*/
    h2 {
        font-size: 18px;
        font-family: "微软雅黑";
        color:#fff;
        a {
            text-decoration: none;
            color:#F69938;
            &:hover {
                color:#F6E938;
            }
        }
    }
}

以上写法其实编译成CSS的语言就是类似于

#header h2 a{
    text-decoration: none;
    color:#F69938;
}
#header h2 a:hover{
    color:#F6E938;
}

这里写图片描述

函数和运算:
运算提供了加,减,乘,除操作;我们可以做属性值和颜色的运算,这样就可以实现属性值之间的复杂关系。

/*函数*/
@the-border: 1px;
@base-color: #111;
@red:        #842210;

#header{
    color: (@base-color * 3);
    border-left: @the-border*5;
    border-right: (@the-border * 3);
    border-color:#000
}  

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值