阮一峰在其博客中介绍了CSS模块化的基本概念和实现原理,主要包括:
/* .css */ /* 定义一个名为 button 的模块 */ .button { color: #fff; background-color: #007bff; border-color: #007bff; border-radius: .25rem; padding: .375rem .75rem; font-size: 1rem; } /* 组合 button 模块 */ .primary { composes: button; box-shadow: none; } .secondary { composes: button; background-color: #6c757d; border-color: #6c757d; }
上述代码定义了一个名为 button 的模块,其中包含了按钮的样式。在使用时,可以通过 composes 属性引用 button 模块,并在其基础上进行扩展,例如定义 primary 和 secondary 样式。
通过CSS模块化可以有效地解决CSS样式的重名和全局污染问题,提高了样式的可维护性和代码的可读性。同时,也可以实现样式的组合和扩展,使得代码更加灵活。