时间:2021-05-26
下面是一段普通的代码:
css:
复制代码 代码如下:
.box{
border:1px solid #ccc;
font-size:12px;
background:#f1f1f1;
padding:10px;
}
html:
复制代码 代码如下:
<div class="box">this is a gray box</div>
但是这个时候需求增加了,在页面中不仅要有一个灰色的盒子可能还有蓝色的盒子,可能还有绿色,通常我们会说用集成嘛,好我们就做如下更改
css:
复制代码 代码如下:
.box-gray,
.box-green{
border:1px solid #ccc;
font-size:12px;
padding:10px;
}
.box-gray{background:#f1f1f1}
.box-green{background:#66ff66}
Html:
复制代码 代码如下:
<div class="box-gray">this is a gray box</div>
<div class="box-green">this is a green box</div>
但是这个时候需求又有变化了,根与应用的不同,盒子中有些要用到12号字,有些要用到14号字,有些要变局10px有些要20px,估计这个时候你就要头大了,如果要用用继承css代码就会变得异常的复杂,那我们就来试验一下用组合的方式看能不能解决。
css:
复制代码 代码如下:
.fs-12{font-size:12px}
.fs-14{font-size:14px}
.pd-10{padding:10px}
.pd-20{padding:20px}
.box{
border:1px solid #ccc;
}
.box.gray{background:#f1f1f1}
.box.green{background:#66ff66}
Html
复制代码 代码如下:
<div class="box gray fs-12 pd-20">this a gray fontsize12px padding20px box</div>
<div class="box green fs-14 pd-10">this a gray fontsize14px padding10px box</div>
….
我们看一些虽然在class上引用了几个,但是代码和逻辑都非常清晰,而且非常容易维护,随意组合随意扩展。从上面可以看到“组合”的方式是不言而喻的,但是也不是十全十美的,再拆分组合的时候一定不要过度,不然效果可能适得其反,只有把组合+继承运用的恰到好处才能让我们的代码更加优雅和艺术。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Css的模块化,我们可以理解成(抑或本身就是)OOP思想,重用性、灵活性、可扩展性便是它终极的目标,"类"便是它的核心,OOP的多用组合少用继承一样是它的基本原
本文实例讲述了Python面向对象之继承和组合用法。分享给大家供大家参考,具体如下:面向对象的组合用法软件重用的重要方式除了继承之外还有另外一种方式,即:组合组
非ES6代码实现继承的主流方式主要可以分为:构造继承、原型链继承、构造继承+原型链继承组合继承、以及在组合继承上衍生出的继承方式。构造继承(借助call实现)实
本文实例讲述了JavaScript寄生组合式继承。分享给大家供大家参考,具体如下:寄生组合式继承寄生组合式继承,就是通过伪造对象来继承属性,通过原型链的混成形式
javascript中的继承实例详解阅读目录原型链继承借用构造函数组合继承寄生组合式继承后记继承有两种方式:接口继承和实现继承。接口继承只继承方法签名,而实现继