LESSの基本的なことはこちらの記事を参考にしてください。
CSSをシンプルに書くことができるLESS使ってみた
使い方
使用するlessファイルと同じ階層に「mixins.less」を配置して、ファイルの先頭に以下を追加します。
less
@import "mixins.less";
css3プロパティ
準備ができたところで早速使ってみましょう。
最初はCSS3で追加された「border-radius」で角丸にしてみます。
たとえば「id="box1"」でマークアップした「div」があります。
html
<div id="box1"></div>
通常のcssでしたら次のようになりますよね。
css
#box1 {
width: 200px;
height: 200px;
background: #999;
/* 角丸 */
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
}
Bootstrapのmixins.lessをインポートすれば次のように記述することができます。
less
@import "mixins.less";
#box1 {
width: 200px;
height: 200px;
background: #999;
.border-radius();
}
角丸にしてるのは最後の「.border-radius();」です。
角丸は初期値(何も指定しない)で5pxになってます。
この値を変更したい場合は「()」の中に好きな数値を入れます。
.border-radius(25px);
ボックスシャドウも同じ感覚で使用できます。
.box-shadow(5px 5px 10px rgba(0,0,0,0.3));
その他は以下の表を確認ください。
| .border-radius() | @radius: 5px |
|---|---|
| .box-shadow() | @shadow: 0 1px 3px rgba(0,0,0,.25) |
| .transition() | @transition |
| .rotate() | @degrees |
| .scale() | @ratio |
| .translate() | @x: 0, @y: 0 |
| .background-clip() | @clip |
| .background-size() | @size |
| .box-sizing() | @boxmodel |
| .user-select() | @select |
| .resizable() | @direction: both |
| .content-columns() | @columnCount, @columnGap: @gridColumnGutter |
グラデーション
css3のグラデーションは結構複雑なものも作れますが、よく使用するのは単純な2点とか3点のグラデーションがほとんどですね。
Bootstrapには単純なグラデーションを作成するmixinがあります。
基本的な2点の縦方向グラデーションは次のように指定します。
#gradient > .vertical(#ccc, #333);
3点の場合2点目のカラーの次に位置を設定します。
#gradient > .vertical-three-colors(#ccc, #fff, 50%, #333);
横方向は「horizontal」です。
#gradient > .horizontal(#ccc, #333);
「radial」だと円タイプのグラデーションです。
#gradient > .radial(#ccc, #333)
その他は以下の表を確認ください。
| #translucent > .background() | @color: @white, @alpha: 1 |
|---|---|
| #translucent > .border() | @color: @white, @alpha: 1 |
| #gradient > .vertical() | @startColor, @endColor |
| #gradient > .horizontal() | @startColor, @endColor |
| #gradient > .directional() | @startColor, @endColor, @deg |
| #gradient > .vertical-three-colors() | @startColor, @midColor, @colorStop, @endColor |
| #gradient > .radial() | @innerColor, @outerColor |
| #gradient > .striped() | @color, @angle |
| #gradientBar() | @primaryColor, @secondaryColor |
ユーティリティー系
css3以外にもよく使うプロパティはUtilitiesとしてまとめられています。
| .clearfix() | clearfixはhtml側でクラスを指定するのが普通ですが、cssでも一行でいけます。 |
|---|---|
| .center-block() | ボックスのセンター配置。 |
| .text-overflow() | flortでテキスト配置したときに回り込まないようにするやつ。 |
| .hide-text() | 画像置き換えするときに「-9999px」しないやつ。 |
| .opacity() | 「.opacity(50)」で半透明。 |
| .size() | 「.size(200px, 300px);」で 「width:200px; height: 300px」 |
| .square() | 正方形にするならこちら。 |
その他まだいろいろありますので下記公式ページか、mixinsファイルをご確認ください。
Using LESS with Bootstrap

