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; } }