Liferay主题中clay/base与clay/atlas的区别及适用场景是什么?
clay/base 和 clay/atlas 的核心差异 Clay是Liferay官方的设计系统,两个引入包对应不同的样式层级:
clay/base是最低层级的基础样式包
仅包含核心的浏览器样式重置、基础排版规则、全局基础变量、组件的最小结构样式,没有内置Liferay官方的视觉风格定义,没有预设品牌色、圆角、阴影、组件皮肤等装饰性样式,体积小,对自定义代码的侵入性极低。clay/atlas是完整的官方主题样式包
它本身已经内置了clay/base的所有内容,额外集成了Liferay Atlas设计规范的全部视觉定义,包括官方品牌配色、预设组件皮肤、标准交互动效、全量响应式规则、所有Liferay原生组件的默认样式,引入后即可和Liferay自带的各类应用、组件风格完全对齐。
适用场景
- 选择
clay/base的场景:- 开发完全自定义的Liferay主题,和官方默认风格差异较大,不需要复用原生视觉样式
- 对主题包体积有严格要求,仅需要基础样式打底,所有组件样式都由自主实现
- 需要兼容旧的自定义样式,避免官方预设样式覆盖现有代码
- 选择
clay/atlas的场景:- 仅对Liferay默认主题做少量风格调整,核心需求是复用官方原生组件的样式
- 开发的主题需要和Liferay自带的各类插件、应用风格统一,降低适配成本
- 不需要大量自定义组件样式,希望直接使用官方成熟的设计规范,减少开发工作量
补充说明:如果要从
clay/base切换到clay/atlas,不需要重复引入clay/base,否则会造成样式冗余。如果做深度自定义开发,基于clay/base修改变量、扩展样式的成本远低于在clay/atlas基础上覆盖官方预设样式。
内容的提问来源于stack exchange,提问作者Samuel Steward
相关产品推荐
相关产品推荐

