Facebook Sharer
选择您要替换的背景颜色:
【农历新年】背景图片:
个性化设定
 注册  找回密码
查看: 807|回复: 0
打印 上一主题 下一主题

[浅谈]CSS/LESS 的介绍

[复制链接]

46

主题

6

好友

6456

积分

百变名嘴

Rank: 13Rank: 13Rank: 13Rank: 13

跳转到指定楼层
1#
发表于 2013-5-1 07:21 PM |只看该作者 |倒序浏览
好久没发技术帖子了, 今天是劳动节, 就来劳动劳动下吧。

http://lesscss.org/


LESS 是神马东东? 能吃的吗? 不能滴!
LESS extends CSS with dynamic behavior such as variables, mixins, operations and functions.

LESS runs on both the server-side (with Node.js and Rhino) or client-side (modern browsers only).


某些方面他确实是做了很多方便 网页开发员的东西。
能在意义上开发出更可 复用性的 CSS 代码。

虾米意思呢??


看看实例代码
以下乃实验代码, 如果不对请不要见怪。

  1. body{
  2.    font-family : arial;
  3.    background: #FFF;
  4. }

  5. .nav{
  6.   background : #333;
  7.   -webkit-border-radius: 4px;
  8.   -moz-border-radius: 4px;
  9.   border-radius: 4px;
  10. }

  11. .nav li{
  12.    padding:20px;
  13. }

  14. .nav li a{
  15.    background : #444;
  16.    color : #FFF
  17.    text-decoration:underline;
  18. }

  19. .nav li a:hover{
  20.      text-decoration:none;
  21. }



  22. .footer{
  23.   background : #333;
  24. }

  25. .menu{
  26.    float:left;
  27.    font-weight:bold;

  28.      background : #333;
  29.   -webkit-border-radius: 4px;
  30.   -moz-border-radius: 4px;
  31.   border-radius: 4px;
  32. }


复制代码
没错, 这是 普通 CSS 的代码, 出来的效果是有圆角的黑色 Navbar, Footer.
为了实验, 写了个.menu 的class, 那么他的properties 跟 navbar 没啥差别, 就多了个 float, font-weight。

那么这些代码假设要放在另外个客户的网站容易吗?
我只能说因人而异
那么如果你使用了 LESS, 你将能得到解脱。 真的吗?

有天,
客户如果要个红色的主题呢? OH SHIT~ 给我半小时的时间!

可是,
如果使用 LESS, 30 秒能解决你的问题。

以下是 LESS 代码, 跟 上面的 CSS 代码出来的效果是一样的。


  1. @cBackground: #333; // com background 的变量
  2. @radius : 4px; //统一圆角的变量

  3. body{
  4.    font-family : arial;
  5.    background: #FFF;
  6. }

  7. .nav{
  8.   background : @cBackground;
  9.   border-radius(@radius); // border radius 的mixin, 能支持 IE9, FF, CHROME, SAFARI

  10.      &li{
  11.             padding:20px;
  12.           & a{
  13.                  background : lighten(@cBackground, 5%); // 自动将颜色调浅 5%
  14.                  color : #FFF;
  15.                  text-decoration:underline;
  16.           }
  17.          
  18.           & a:hover{
  19.                      text-decoration:none;
  20.           }
  21.      }
  22. }


  23. .menu{
  24.    float:left;
  25.    font-weight:bold;
  26.    .nav(); //自动复制 nav class 的属性。
  27. }

  28. .footer{
  29.   background :@cBackground;
  30. }
复制代码
那么30秒从新自定这个网页的 stylesheet 能吗? 能。

只需要修改
@cBackground: #333; 成红色, 就行了。 可以pack 公司包回家吃饭了

当然这个例子只是网页开发的冰山一角

---- 分界线

LESS 的文件格式是 .less
LESS, 篇写了如果没即时生效是正常的。 因为您需要 篇译器。

windows : http://winless.org/
linux : 首先安装 npm , 然后执行 npm install -g less, 或者使用 ruby-gems 的 lessc 也行

**** 我相信会用 linux 的一定已经很够力在 google 搜寻了, 那么我就点到为止

我个人觉得这个好用在混合 CSS STYLE, 跟 从新自定 CSS STYLE 时非常有用。
还有就是整齐的代码, 看了比较不会心烦 (是真的)

可是前提是你必须要非常熟悉他的语法。 现在很都 CSS Framework 都有 支持LESS 的了。 我们能更简单的自定义这些好好用的 CSS Framework。







祝大家劳动节快乐!




收藏收藏0
您需要登录后才可以回帖 登录 | 注册

JBTALKS.CC |联系我们 |隐私政策 |Share

GMT+8, 2025-1-13 02:01 PM , Processed in 0.104112 second(s), 29 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

Ultra High-performance Dedicated Server powered by iCore Technology Sdn. Bhd.
Domain Registration | Web Hosting | Email Hosting | Forum Hosting | ECShop Hosting | Dedicated Server | Colocation Services
本论坛言论纯属发表者个人意见,与本论坛立场无关
Copyright © 2003-2012 JBTALKS.CC All Rights Reserved
合作联盟网站:
JBTALKS 马来西亚中文论坛 | JBTALKS我的空间 | ICORE TECHNOLOGY SDN. BHD.
回顶部