单类 vs 多类

作者: blueed | 来源:发表于2014-12-05 15:24 被阅读109次

关于单类和多类的争论也许是一个伪命题,这个权衡上是见仁见智的,但是毕竟是在实习过程中经常碰到的问题,还是稍加总结一下。

Jonathan Lehman在文中指出,单类的方法问题在于:

  1. 当一个元素的状态不断增加,修饰符会拖得很长,例如.Btn-secondary--small--disabled,这时单类就失去了优势。
  2. 并且在大型网站中,单类会变得非常多而难以维护。

下面借用了大漠博客中的例子:

多类写法

HTML

    <div class="btn btn--twitter">twitter</div>
    <div class="btn btn--facebook">facebook</div>

CSS

    .btn {
      min-width: 100px;
      padding: 1em;
      border-radius: 1em;
    }
    %twitter-background {
      color: #fff;
      background: #55acee;
    }
    %facebook-background {
      color: #fff;
      background: #3b5998;
    }
    
    .btn {
      &--twitter {
        @extend %twitter-background;
      }
      &--facebook {
        @extend %facebook-background;
      }
    }

单类写法

HTML

    <div class="btn--twitter">twitter</div>
    <div class="btn--facebook">facebook</div>

CSS

    %button {
      min-width: 100px;
      padding: 1em;
      border-radius: 1em;
    }
    %twitter-background {
      color: #fff;
      background: #55acee;
    }
    %facebook-background {
      color: #fff;
      background: #3b5998;
    }
    
    .btn {
      &--twitter {
        @extend %button;
        @extend %twitter-background;
      }
      &--facebook {
        @extend %button;
        @extend %facebook-background;
      }
    }

结论是,最好的方法是结合实际情况,适当情况可以混合使用,以达到最好的效果。

相关文章

  • 单类 vs 多类

    关于单类和多类的争论也许是一个伪命题,这个权衡上是见仁见智的,但是毕竟是在实习过程中经常碰到的问题,还是稍加总结一...

  • Python-学习之路-08 OOP -02

    单继承和多继承 单继承:每个类只能继承一个类 多继承:每个类可以继承多个类 单继承的多继承的优缺点 菱形继承/钻石...

  • one-vs-rest与one-vs-one以及sklearn的

    sklearn:multiclass与multilabel,one-vs-rest与one-vs-one 针对多类...

  • 继承extends

    继承的好处: 1. 提高了代码的复用性; 2. 让类与类之间产生了关系,给第三种特征多态提供了前提。 单继承VS多...

  • ml-多类别分类:一对多

    目标:使用逻辑回归来解决多类别分类问题分类算法:“一对多”(one-vs-all) 将多个类中的一个类记为正向类(...

  • JAVA 核心笔记 || [7] 继承

    继承 被继承的类为 基类 或者 父类 类 只能单继承 不可同时继承多类 Animal.java Dog.java ...

  • Kotlin 类2 - 抽象类与接口

    Kotlin 类2 - 抽象类与接口 1. Kotlin 类、抽象类、接口的规则: 「单继承多现实」即一个类只可以...

  • 类和接口

    类与类的关系 继承关系,只能单继承,但是可以多层继承 类与接口的关系 实现关系,可以单实现,也可以多实现,还可以在...

  • 《培训技术一本通》——第二章读书笔记——授之以方五大核心教学方法

    第一节 匹配教学方法 1.基本原则:匹配教学内容 知识类多动脑,技能类多动手,态度类多动情 2.知识类教学形式:单...

  • Java学习笔记三:继承、封装、多态

    一、继承 (1)继承知识点 父类也称作超类、基类、派生类等。 Java中只有单继承,没有像C++那样的多继承。多继...

网友评论

    本文标题:单类 vs 多类

    本文链接:https://www.haomeiwen.com/subject/faagtttx.html