less入門ノート
3888 ワード
一、入れ子
1、あるセレクタに別のセレクタをネストして、要素間の階層関係を表現します.たとえば、lessファイルに次のように書きます.
対応するcssコードを得る:
2、&の用法コア:&記号はネストされた外層要素自体を表す.例1マウスサスペンション:lessでhoverスタイルの元の書き方:
ネストされた書き方
例2あげる.left要素自体が追加されます.padding_leftスタイルエラー書き方:
正しい書き方:
二、変数
変数を使用すると、一連の汎用スタイルを個別に定義し、必要に応じて呼び出すことができます.1、基本用法設定の3つの変数はそれぞれ:@width@borderStyle@color lessファイルに書く:
コンパイルcssファイル後
2、変数の作用域①括弧中の変数の作用域は現在の括弧②互いにネストされた括弧中であり、内部括弧では外部括弧で定義された変数を使用することができる.外部カッコでは、内部カッコで定義された変数は使用できません.
三、混合
1、通常の混合は1つの定義されたclassAを別のclassBに導入し、classBがclassAのすべての属性を継承することを簡単に実現する.例:lessファイル
2、パラメータ付き混合(パラメータ設定のデフォルト);ここでのパラメータは変数を指します.lessファイル:
3、既定値のパラメータ混合
4、@arguments変数、複数の変数名の代わりに使用
5、パターンマッチング
四、Math関数
1、round()作用:四捨五入例えば:
2、ceil()作用:上向きに整える3、floor()作用:下向きに整える
五、ネーミングスペース
適用シーン:テーマスタイルの切り替え.
六、注釈
七、@import
役割:B.lessファイルにA.lessファイルを導入します.例:
この場合、A.lessで定義した変数をB.lessで直接使用できます.
八、コンパイルを避ける(演算記号などをエスケープ処理する)
lessファイル
対応するcssファイルが生成されます.
明らかに、これは私たちが望んでいる結果ではありません.
正しい方法は、lessファイルで演算子を''で包み、前に~を付けます.
.cssファイル
1、あるセレクタに別のセレクタをネストして、要素間の階層関係を表現します.たとえば、lessファイルに次のように書きます.
.left{
float:left;
.padding_left{
padding-left:20px;
}
}
対応するcssコードを得る:
.left{
float:left;
}
.left .padding_left{
padding-left:20px;
}
2、&の用法コア:&記号はネストされた外層要素自体を表す.例1マウスサスペンション:lessでhoverスタイルの元の書き方:
a{
color:#fff;
}
a:hover{
color:green;
}
ネストされた書き方
a{
color:#fff;
&:hover{
color:green;
}
}
例2あげる.left要素自体が追加されます.padding_leftスタイルエラー書き方:
.left{
float:left;
.padding_left{
padding-left:20px;/* .left .padding_left */
}
}
正しい書き方:
.left{
float:left;
&.padding_left{
padding-left:20px;/* .left */
}
}
二、変数
変数を使用すると、一連の汎用スタイルを個別に定義し、必要に応じて呼び出すことができます.1、基本用法設定の3つの変数はそれぞれ:@width@borderStyle@color lessファイルに書く:
@width:2px;
@style:solid;
@color:red;
.box{
width:300px;
height:100px;
border:@width @style @color;
}
コンパイルcssファイル後
.box{
width:300px;
height:100px;
border:2px solid red;
}
2、変数の作用域①括弧中の変数の作用域は現在の括弧②互いにネストされた括弧中であり、内部括弧では外部括弧で定義された変数を使用することができる.外部カッコでは、内部カッコで定義された変数は使用できません.
三、混合
1、通常の混合は1つの定義されたclassAを別のclassBに導入し、classBがclassAのすべての属性を継承することを簡単に実現する.例:lessファイル
.classA{
classA ;
}
.classB{
.classA;/* classB classA */
classB ;
}
2、パラメータ付き混合(パラメータ設定のデフォルト);ここでのパラメータは変数を指します.lessファイル:
.border(@width,@color){
border:@width solid @color;
}
.box1{
.border(1px,green);
}
.box2{
.border(2px,pink);
}
3、既定値のパラメータ混合
.border(@width:1px,@style:solid){
border:@width @style yellow;
}
.box1{
.border();/* 1px solid yellow*/
}
.box2{
.border(2px);/* , border:2px solid yellow;*/
}
.box3{
.border(3px,dotted);/* , */
}
4、@arguments変数、複数の変数名の代わりに使用
.border(@width:1px,@style:solid){
border:@arguments green;
}
.box1{
.border();/*border:1px solid green;*/
}
.box2{
.border(dotted,1px);/*border:dotted 1px green;*/
}
.box3{
.border(dotted);/*border:dotted solid green;*/
}
5、パターンマッチング
.border(top,@width:1px){
border-top:@width solid green;
}
.border(right,@width:1px){
border-right:@width solid blue;
}
.border(bottom,@width:1px){
border-bottom:@width solid pink;
}
.border(left,@width:1px){
border-left:@width solid orange;
}
.border(@_,@width:1px){
/* */
width:100px;
}
.box1{
.border(top,5px);/*border-top:5px solid green;width:100px;*/
}
.box2{
.border(right);/*border-right:1px solid pink;width:100px;*/
}
四、Math関数
1、round()作用:四捨五入例えば:
width:round(5.5)*1px;
2、ceil()作用:上向きに整える3、floor()作用:下向きに整える
五、ネーミングスペース
適用シーン:テーマスタイルの切り替え.
.blue{
.button{
background:blue;
}
}
.red{
.button{
background:red;
}
}
.box{
.red .button;/* .red */
}
六、注釈
// , css ( )
/* , CSS */
七、@import
役割:B.lessファイルにA.lessファイルを導入します.例:
@import "A.less"
この場合、A.lessで定義した変数をB.lessで直接使用できます.
八、コンパイルを避ける(演算記号などをエスケープ処理する)
lessファイル
@rem:32rem;
.box{
width:@rem;
font:(12/@rem)/(20/@rem) ' ';
}
対応するcssファイルが生成されます.
.box{
width:32rem;
font:(12/32rem)/(20/32rem) ' ';
}
明らかに、これは私たちが望んでいる結果ではありません.
正しい方法は、lessファイルで演算子を''で包み、前に~を付けます.
@rem:32rem;
.box{
width:@rem;
font:(12/@rem)~'/'(20/@rem) ' ';
}
.cssファイル
.box{
width:32rem;
font:0.375rem/0.625rem ' ';