WeUI v2.3.0 解读04
返回
根据 gulp.js 文件内容可知,样式文件从 src/style/weui.less 开始
gulp.task('build:style', function() {
var banner = [
'/*!',
' * WeUI v<%= pkg.version %> (<%= pkg.homepage %>)',
' * Copyright <%= new Date().getFullYear() %> Tencent, Inc.',
' * Licensed under the <%= pkg.license %> license',
' */',
'',
].join('\n');
gulp
.src('src/style/weui.less', option)
.pipe(sourcemaps.init())
.pipe(
less().on('error', function(e) {
console.error(e.message);
this.emit('end');
}),
)
.pipe(postcss([autoprefixer(['iOS >= 7', 'Android >= 4.1']), comments()]))
.pipe(convertCssVar())
.pipe(header(banner, { pkg: pkg }))
.pipe(sourcemaps.write())
.pipe(gulp.dest(dist))
.pipe(browserSync.reload({ stream: true }))
.pipe(
nano({
zindex: false,
autoprefixer: false,
svgo: false,
}),
)
.pipe(
rename(function(path) {
path.basename += '.min';
}),
)
.pipe(gulp.dest(dist));
});
阅读 weui.less 文件
发现都是 @import (导入文件语句) - 整合整个项目style文件
依次按顺序加载
文件依次加载顺序
|1. src/style/base/reset.less
| |1. src/style/base/fn.less
| | |1. src/style/base/theme/index.less
| | | |1. src/style/base/theme/fn.less
| | | | |1. src/style/base/theme/vars/light.less
| | | | | ===> 明亮主题 色彩定义
| | | | |2. src/style/base/theme/vars/dark.less
| | | | | ===> 黑白主题 色彩定义 (让我想起了,前一阵 微信要适配 ios 黑白主题的事情)
| | | | |3. 本文件内的内容(src/style/base/theme/fn.less)
| | | | | ===> 声明样式函数块儿
| | | | | a. 黑白模式
| | | | | b. 设置颜色 (多态)
| | | |2. 本文件内的内容(src/base/theme/fn.less)
| | | | ===>
| | | | a. body 默认采用 明亮主题
| | | | b. @media 判断 黑白模式
| | | | c. DOM attr 判断 黑白模式
| | |2. src/style/base/mixin/moble.less
| | |3. src/style/base/mixin/setOnepx.less
| | |4. src/style/base/mixin/setArrow.less
| | |5. src/style/base/mixin/text.less
| | |6. src/style/base/variable/global.less
| | |7. src/style/base/variable/color.less
| | |8. src/style/base/variable/weui-tab.less
| | |9. src/style/base/variable/weui-cell.less
| | |10. src/style/base/variable/weui-button.less
| | |11. src/style/base/variable/weui-msg.less
| | |12. src/style/base/variable/weui-grid.less
| | |13. src/style/base/variable/weui-progress.less
| | |14. src/style/base/variable/weui-dialog.less
|2. 本文件内的内容 (src/style/base/fn.less)
===>
a. html => text-size-adjust
b. body => line-height / font-family
c. * => margin / padding
d. a,img => border
e. a => text-decoration / setTapColor()
f. input,textarea => caret-color
g. -webkit-input-placeholder => color