工作中常用的高效的CSS代码

  •   2009-07-31/13:29
  • 我们最常用的有四种选择方法,

    Id规则选取,比如

     引用内容

    button#button{}

    #urlBar[type=”text”] { }

    div > p > span#demo{}


    class规则选取,比如

     引用内容

    button.toolbarButton { }

    .fancyText { }

    menuitem > .menu-left[checked=”true”] { }

    Tag规则选取,比如

     引用内容

    td { }

    div > p { }

    input[type=”checkbox”] { }

    统配选择器,比如

     引用内容

    *

    :after

    [hidden=”true”]

    他们都是从最右边开始匹配,直到最左边整个规则结束。

    这样就存在一个问题,比如说最右边的规则已经能确定你要选取到元素。

    那更多的规则匹配就造成了性能上的浪费。

    比如说div > p > span#demo{}

    div > p > span根本没有意义。

    改进:

    ID是唯一的。没有必要附加多余的规则。也能精准的匹配到。

     引用内容

    button#button{} -> #button{}

    #urlBar[type=”text”] { } -> #urlBar{}

    div > p > span#demo{} -> #demo{}

    下面应该不会出现<a class=”toolbarButton”></a>所以也可以优化。

     引用内容

    button.toolbarButton { } -> .toolbarButton{}

    用过多的规则,不如直接给元素一个class

    比如:div > p > span > a{}

    可能给a一个特殊表现的。直接给a写一个class即可。

    特殊情况需要特殊对待。

    比如有时候要保证页面结构的干净。以便适用后期改版的需要,使用到这种方式。也是可以的。平衡取出一个最佳方案。

    使用继承

    #demo .left{text-align:left} ->#demo{text-align:left}

    注:原文中使用的XUL.对没接触过XUL的同学,可能标签看起来有点怪,但不难理解。


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多