ui components for personal projectsgit
UI组件(eg:bootstrap)在PC端仍是很是高效的,特别是针对ie系开发。其次PC端网速较快,不太关心组件的文件大小和性能,更多的是开发效率和更好的兼容性。github
移动端很难出现统一的UI组件。首先移动端很是关注性能和速度。其次每一个公司的UI设计风格差异较大,很难统一。甚至许多公司内不一样项目间的UI都无法统一设计规范。
而后是移动端风格通常比较简洁,因此更适合参考好的UI组件库本身定制一套公司内部的UI组件库。bootstrap
本项目的想法就是提供一种定制UI组件库的思路。具体的实现细节,应该根据本身公司或者项目的设计规范去实现。less
input.less函数
//换算 1rem==100px @input-color: #999; @input-bgColor: #fff; //size @input-height: 0.6rem; @input-fSize: 0.32rem; @input-radius: 0.06rem; /** * bgColor: * color: * */ .input(@color:@input-color;@bgColor:@input-bgColor;) { //basic style width: 100%; position: relative; input { box-sizing: border-box; width: 100%; height: 100%; } .iconfont { display: inline-block; position: absolute; height: 100%; text-align: center; top: 0; &.right { right: 0; } } //dynamic style color: @color; background-color: @bgColor; //size .input-size(); } /** * size函数主要 * height: * font-size: * radius: * */ @input-height-l: 0.8rem; @input-fSize-l: 0.34rem; @input-radius-l: 0.08rem; //small @input-height-s: 0.48rem; @input-fSize-s: 0.3rem; @input-radius-s: 0.06rem; .input-size(@height:@input-height;@fSize:@input-fSize;@radius:@input-radius;) { height: @height; line-height: @height; border-radius: @radius; input { padding-left: @height; } .iconfont { width: @height; } } //exports your module .personal-input(){ .input(); &.input-l{ .input-size(@input-height-l;@input-fSize-l;@input-radius-l;) } &.input-s{ .input-size(@input-height-s;@input-fSize-s;@input-radius-s;) } }
common.less(项目自有的公共样式)性能
@import "../../less/common";//公共common样式 @import "../../less/core/mixins/mixins";//UI组件库函数 body { background-color: #EAEAEA; } .personal-header { .personal-header(); } .personal-list { .personal-list(); margin-bottom: 0.2rem; } .personal-ellipsis { .personal-ellipsis(); } .personal-ellipsis3 { .personal-ellipsis(3); } .personal-input { .personal-input(); } .personal-button { .personal-button(); } .personal-checkbox { .personal-checkbox(); } .personal-textarea { .personal-textarea(); } .personal-switch { .personal-switch(); }
能够参考 persona-ui 的实现。ui
后续会更新更多的开发实践开源代码库。同时更新导读文章,也欢迎你们提问和建议。设计
以为有点启发的望多多转发。随手赞一个也不错....code