<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 36, comments - 419, trackbacks - 0, articles - 0
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    最近在網上看到1個很有意思的CSS擴展,這里介紹給大家。LESS 最早是1個ruby的gem,用于擴展css的語法,用了LESS后,可以在css中使用變量,運算符,include,嵌套規則等等。現在LESS出了js版本,讓我們一起來看看LESS能為我們帶來什么吧?

     

    使用

       1. 下載js: http://lesscss.googlecode.com/ 最新版本好像是 1.0.22

       2. 使用less,css文件的后綴名需要改為.less。

       3. 在html頁面中加入下面代碼

         <!-- style.less文件就是樣式表文件,并且style.less必須放在less-1.0.22.min.js文件前加載,原理后面介紹 -->

         <link rel="stylesheet/less" href="style.less" />  

         <script src="less-1.0.22.min.js"></script>

     

    變量

       變量可以讓我們聲明1個常量值,并在以后多處地方進行重復使用。

     

       一般css寫法:

    .class1{
    color:#ccc;
    width:100px;
    }
    .class2{
    color:#ccc;
    width:120px;
    }

     

       LESS寫法:
    @color1: #ccc;
    .class1{
    color:@color1;
    width:100px;
    }
    .class2{
    color:@color1;
    width:120px;    }
    

    inlucde
        大家一定碰見過再某個規則中需要用的部分樣式跟另外1個規則樣式一樣,但沒辦法,我們只能copy過來,或者為元素指定多個class。但用了LESS后,我們不再需要這么痛苦了。
        
        一般css寫法:
    .red{
    color:red;border:1px solid red;
    }
    .class2{
    width:100px;font-size:12px;
    /*下面的樣式跟red的一樣,copy過來的,修改就要修改2處*/
    color:red;border:1px solid red;
    }
     
        LESS寫法:
    .red{
    color:red;border:1px solid red;
    }
    .class2{
    width:100px;font-size:12px;
    /*直接inlcude .red的規則*/
    .red
    }

    嵌套規則:
    一般css的寫法:
    #header{color:red;}
    #header .logo{backgroud-image:url(logo.gif);}
    #header li{display:block;} 
          LESS寫法:
    #header{
    color:red;
    .logo{
    backgroud-image:url(logo.gif);
    }
    li{
    display:block;
    }
    }

    運算符:
    LESS 寫法:
    @fontSize 12px;
    .class1{
    font-size : @fontSize + 2;
    }
    .class2{
    font-size : @fontSize * 2;
    }

    更多其它功能:
    請見LESS官方網站:http://lesscss.org/

    原理分析:
    LESS js版本的實現方式是使用ajax獲取style.less文件,然后根據該文件的規則生成最終瀏覽器能理解的css插入到html代碼中。所以就出現前面說過的<link rel="stylesheet/less" href="style.less" />必須在js前面。

    總結:
    LESS JS版本的實現原理,是每次請求都需要通過JS去動態生成原始的css,如果css比較大的話,對于客戶端的性能影響比較大,所以個人覺的less的js版本實用性不強。
    不知道LESS 的ruby版本的實現原理是怎么樣的,我認為如果真的覺得less方式可以提高css的開發效率,到是可以參考它的代碼實現一套java或net的源代碼,在程序啟動的時候一次根據.less文件生成所有的css文件,而不是每次請求都用js動態生成。


    [作者]:BearRui(AK-47)
    [博客]: http://www.tkk7.com/bearrui/
    [聲明]:本博所有文章版權歸作者所有(除特殊說明以外),轉載請注明出處.
    英雄,別走啊,幫哥評論下:  

    精彩推薦 好文要頂 水平一般 看不懂 還需努力

    評論

    # re: LESS 讓css也支持變量,運算符,include,嵌套規則等等  回復  更多評論   

    2010-07-01 16:21 by popo4j
    文章很精彩,推薦一下!

    # re: LESS 讓css也支持變量,運算符,include,嵌套規則等等  回復  更多評論   

    2010-07-01 17:15 by BearRui(AK-47)
    @popo4j
    謝謝,^_^

    # re: LESS 讓css也支持變量,運算符,include,嵌套規則等等  回復  更多評論   

    2010-07-01 18:34 by panasia
    在程序啟動的時候一次根據.less文件生成所有的css文件,而不是每次請求都用js動態生成。
    同意..
    主站蜘蛛池模板: 亚洲中文无码永久免| 久久丫精品国产亚洲av| 亚洲欧美乱色情图片| 成人免费的性色视频| 亚洲精品美女视频| av免费不卡国产观看| 亚洲三级高清免费| 国产成人A在线观看视频免费 | 97av免费视频| 亚洲视频在线观看| 亚洲精品视频免费看| 亚洲自国产拍揄拍| 成人毛片18女人毛片免费视频未| 亚洲婷婷综合色高清在线| 在线永久看片免费的视频| 亚洲人精品亚洲人成在线| 好男人视频在线观看免费看片| 精品亚洲国产成人av| 亚洲精品偷拍视频免费观看| 中文字幕乱码免费看电影| 久久久久亚洲AV成人片| 国产免费av片在线看| 添bbb免费观看高清视频| 丁香五月亚洲综合深深爱| 免费国产午夜高清在线视频| 亚洲电影在线免费观看| 免费鲁丝片一级在线观看| 麻豆69堂免费视频| 亚洲一区二区三区偷拍女厕| 久久国内免费视频| 国产在亚洲线视频观看| 亚洲国产精品一区二区久久hs| 麻豆最新国产剧情AV原创免费| 亚洲AV香蕉一区区二区三区| 亚洲精品视频免费| 亚洲三级高清免费| 五月婷婷免费视频| 亚洲老熟女@TubeumTV| 国产伦精品一区二区三区免费下载| 成人妇女免费播放久久久| 亚洲国产区男人本色在线观看|