2017-3-21 less

混合

1、定义一个带参数的属性集合

LESS:

.bg-blue () {
  background-color: blue;
}

.main {
  width: 100%;
  height: 300px;
  .bg-blue;
}

CSS:

.main {
  width: 100%;
  height: 300px;
  background-color: blue;
}

2、

LESS :

.border (@a: 0, @b: solid, @c: #000) { @d: @a @b @c;
        box-shadow: @d;
        -webkit-box-shadow: @d;
        -moz-box-shadow: @d;
}
.box { @base: #f938ab;
        color: saturate(@base, 5%);
        border-color: lighten(@base, 30%);
        div { 
            .border(1, solid,#000) 
        }
}

CSS:

.box {
 color: #fe33ac;
 border-color: #fdcdea;
}
.box div {
 box-shadow: 1 solid #000;
 -webkit-box-shadow: 1 solid #000;
 -moz-box-shadow: 1 solid #000;
}

3 、

LESS:

.boxShadow(@x:0,@y:0,@blur:1px,@color:#000){
        -moz-box-shadow: @arguments;
        -webkit-box-shadow: @arguments;
        box-shadow: @arguments;
}
.main {
        .boxShadow(2px,2px,3px,#f36);
}
.top {
        .boxShadow(5px,5px,6px,#f60);
}

CSS:

.main {
  box-shadow: 2px 2px 3px #f36;
}
.top {
  box-shadow: 5px 5px 6px #f60;
}

Functions & Operations

1、

LESS:

@the-border: 1px;
@base-color: #111;
@red: #842210;
#header {
    color: @base-color *3;
    border: 1px solid desaturate(@red,100%);
    border-width: @the-border @the-border*2 @the-border*3 @the-border;              
    border-color:desaturate(@red,100%) @red lighten(@red, 10%) darken(@red, 30%);   
}

CSS:

#header {
    color: #333;
    border: 1px solid #4a4a4a;
    border-width: 1px 2px 3px 1px;
    border-color: #4A4A4A #842210 #B12E16 #000000;
}

2 、

#bundle {
      .button () {
          display: block;
          border: 1px solid black;
                        background-color: grey;
                        &:hover { background-color: white }
                      }
                      .tab { ... }
                      .citation { ... }
                    }

练习

HTML :

<div id="top">
            <div class="top-nav">
                <div class="f-l">
                    <a href="">菜单一</a>
                    <a href="">菜单二</a>
                    <a href="">菜单三</a>
                    <a href="">菜单四</a>
                </div>
                <div class="f-r">
                    <a href="">菜单五</a>
                    <a href="">菜单六</a>
                    <a href="">菜单七</a>
                    <a href="">菜单八</a>
                </div>
            </div>
            <div class="top-img">
                <div class="top-con-bg">
                    <div class="top-content">
                        <span href="">Hello world!</span>
                    </div>
                </div>
            </div>
        </div>
        <div id="main">
            <div class="pic-detail">
                <ul>
                    <li><a href="">![](images/U996P30DT20170313091204.jpg)</a></li>
                    <li>
                        <a href="">
                            <ul>
                                <li>111111111111</li>
                                <li>222222222222</li>
                                <li>333333333333</li>
                                <li>444444444444</li>
                                <li>555555555555</li>
                            </ul>
                        </a>
                    </li>
                    <li>
                        <a href="">
                            <ul>
                                <li>111111111111</li>
                                <li>222222222222</li>
                                <li>333333333333</li>
                                <li>444444444444</li>
                                <li>555555555555</li>
                            </ul>
                        </a>
                    </li>
                    <li><a href="">![](images/U996P30DT20170313091204.jpg)</a></li>
                </ul>
            </div>
        </div>
        <div id="foot">
            <div class="footer">
                <P>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA</P>
            </div>
        </div>

LESS :

@blue:#191970; 

@lightblue:#4169E1;

@white:#fff;

.td-none {
    text-decoration: none;
}

body {
    margin: 0;
    padding: 0;
    font-size: 14px;
    color: #000;
}

.txt {
    width: 100px;
    height: 30px;
    text-align: center;
    display: block;
    float: left;
    line-height: 30px;
    color: @white;
    .td-none;
} 
.f-l {
    float: left;
}
.f-r {
    float: right;
}

.size {
    width: 500px;
    height: 500px;
}

