less学习
- // 1.变量:颜色可做+-
- // from
- @nice-blue: #5B83AD;
- @light-blue: @nice-blue + #111;
- #header { color: @light-blue; }
- // to
- #header { color: #6c94be;}
- // 2.混入(Mixins),#id,.class的样式直接添加
- // from
- .bordered {
- border-top: dotted 1px black;
- border-bottom: solid 2px black;
- }
- #backgroundcolor {
- background-color: #fcf;
- }
- #menu a {
- color: #111;
- .bordered;
- #backgroundcolor;
- }
- // 2.1 带参数混入
- .border-radius (@radius) {
- border-radius: @radius;
- -moz-border-radius: @radius;
- -webkit-border-radius: @radius;
- }
- #header {
- .border-radius(4px);
- }
- .button {
- .border-radius(6px);
- }
- // 3.嵌套规则
- // from
- #header {
- color: black;
- .navigation {
- font-size: 12px;
- }
- .logo {
- width: 300px;
- }
- }
- // to
- #header {
- color: black;
- }
- #header .navigation {
- font-size: 12px;
- }
- #header .logo {
- width: 300px;
- }
- // 套用伪类
- .clearfix {
- display: block;
- zoom: 1;
- &:after {
- content: " ";
- display: block;
- font-size: 0;
- height: 0;
- clear: both;
- visibility: hidden;
- }
- }
- // 4.运算:任何数字、颜色或者变量都可以参与运算。
- @base: 5%;
- @filler: @base * 2;
- @other: @base + @filler;
- // color: #888 / 4;
- // background-color: @base-color + #111;
- // height: 100% / 2 + @filler;
- // 5.函数 percentage, saturate, spin, lighten
- @base: #f04615;
- @width: 0.5;
- .class {
- width: percentage(@width); // returns `50%`
- color: saturate(@base, 5%);
- background-color: spin(lighten(@base, 25%), 8);
- }
- // 6.命名空间和访问器
- #bundle {
- .button {
- display: block;
- border: 1px solid black;
- background-color: grey;
- &:hover {
- background-color: white
- }
- }
- .tab { ... }
- .citation { ... }
- }
- #header a {
- color: orange;
- #bundle > .button;//引入
- }
- // 7.作用域:拥有块级作用域{}
- @var: red;
- #page {
- @var: white;
- #header {
- color: @var; // white
- }
- }
- #footer {
- color: @var; // red
- }
- // 8.导入import, 同一个文件只能导入一次,@import xx 只有第一次语句有效
- @import "lib.css";
- @import "lib"; //lib.less;
- @imported-color: red;
- h1 { color: green; }
- @import "library.less" screen and (max-width: 400px); // 通过media query指定的import
- @import "library.less"; // 无media query的import
- .class {
- color: @importedColor; // 使用导入的变量
- }
- // to
- // 对应通过media query指定的import
- @media screen and (max-width: 400px) {
- h1 { color: green; }
- }
- // 对应无media query的import
- h1 { color: green; }
- .class {
- // 使用导入的变量
- color: #ff0000;
- }
- // 8.1 在规则中导入
- pre {
- @import "library.less";
- color: @importedColor;
- }
- // 9.字符串插值
- @base-url: "http://assets.fnord.com";
- background-image: url("@{base-url}/images/bg.png");
- // 10.选择器插值
- @name: blocked;
- .@{name} {
- color: black;
- }
- // 11.media query作为变量
- @singleQuery: ~"(max-width: 500px)";
- @media screen, @singleQuery {
- set {
- padding: 3 3 3 3;
- }
- }
- // to
- @media screen, (max-width: 500px) {
- set {
- padding: 3 3 3 3;
- }
- }
less学习的更多相关文章
- 从直播编程到直播教育:LiveEdu.tv开启多元化的在线学习直播时代
2015年9月,一个叫Livecoding.tv的网站在互联网上引起了编程界的注意.缘于Pingwest品玩的一位编辑在上网时无意中发现了这个网站,并写了一篇文章<一个比直播睡觉更奇怪的网站:直 ...
- Angular2学习笔记(1)
Angular2学习笔记(1) 1. 写在前面 之前基于Electron写过一个Markdown编辑器.就其功能而言,主要功能已经实现,一些小的不影响使用的功能由于时间关系还没有完成:但就代码而言,之 ...
- ABP入门系列(1)——学习Abp框架之实操演练
作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...
- 消息队列——RabbitMQ学习笔记
消息队列--RabbitMQ学习笔记 1. 写在前面 昨天简单学习了一个消息队列项目--RabbitMQ,今天趁热打铁,将学到的东西记录下来. 学习的资料主要是官网给出的6个基本的消息发送/接收模型, ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- Unity3d学习 制作地形
这周学习了如何在unity中制作地形,就是在一个Terrain的对象上盖几座小山,在山底种几棵树,那就讲一下如何完成上述内容. 1.在新键得项目的游戏的Hierarchy目录中新键一个Terrain对 ...
- 《Django By Example》第四章 中文 翻译 (个人学习,渣翻)
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:祝大家新年快乐,这次带来<D ...
- 菜鸟Python学习笔记第一天:关于一些函数库的使用
2017年1月3日 星期二 大一学习一门新的计算机语言真的很难,有时候连函数拼写出错查错都能查半天,没办法,谁让我英语太渣. 关于计算机语言的学习我想还是从C语言学习开始为好,Python有很多语言的 ...
- 多线程爬坑之路-学习多线程需要来了解哪些东西?(concurrent并发包的数据结构和线程池,Locks锁,Atomic原子类)
前言:刚学习了一段机器学习,最近需要重构一个java项目,又赶过来看java.大多是线程代码,没办法,那时候总觉得多线程是个很难的部分很少用到,所以一直没下决定去啃,那些年留下的坑,总是得自己跳进去填 ...
- node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理
一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...
随机推荐
- Linux CentOS 配置JDK环境
一.下载JDK 下载JDK的方式有两种: 1.Linux中使用wget下载 1.使用命令安装wget yum install wget 2.下载 wget 'http://download.oracl ...
- JAVA构造时成员初始化的陷阱
让我们先来看两个类:Base和Derived类.注意其中的whenAmISet成员变量,和方法preProcess(). 情景1:(子类无构造方法) class Base { Base() { pre ...
- http status code
属于转载 http status code:200:成功,服务器已成功处理了请求,通常这表示服务器提供了请求的网页 404:未找到,服务器未找到 201-206都表示服务器成功处理了请求的状态代码,说 ...
- 关于SMARTFORMS文本编辑器出错
最近在做ISH的一个打印功能,SMARTFORM的需求本身很简单,但做起来则一波三折. 使用环境是这样的:Windows 7 64bit + SAP GUI 740 Patch 5 + MS Offi ...
- iOS 多线程之GCD的使用
在iOS开发中,遇到耗时操作,我们经常用到多线程技术.Grand Central Dispatch (GCD)是Apple开发的一个多核编程的解决方法,只需定义想要执行的任务,然后添加到适当的调度队列 ...
- SQL 数据优化索引建suo避免全表扫描
首先什么是全表扫描和索引扫描?全表扫描所有数据过一遍才能显示数据结果,索引扫描就是索引,只需要扫描一部分数据就可以得到结果.如果数据没建立索引. 无索引的情况下搜索数据的速度和占用内存就会比用索引的检 ...
- MongoDB学习笔记三—增删改文档上
插入insert 单条插入 > db.foo.insert({"bar":"baz"}) WriteResult({ }) 批量插入 > db.fo ...
- Merge Sorted Array
Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note:Yo ...
- WPF自定义控件第一 - 进度条控件
本文主要针对WPF新手,高手可以直接忽略,更希望高手们能给出一些更好的实现思路. 前期一个小任务需要实现一个类似含步骤进度条的控件.虽然对于XAML的了解还不是足够深入,还是摸索着做了一个.这篇文章介 ...
- MVVM大比拼之AngularJS源码精析
MVVM大比拼之AngularJS源码精析 简介 AngularJS的学习资源已经非常非常多了,AngularJS基础请直接看官网文档.这里推荐几个深度学习的资料: AngularJS学习笔记 作者: ...