技术开发 频道

Meta CSS框架发布

  Meta CSS框架扩展与裁减

  Meta CSS说白了本质上就是一个css文件而已,要进行改动是一件很容易的事情,任何开发者都可以随意的往这个css文件里面添加或者删除任意属性与定义。随意的添加或删除当然不是我们希望看到的结果,遵循框架的约定进行增删改,才是真正意义上的扩展与裁减。

  注意:根据你自己的项目,对Meta CSS进行扩展与裁减是非常正常的也是很有必要的。

  扩展Meta CSS的方式很简单,就是遵循命名规则,添加新的css类定义。假设你要增加一个margin是20px的定义,默认框架中是margin:10px,你就可以添加一个m20p的css类就可以了。具体可以查看Meta CSS文件中的注释。

  裁减Meta CSS同样简单,删除文件中你确实不需要用到的属性就可以了。大部分时候,默认的一些字体,内外边距之类的定义往往不一定符合你的需求。

  Meta CSS 使用方法

  从语法上,你当然可以通过class="fwb tar mr10p pt20p"来创建一个加粗的,右对齐的,右内边距10px,上外边距20px的元素,但是从框架本身的意义来说,这不是非常好的的适用环境。Meta CSS框架适用的环境是:

  的确是单一属性的定义。例如只是 class="fwb",加粗一个元素。

  对某一个css定义给出特殊情况的补充。参考开头部分提到的例子3。

  代码中使用的范例:

<style type="text/css">
    .fwb
{
        font-weight
:bold;
    
}
    .tar
{
        text-align
:right;
    
}
    .div1
{
        border
:1px solid #ccc;
        padding
:15px;
        color
:green;
        width
:200px;
        margin-bottom
:20px;
    
}
</style>
<div id="d1" class="div1">
    第一个div
</div>
<div id="d2" class="div1 fwb">
    第二个div,字体加粗
</div>
<div id="d3" class="div1 tar">
    第三个div,右对齐
</div>

  基本使用方法:下载metacss文件,放到你的css文件夹中,可以采用形如

<link rel="stylesheet" href="css/metacss.css" type="text/css" media="screen">

  这样的css引用语句。你可以将metacss中所有的css定义copy到你的css文件中合并到一起,所有的css文件可以怎么做,你都可以怎么做。

  Meta CSS框架的局限性

  css优先级的影响,你不能保证定义总会生效,如果之前的css类已经包含某些要覆盖的定义,则有可能因为优先级的关系,不能生效。我们稍微修改下上面的例子:

<style type="text/css">
    .fwb
{
        font-weight
:bold;
    
}
    .tar
{
        text-align
:right;
    
}
    .div1
{
        border
:1px solid #ccc;
        padding
:15px;
        color
:green;
        width
:200px;
        margin-bottom
:20px;
        text-align
:left; /* 更高优先级,无法被tar覆盖 */
}
</style>
<div id="d1" class="div1">
    第一个div
</div>
<div id="d2" class="div1 fwb">
    第二个div,字体加粗
</div>
<div id="d3" class="div1 tar">
    第三个div,预期右对齐,但是事实上不会生效。
</div>

   像这个例子里,.div1的text-align有比tar更高的优先级,所以用css组合这种方式就会不起作用。所以在应用框架的时候需要注意这一点。关于css优先级的讨论超出本文的范围,可以自己google一番。

0
相关文章