#top {
    width: 100%;
    background-color: @blue;
    overflow: hidden;
    .top-nav {
        width: 1000px;
        margin: 0 auto;
        overflow: hidden;
        background-color: @lightblue;
        .f-l {
            a {
                .txt;
            }
        }
        .f-r {
            a {
                .txt;
            }
        }
    }
    .top-img {
        width: 100%;
        margin: 0 auto;
        height: 400px;
        background: url(../images/7adb7f4e8f5a6aa62c9f3c4ddd950bc6.png) no-repeat;
        .top-con-bg{
            width: 1000px;
            height: 100%;
            margin: 0 auto;
            background-color: rgba(0, 0, 0, 0.3);
            padding-top: 50px;
            .top-content {
                width: 800px;   
                margin: 0 auto;
                border: 5px solid #fff;
                text-align: center;
                padding: 125px 0;
                span {
                    font-size: 40px;
                    color: @white;
                }
            }
        }
    }
}

#main {
    width: 100%;
    overflow: hidden;
    background-color: lighten(@blue, 60%);
    .pic-detail {
        width: 1000px;
        margin: 0 auto;
        overflow: hidden;
        ul{
            list-style-type: none;
            margin: 0;
            padding: 0;
            li {
                float: left;
                .size;
                a {
                        background-color: @white;
                        display: block;
                        .size;
                        ul {
                            width: 420px;
                            height: 420px;
                            padding: 40px 0;
                            li {
                                height: 62px;
                                line-height: 62px;
                                font-size: 40px;
                                color: @white;
                                margin: 11px 0;
                                background-color: #483D8B;
                                padding: 0 20px;
                            }
                        }
                  img {
                            .size;
                    }
                }
            }
        }
    }
}

#foot {
    width: 100%;
    .footer {
        width: 1000px;
        margin: 0 auto;
        p {
            line-height: 30px;
            height: 30px;
            text-align: center;
        }
    }
}

CSS:

.td-none {
  text-decoration: none;
}
body {
  margin: 0;
  padding: 0;
  font-size: 14px;
  color: #000;
}
.txt {
  width: 100px;
  height: 30px;
  text-align: center;
  display: block;
  float: left;
  line-height: 30px;
  color: #fff;
  text-decoration: none;
}
.f-l {
  float: left;
}
.f-r {
  float: right;
}
.size {
  width: 500px;
  height: 500px;
}
#top {
  width: 100%;
  background-color: #191970;
  overflow: hidden;
}
#top .top-nav {
  width: 1000px;
  margin: 0 auto;
  overflow: hidden;
  background-color: #4169E1;
}
#top .top-nav .f-l a {
  width: 100px;
  height: 30px;
  text-align: center;
  display: block;
  float: left;
  line-height: 30px;
  color: #fff;
  text-decoration: none;
}
#top .top-nav .f-r a {
  width: 100px;
  height: 30px;
  text-align: center;
  display: block;
  float: left;
  line-height: 30px;
  color: #fff;
  text-decoration: none;
}
#top .top-img {
  width: 100%;
  margin: 0 auto;
  height: 400px;
  background: url(../images/7adb7f4e8f5a6aa62c9f3c4ddd950bc6.png) no-repeat;
}
#top .top-img .top-con-bg {
  width: 1000px;
  height: 100%;
  margin: 0 auto;
  background-color: rgba(0, 0, 0, 0.3);
  padding-top: 50px;
}
#top .top-img .top-con-bg .top-content {
  width: 800px;
  margin: 0 auto;
  border: 5px solid #fff;
  text-align: center;
  padding: 125px 0;
}
#top .top-img .top-con-bg .top-content span {
  font-size: 40px;
  color: #fff;
}
#main {
  width: 100%;
  overflow: hidden;
  background-color: #c8c8f3;
}
#main .pic-detail {
  width: 1000px;
  margin: 0 auto;
  overflow: hidden;
}
#main .pic-detail ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
#main .pic-detail ul li {
  float: left;
  width: 500px;
  height: 500px;
}
#main .pic-detail ul li a {
  background-color: #fff;
  display: block;
  width: 500px;
  height: 500px;
}
#main .pic-detail ul li a ul {
  width: 420px;
  height: 420px;
  padding: 40px 0;
}
#main .pic-detail ul li a ul li {
  height: 62px;
  line-height: 62px;
  font-size: 40px;
  color: #fff;
  margin: 11px 0;
  background-color: #483D8B;
  padding: 0 20px;
}
#main .pic-detail ul li a img {
  width: 500px;
  height: 500px;
}
#foot {
  width: 100%;
}
#foot .footer {
  width: 1000px;
  margin: 0 auto;
}
#foot .footer p {
  line-height: 30px;
  height: 30px;
  text-align: center;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,284评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,115评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,614评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,671评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,699评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,562评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,309评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,223评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,668评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,859评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,981评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,705评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,310评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,904评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,023评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,146评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,933评论 2 355

推荐阅读更多精彩内容