From 5e7ea19b1a40f173f88974b15311fc8e2120b963 Mon Sep 17 00:00:00 2001 From: cookfront Date: Wed, 19 Apr 2017 17:46:40 +0800 Subject: [PATCH] vant components --- build/release.sh | 4 +- packages/vant-css/README.md | 1 + packages/vant-css/assets/icons.sketch | Bin 0 -> 174324 bytes packages/vant-css/gulpfile.js | 13 ++ packages/vant-css/package.json | 23 +++ packages/vant-css/salad.config.json | 16 ++ packages/vant-css/scripts/build.sh | 83 +++++++++ packages/vant-css/scripts/extract-icons.sh | 6 + packages/vant-css/scripts/fount-config.js | 164 ++++++++++++++++++ packages/vant-css/scripts/generate-font.sh | 5 + packages/vant-css/src/actionsheet.css | 82 +++++++++ packages/vant-css/src/badge.css | 77 ++++++++ packages/vant-css/src/button.css | 122 +++++++++++++ packages/vant-css/src/card.css | 93 ++++++++++ packages/vant-css/src/cell.css | 88 ++++++++++ packages/vant-css/src/checkbox.css | 49 ++++++ packages/vant-css/src/col.css | 52 ++++++ packages/vant-css/src/common/var.css | 40 +++++ packages/vant-css/src/dialog.css | 101 +++++++++++ packages/vant-css/src/field.css | 89 ++++++++++ packages/vant-css/src/icon.css | 78 +++++++++ packages/vant-css/src/image_preview.css | 36 ++++ packages/vant-css/src/index.css | 30 ++++ packages/vant-css/src/loading.css | 68 ++++++++ .../vant-css/src/mixins/border_retina.css | 20 +++ packages/vant-css/src/mixins/clearfix.css | 7 + packages/vant-css/src/mixins/ellipsis.css | 7 + packages/vant-css/src/panel.css | 36 ++++ packages/vant-css/src/picker.css | 143 +++++++++++++++ packages/vant-css/src/popup.css | 78 +++++++++ packages/vant-css/src/progress.css | 33 ++++ packages/vant-css/src/quantity.css | 79 +++++++++ packages/vant-css/src/radio.css | 48 +++++ packages/vant-css/src/row.css | 8 + packages/vant-css/src/search.css | 61 +++++++ packages/vant-css/src/steps.css | 159 +++++++++++++++++ packages/vant-css/src/swipe.css | 56 ++++++ packages/vant-css/src/switch.css | 59 +++++++ packages/vant-css/src/tab.css | 122 +++++++++++++ packages/vant-css/src/tag.css | 69 ++++++++ packages/vant-css/src/toast.css | 56 ++++++ packages/vant-css/src/uploader.css | 23 +++ 42 files changed, 2382 insertions(+), 2 deletions(-) create mode 100644 packages/vant-css/README.md create mode 100644 packages/vant-css/assets/icons.sketch create mode 100644 packages/vant-css/gulpfile.js create mode 100644 packages/vant-css/package.json create mode 100644 packages/vant-css/salad.config.json create mode 100644 packages/vant-css/scripts/build.sh create mode 100755 packages/vant-css/scripts/extract-icons.sh create mode 100644 packages/vant-css/scripts/fount-config.js create mode 100755 packages/vant-css/scripts/generate-font.sh create mode 100644 packages/vant-css/src/actionsheet.css create mode 100644 packages/vant-css/src/badge.css create mode 100644 packages/vant-css/src/button.css create mode 100644 packages/vant-css/src/card.css create mode 100644 packages/vant-css/src/cell.css create mode 100644 packages/vant-css/src/checkbox.css create mode 100644 packages/vant-css/src/col.css create mode 100644 packages/vant-css/src/common/var.css create mode 100644 packages/vant-css/src/dialog.css create mode 100644 packages/vant-css/src/field.css create mode 100644 packages/vant-css/src/icon.css create mode 100644 packages/vant-css/src/image_preview.css create mode 100644 packages/vant-css/src/index.css create mode 100644 packages/vant-css/src/loading.css create mode 100644 packages/vant-css/src/mixins/border_retina.css create mode 100644 packages/vant-css/src/mixins/clearfix.css create mode 100644 packages/vant-css/src/mixins/ellipsis.css create mode 100644 packages/vant-css/src/panel.css create mode 100644 packages/vant-css/src/picker.css create mode 100644 packages/vant-css/src/popup.css create mode 100644 packages/vant-css/src/progress.css create mode 100644 packages/vant-css/src/quantity.css create mode 100644 packages/vant-css/src/radio.css create mode 100644 packages/vant-css/src/row.css create mode 100644 packages/vant-css/src/search.css create mode 100644 packages/vant-css/src/steps.css create mode 100644 packages/vant-css/src/swipe.css create mode 100644 packages/vant-css/src/switch.css create mode 100644 packages/vant-css/src/tab.css create mode 100644 packages/vant-css/src/tag.css create mode 100644 packages/vant-css/src/toast.css create mode 100644 packages/vant-css/src/uploader.css diff --git a/build/release.sh b/build/release.sh index b9b11885b..10858e8de 100644 --- a/build/release.sh +++ b/build/release.sh @@ -19,7 +19,7 @@ then echo "Releasing zanui-css $VERSION ..." cd packages/zanui-css npm version $VERSION --message "[release] $VERSION" - npm publish --registry=http://registry.npm.qima-inc.com + npm publish cd ../.. # commit @@ -31,5 +31,5 @@ then git push origin master git push origin refs/tags/v$VERSION - npm publish --registry=http://registry.npm.qima-inc.com + npm publish fi diff --git a/packages/vant-css/README.md b/packages/vant-css/README.md new file mode 100644 index 000000000..3a3f333be --- /dev/null +++ b/packages/vant-css/README.md @@ -0,0 +1 @@ +# zanui-css diff --git a/packages/vant-css/assets/icons.sketch b/packages/vant-css/assets/icons.sketch new file mode 100644 index 0000000000000000000000000000000000000000..bba3bf5b739d716abaae78cbca3af6989f183ed6 GIT binary patch literal 174324 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%0A4rsV6e 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 literal 0 HcmV?d00001 diff --git a/packages/vant-css/gulpfile.js b/packages/vant-css/gulpfile.js new file mode 100644 index 000000000..5ddcc7ecf --- /dev/null +++ b/packages/vant-css/gulpfile.js @@ -0,0 +1,13 @@ +var gulp = require('gulp'); +var postcss = require('gulp-postcss'); +var cssmin = require('gulp-cssmin'); +var salad = require('postcss-salad')(require('./salad.config.json')); + +gulp.task('compile', function() { + return gulp.src('./src/*.css') + .pipe(postcss([salad])) + .pipe(cssmin()) + .pipe(gulp.dest('./lib')); +}); + +gulp.task('build', ['compile']); diff --git a/packages/vant-css/package.json b/packages/vant-css/package.json new file mode 100644 index 000000000..b0333a6a3 --- /dev/null +++ b/packages/vant-css/package.json @@ -0,0 +1,23 @@ +{ + "name": "@youzan/zanui-css", + "version": "0.1.2", + "description": "zanui css.", + "main": "lib/index.css", + "style": "lib/index.css", + "files": [ + "lib", + "src" + ], + "scripts": { + "build": "gulp build", + "build:icons": "sh scripts/build.sh" + }, + "license": "MIT", + "devDependencies": { + "gulp": "^3.9.1", + "gulp-cssmin": "^0.1.7", + "gulp-postcss": "^6.1.1", + "postcss-salad": "^1.0.5" + }, + "dependencies": {} +} diff --git a/packages/vant-css/salad.config.json b/packages/vant-css/salad.config.json new file mode 100644 index 000000000..1d82ab8c3 --- /dev/null +++ b/packages/vant-css/salad.config.json @@ -0,0 +1,16 @@ +{ + "browsers": ["ie > 8", "last 2 versions"], + "features": { + "bem": { + "shortcuts": { + "component": "b", + "modifier": "m", + "descendent": "e" + }, + "separators": { + "descendent": "__", + "modifier": "--" + } + } + } +} diff --git a/packages/vant-css/scripts/build.sh b/packages/vant-css/scripts/build.sh new file mode 100644 index 000000000..968965790 --- /dev/null +++ b/packages/vant-css/scripts/build.sh @@ -0,0 +1,83 @@ +#!/bin/bash + +basepath=$(dirname $0) +server_prefix=/zanui/icon + +# convert relative path to absolute path +function abspath() { + pushd . > /dev/null; if [ -d "$1" ]; then cd "$1"; dirs -l +0; else cd "`dirname \"$1\"`"; cur_dir=`dirs -l +0`; if [ "$cur_dir" == "/" ]; then echo "$cur_dir`basename \"$1\"`"; else echo "$cur_dir/`basename \"$1\"`"; fi; fi; popd > /dev/null; +} + +command_exists () { + type "$1" >/dev/null 2>&1 +} + +fontname() { + if command_exists superman ; then + echo "https://b.yzcdn.cn$server_prefix/$(basename $basepath/../build/font/vant-icon-*.$1)" + else + echo "$(abspath $basepath/../build/font/vant-icon-*.$1)" + fi +} + +# generate font files from sketch file +$basepath/extract-icons.sh +$basepath/generate-font.sh + +if command_exists superman ; then + # upload to cdn + superman cdn $server_prefix $basepath/../build/font/vant-icon-* +fi + +# generate fontface style +eot=$(fontname eot) +cat > $basepath/../src/icon.css <> $basepath/../src/icon.css diff --git a/packages/vant-css/scripts/extract-icons.sh b/packages/vant-css/scripts/extract-icons.sh new file mode 100755 index 000000000..b3c54e476 --- /dev/null +++ b/packages/vant-css/scripts/extract-icons.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +basepath=$(dirname $0) + +rm -rf $basepath/../icons +sketchtool export slices --formats=svg --overwriting=YES --save-for-web=YES --output=$basepath/../icons $basepath/../assets/icons.sketch diff --git a/packages/vant-css/scripts/fount-config.js b/packages/vant-css/scripts/fount-config.js new file mode 100644 index 000000000..4046e5f22 --- /dev/null +++ b/packages/vant-css/scripts/fount-config.js @@ -0,0 +1,164 @@ +module.exports = { + name: 'vant-icon', + output: '../build', + meta: { + author: 'houzi, zhangmin', + license: 'MIT', + license_url: 'https://opensource.org/licenses/MIT', + homepage: 'http://github.com/youzan', + css_prefix_text: 'van-icon-', + filename_hash: true + }, + hinting: true, + glyphs_dir: '../icons', + glyphs: [ + { + keywords: ['qr', 'invalid'], + src: '二维码失效.svg', + css: 'qr-invalid' + }, + { + keywords: ['qr'], + src: '二维码.svg', + css: 'qr' + }, + { + keywords: ['exchange'], + src: '兑换.svg', + css: 'exchange', + 'correct_contour_direction': true + }, + { + keywords: ['close'], + src: '关闭.svg', + css: 'close' + }, + { + keywords: ['location'], + src: '其他分店.svg', + css: 'location' + }, + { + keywords: ['upgrade'], + src: '升级地址.svg', + css: 'upgrade' + }, + { + keywords: ['check'], + src: '单选.svg', + css: 'check' + }, + { + keywords: ['checked'], + src: '选中.svg', + css: 'checked' + }, + { + keywords: ['like', 'outline'], + src: '喜欢.svg', + css: 'like-o' + }, + { + keywords: ['like', 'filled'], + src: '喜欢2.svg', + css: 'like' + }, + { + keywords: ['chat'], + src: '客服.svg', + css: 'chat', + 'correct_contour_direction': true + }, + { + keywords: ['shop'], + src: '店铺.svg', + css: 'shop' + }, + { + keywords: ['photograph'], + src: '拍照.svg', + css: 'photograph' + }, + { + keywords: ['add'], + src: '新增地址.svg', + css: 'add' + }, + { + keywords: ['add2'], + src: '添加.svg', + css: 'add2' + }, + { + keywords: ['photo'], + src: '照片.svg', + css: 'photo' + }, + { + keywords: ['logistics'], + src: '物流.svg', + css: 'logistics' + }, + { + keywords: ['edit'], + src: '编辑地址.svg', + css: 'edit' + }, + { + keywords: ['passed'], + src: '认证通过.svg', + css: 'passed' + }, + { + keywords: ['cart'], + src: '购物车.svg', + css: 'cart' + }, + { + keywords: ['arrow'], + src: '进入箭头.svg', + css: 'arrow' + }, + { + keywords: ['gift'], + src: '送礼.svg', + css: 'gift' + }, + { + keywords: ['search'], + src: '搜索.svg', + css: 'search' + }, + { + keywords: ['clear'], + src: '清除搜索.svg', + css: 'clear' + }, + { + keywords: ['success'], + src: '成功.svg', + css: 'success' + }, + { + keywords: ['fail'], + src: '失败.svg', + css: 'fail' + }, + { + keywords: ['contact'], + src: '联系人.svg', + css: 'contact', + 'correct_contour_direction': true + }, + { + keywords: ['wechat'], + src: '微信支付.svg', + css: 'wechat' + }, + { + keywords: ['alipay'], + src: '支付宝支付.svg', + css: 'alipay' + } + ] +}; diff --git a/packages/vant-css/scripts/generate-font.sh b/packages/vant-css/scripts/generate-font.sh new file mode 100755 index 000000000..bd1421ec0 --- /dev/null +++ b/packages/vant-css/scripts/generate-font.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +basepath=$(dirname $0) + +iconfount --config $basepath/fount-config.js diff --git a/packages/vant-css/src/actionsheet.css b/packages/vant-css/src/actionsheet.css new file mode 100644 index 000000000..8b73ae279 --- /dev/null +++ b/packages/vant-css/src/actionsheet.css @@ -0,0 +1,82 @@ +@import './common/var.css'; +@import './mixins/border_retina.css'; +@import './popup.css'; + +@component-namespace van { + @b actionsheet { + position: fixed; + width: 100%; + top: auto; + bottom: 0; + right: auto; + left: 50%; + transform: translate3d(-50%, 0, 0); + backface-visibility: hidden; + transition: .2s ease-out; + background-color: #e0e0e0; + + @m withtitle { + background-color: $c-white; + } + + @e item { + line-height: 50px; + text-align: center; + color: $c-black; + font-size: 16px; + position: relative; + background-color: $c-white; + + @m loading { + padding: 10px 0; + } + + &::after { + @mixin border-retina (top); + } + } + + @e subname { + color: $c-gray-darker; + font-size: 12px; + } + + @e loading { + margin: 0 auto; + } + + @e button { + display: block; + margin-top: 5px; + line-height: 50px; + color: $c-black; + font-size: 16px; + text-align: center; + background-color: $c-white; + } + + @e header { + line-height: 44px; + color: $c-black; + text-align: center; + position: relative; + + &::after { + @mixin border-retina (top, bottom); + } + + .van-icon-close { + position: absolute; + font-size: 22px; + line-height: 22px; + top: 11px; + right: 15px; + } + } + } +} + +.actionsheet-float-enter, +.actionsheet-float-leave-active { + transform: translate3d(-50%, 100%, 0); +} diff --git a/packages/vant-css/src/badge.css b/packages/vant-css/src/badge.css new file mode 100644 index 000000000..2eb224da0 --- /dev/null +++ b/packages/vant-css/src/badge.css @@ -0,0 +1,77 @@ +@import './common/var.css'; +@import './mixins/border_retina.css'; + +@component-namespace van { + @b badge-group { + position: relative; + width: 85px; + &::after { + @mixin border-retina (top); + } + } + + @b badge { + display: block; + overflow: hidden; + position: relative; + padding: 20px 12px; + box-sizing: border-box; + line-height: 1.4; + background-color: $c-background; + color: $c-gray-darker; + font-size: 14px; + text-decoration: none; + word-break: break-all; + + @m select { + font-weight: bold; + color: $c-black; + background-color: $c-white; + .van-badge__active { + display: block; + } + &::after { + @mixin border-retina (top); + @mixin border-retina (right); + @mixin border-retina (left); + } + } + + @e active { + display: none; + position: absolute; + left: 0; + top: 0; + width: 3px; + height: 100%; + background-color: #FF4444; + } + + @e info { + position: absolute; + top: 2px; + right: 2px; + font-size: 10px; + transform:scale(0.8); + text-align: center; + box-sizing: border-box; + padding: 0 6px; + min-width: 18px; + height: 18px; + line-height: 18px; + border-radius: 9px; + background-color: #FF4444; + color: $c-white; + } + + &::after { + @mixin border-retina (bottom); + } + + &:last-child { + &::after { + border-bottom: 0; + } + } + } +} diff --git a/packages/vant-css/src/button.css b/packages/vant-css/src/button.css new file mode 100644 index 000000000..6d1f63d01 --- /dev/null +++ b/packages/vant-css/src/button.css @@ -0,0 +1,122 @@ +@import './common/var.css'; +@import './loading.css'; + +@component-namespace van { + @b button { + position: relative; + padding: 0; + display: inline-block; + height: 45px; + line-height: 43px; + border-radius: 4px; + box-sizing: border-box; + font-size: 16px; + text-align: center; + appearance: none; + outline: 0; + overflow: hidden; + + &::after { + content: " "; + position: absolute 0 0 0 0; + background-color: #000; + opacity: 0; + } + + &:not(.is-disabled):active::after { + opacity: .3; + } + + @e icon-loading { + display: inline-block; + width: 16px; + height: 16px; + vertical-align: middle; + } + + @m default { + color: $button-default-color; + background-color: $button-default-background-color; + border: 1px solid $button-default-border-color; + } + + @m primary { + color: $button-primary-color; + background-color: $button-primary-background-color; + border: 1px solid $button-primary-border-color; + } + + @m danger { + color: $button-danger-color; + background-color: $button-danger-background-color; + border: 1px solid $button-danger-border-color; + } + + @m large { + width: 100%; + height: 50px; + line-height: 48px; + font-size: 16px; + } + + @m normal { + padding: 0 15px; + font-size: 14px; + } + + @m small { + min-width: 60px; + height: 30px; + line-height: 28px; + font-size: 12px; + } + + /* + mini图标默认宽度50px,文字不能超过4个 + */ + @m mini { + display: inline-block; + width: 50px; + height: 22px; + line-height: 20px; + font-size: 10px; + + & + .van-button--mini { + margin-left: 5px; + } + } + + @m disabled { + color: $button-disabled-color; + background-color: $button-disabled-background-color; + border: 1px solid $button-disabled-border-color; + } + + @m block { + display: block; + width: 100%; + } + + @m loading { + .van-button__text { + display: none; + } + } + + @m bottom-action { + width: 100%; + height: 50px; + line-height: 50px; + border: 0; + border-radius: 0; + background-color: $bottom-action-button-default-background-color; + color: $bottom-action-button-default-color; + font-size: 16px; + + &.van-button--primary { + background-color: $bottom-action-button-primary-background-color; + color: $bottom-action-button-primary-color; + } + } + } +} diff --git a/packages/vant-css/src/card.css b/packages/vant-css/src/card.css new file mode 100644 index 000000000..7cd6a1bc0 --- /dev/null +++ b/packages/vant-css/src/card.css @@ -0,0 +1,93 @@ +@import './mixins/ellipsis.css'; + +@component-namespace van { + @b card { + padding: 5px 15px 5px 115px; + height: 90px; + background: #FAFAFA; + overflow: hidden; + position: relative; + margin-top: 10px; + + &:first-child { + margin-top: 0; + } + + @e img { + width: 90px; + height: auto; + border: 0; + position: absolute; + top: 5px; + left: 15px; + } + + @e content { + display: table; + width: 100%; + + @m center { + display: table; + height: 90px; + + .van-card__info { + display: table-cell; + vertical-align: middle; + } + } + } + + @e row { + overflow: hidden; + padding-right: 80px; + position: relative; + } + + @e title { + line-height: 20px; + color: #333; + max-height: 40px; + margin-bottom: 5px; + word-break: break-all; + @mixin multi-ellipsis 2; + } + + @e desc { + font-size: 12px; + color: #666; + max-height: 20px; + word-break: break-all; + @mixin multi-ellipsis 1; + } + + @e price { + position: absolute; + top: 0; + right: 0; + width: 80px; + text-align: right; + font-size: 14px; + color: #333; + } + + @e num { + position: absolute; + top: 0; + right: 0; + width: 80px; + text-align: right; + font-size: 12px; + color: #666; + } + + @e footer { + position: absolute; + right: 15px; + bottom: 5px; + + .van-button { + margin-left: 5px; + } + } + } +} diff --git a/packages/vant-css/src/cell.css b/packages/vant-css/src/cell.css new file mode 100644 index 000000000..9226456d3 --- /dev/null +++ b/packages/vant-css/src/cell.css @@ -0,0 +1,88 @@ +@import './common/var.css'; +@import './mixins/border_retina.css'; +@import './icon.css'; + +@component-namespace van { + @b cell-group { + padding-left: 15px; + position: relative; + background-color: #fff; + + &::after { + @mixin border-retina (top, bottom); + } + } + + @b cell { + display: block; + position: relative; + padding: 10px 15px 10px 0; + box-sizing: border-box; + line-height: 24px; + background-color: $c-white; + color: $c-black; + font-size: 14px; + text-decoration: none; + overflow: hidden; + + &::after { + @mixin border-retina (bottom); + } + + &:last-child { + &::after { + border-bottom: 0; + } + } + + @e title { + float: left; + } + + @e label { + display: block; + font-size: 12px; + line-height: 1.2; + color: $c-gray-darker; + } + + @e value { + float: right; + overflow: hidden; + + @m link { + margin-right: 20px; + } + + @m alone { + float: none; + } + } + + @m required { + overflow: visible; + + &::before { + content: '*'; + position: absolute; + left: -7px; + font-size: 14px; + color: #f44; + } + + .van-cell__title { + float: none; + display: inline-block; + } + } + + .van-icon-arrow { + position: absolute; + top: 50%; + right: 15px; + transform: translateY(-50%); + color: $c-gray-dark; + font-size: 12px; + } + } +} diff --git a/packages/vant-css/src/checkbox.css b/packages/vant-css/src/checkbox.css new file mode 100644 index 000000000..9e7c9d7a2 --- /dev/null +++ b/packages/vant-css/src/checkbox.css @@ -0,0 +1,49 @@ +@import './common/var.css'; + +@component-namespace van { + @b checkbox { + overflow: hidden; + + @m disabled { + .van-icon { + color: #d1dbe5; + } + } + + @e input { + position: relative; + height: 22px; + margin-right: 15px; + float: left; + } + + @e control { + position: absolute; + top: 0; + left: 0; + width: 22px; + height: 22px; + opacity: 0; + margin: 0; + } + + @e label { + line-height: 22px; + margin-left: 37px; + display: block; + } + + .van-icon { + font-size: 22px; + line-height: 1; + } + + .van-icon-checked { + color: $c-green; + } + + .van-icon-check { + color: $c-gray-dark; + } + } +} diff --git a/packages/vant-css/src/col.css b/packages/vant-css/src/col.css new file mode 100644 index 000000000..b6f234272 --- /dev/null +++ b/packages/vant-css/src/col.css @@ -0,0 +1,52 @@ +.van-col { + float: left; + box-sizing: border-box; +} +.van-col-1 { width: 4.166666666666667%; } +.van-col-2 { width: 8.333333333333334%; } +.van-col-3 { width: 12.5%; } +.van-col-4 { width: 16.666666666666668%; } +.van-col-5 { width: 20.833333333333336%; } +.van-col-6 { width: 25%; } +.van-col-7 { width: 29.166666666666668%; } +.van-col-8 { width: 33.333333333333336%; } +.van-col-9 { width: 37.5%; } +.van-col-10 { width: 41.66666666666667%; } +.van-col-11 { width: 45.833333333333336%; } +.van-col-12 { width: 50%; } +.van-col-13 { width: 54.16666666666667%; } +.van-col-14 { width: 58.333333333333336%; } +.van-col-15 { width: 62.50000000000001%; } +.van-col-16 { width: 66.66666666666667%; } +.van-col-17 { width: 70.83333333333334%; } +.van-col-18 { width: 75%; } +.van-col-19 { width: 79.16666666666667%; } +.van-col-20 { width: 83.33333333333334%; } +.van-col-21 { width: 87.5%; } +.van-col-22 { width: 91.66666666666667%; } +.van-col-23 { width: 95.83333333333334%; } +.van-col-24 { width: 100%; } +.van-col-offset-1 { margin-left: 4.166666666666667%; } +.van-col-offset-2 { margin-left: 8.333333333333334%; } +.van-col-offset-3 { margin-left: 12.5%; } +.van-col-offset-4 { margin-left: 16.666666666666668%; } +.van-col-offset-5 { margin-left: 20.833333333333336%; } +.van-col-offset-6 { margin-left: 25%; } +.van-col-offset-7 { margin-left: 29.166666666666668%; } +.van-col-offset-8 { margin-left: 33.333333333333336%; } +.van-col-offset-9 { margin-left: 37.5%; } +.van-col-offset-10 { margin-left: 41.66666666666667%; } +.van-col-offset-11 { margin-left: 45.833333333333336%; } +.van-col-offset-12 { margin-left: 50%; } +.van-col-offset-13 { margin-left: 54.16666666666667%; } +.van-col-offset-14 { margin-left: 58.333333333333336%; } +.van-col-offset-15 { margin-left: 62.50000000000001%; } +.van-col-offset-16 { margin-left: 66.66666666666667%; } +.van-col-offset-17 { margin-left: 70.83333333333334%; } +.van-col-offset-18 { margin-left: 75%; } +.van-col-offset-19 { margin-left: 79.16666666666667%; } +.van-col-offset-20 { margin-left: 83.33333333333334%; } +.van-col-offset-21 { margin-left: 87.5%; } +.van-col-offset-22 { margin-left: 91.66666666666667%; } +.van-col-offset-23 { margin-left: 95.83333333333334%; } +.van-col-offset-24 { margin-left: 100%; } diff --git a/packages/vant-css/src/common/var.css b/packages/vant-css/src/common/var.css new file mode 100644 index 000000000..4e89219f5 --- /dev/null +++ b/packages/vant-css/src/common/var.css @@ -0,0 +1,40 @@ +/* UI标准色 */ +$c-white: #fff; +$c-black: #333; +$c-green: #06bf04; +$c-green-wx: #4b0; +$c-red: #ed5050; +$c-gray: #c9c9c9; +$c-gray-light: #e5e5e5; +$c-gray-darker: #666; +$c-gray-dark: #999; +$c-yellow: #f09000; +$c-yellow-light: #fcff00; +$c-orange: #f60; +$c-orange-dark: #f15a0c; +$c-blue: #38f; + +$c-background: #f8f8f8; + +/* 按钮颜色 */ +$button-primary-color: $c-white; +$button-primary-background-color: $c-green-wx; +$button-primary-border-color: #0a0; + +$button-default-color: $c-black; +$button-default-background-color: $c-white; +$button-default-border-color: #bbb; + +$button-danger-color: $c-white; +$button-danger-background-color: #f44; +$button-danger-border-color: #e33; + +$button-disabled-color: $c-gray-dark; +$button-disabled-background-color: $c-gray-light; +$button-disabled-border-color: #cacaca; + +$bottom-action-button-default-color: $c-white; +$bottom-action-button-default-background-color: #f85; + +$bottom-action-button-primary-color: $c-white; +$bottom-action-button-primary-background-color: #f44; diff --git a/packages/vant-css/src/dialog.css b/packages/vant-css/src/dialog.css new file mode 100644 index 000000000..0523ec2ff --- /dev/null +++ b/packages/vant-css/src/dialog.css @@ -0,0 +1,101 @@ +@import './mixins/border_retina.css'; +@import './popup.css'; + +@component-namespace van { + @b dialog-wrapper { + position: absolute; + } + + @b dialog { + position: fixed; + top: 50%; + left: 50%; + transform: translate3d(-50%, -50%, 0); + background-color: #fff; + width: 85%; + border-radius: 4px; + font-size: 16px; + overflow: hidden; + backface-visibility: hidden; + transition: .2s; + + @e header { + padding: 15px 0 0; + } + + @e content { + padding: 15px 20px; + position: relative; + + &::after { + @mixin border-retina (bottom); + } + } + + @e title { + text-align: center; + padding-left: 0; + margin-bottom: 0; + font-size: 16px; + color: #333; + } + + @e message { + color: #999; + margin: 0; + font-size: 14px; + line-height: 1.5; + + @m notitle { + color: #333; + font-size: 16px; + } + } + + @e footer { + font-size: 14px; + overflow: hidden; + + @when twobtn { + .van-dialog__btn { + width: 50%; + } + + .van-dialog__cancel { + &::after { + @mixin border-retina (right); + } + } + } + } + + @e btn { + font-size: 16px; + line-height: 40px; + border: 0; + background-color: #fff; + float: left; + box-sizing: border-box; + text-align: center; + position: relative; + } + + @e cancel { + color: #333; + } + + @e confirm { + color: #00C000; + width: 100%; + } + } +} + +.dialog-bounce-enter { + opacity: 0; + transform: translate3d(-50%, -50%, 0) scale(0.7); +} +.dialog-bounce-leave-active { + opacity: 0; + transform: translate3d(-50%, -50%, 0) scale(0.9); +} diff --git a/packages/vant-css/src/field.css b/packages/vant-css/src/field.css new file mode 100644 index 000000000..2acaa8388 --- /dev/null +++ b/packages/vant-css/src/field.css @@ -0,0 +1,89 @@ +@import './common/var.css'; +@import './mixins/border_retina.css'; +@import './cell.css'; + +@component-namespace van { + @b field { + width: 100%; + + @m hastextarea { + .van-field__control { + min-height: 60px; + } + } + + @m nolabel { + .van-cell__title { + display: none; + } + + .van-cell__value { + width: 100%; + padding-left: 0; + } + } + + @m disabled { + .van-field__control { + color: $c-gray-dark; + } + } + + @m error { + .van-field__control { + color: $c-red; + } + } + + @m border { + .van-field__control { + padding-left: 10px; + } + + &::after { + border-radius: 2px; + @mixin border-retina (top, right, bottom, left); + } + + &:last-child::after { + @mixin border-retina (bottom); + } + } + + @m autosize { + .van-field__control { + min-height: 0px; + } + } + + .van-cell__title, + .van-cell__value { + float: none; + box-sizing: border-box; + } + + .van-cell__title { + width: 90px; + position: absolute; + top: 10px; + left: 0; + } + + .van-cell__value { + width: 100%; + padding-left: 90px; + } + + @e control { + border: 0; + font-size: 14px; + line-height: 24px; + height: 24px; + padding: 0; + display: block; + width: 100%; + resize: none; + outline: 0; + } + } +} diff --git a/packages/vant-css/src/icon.css b/packages/vant-css/src/icon.css new file mode 100644 index 000000000..58e1e9497 --- /dev/null +++ b/packages/vant-css/src/icon.css @@ -0,0 +1,78 @@ +/* DO NOT EDIT! Generated by fount */ + +@font-face { + font-family: 'vant-icon'; + src: url('https://b.yzcdn.cn/zanui/icon/vant-icon-587aa52c96.eot'); + src: url('https://b.yzcdn.cn/zanui/icon/vant-icon-587aa52c96.eot?#iefix') format('embedded-opentype'), + url('https://b.yzcdn.cn/zanui/icon/vant-icon-587aa52c96.woff2') format('woff2'), + url('https://b.yzcdn.cn/zanui/icon/vant-icon-587aa52c96.woff') format('woff'), + url('https://b.yzcdn.cn/zanui/icon/vant-icon-587aa52c96.ttf') format('truetype') +} + +.van-icon { + display: inline-block; +} +.van-icon::before { + font-family: "vant-icon" !important; + font-style: normal; + font-weight: normal; + speak: none; + + display: inline-block; + text-decoration: inherit; + width: 1em; + text-align: center; + + /* For safety - reset parent styles, that can break glyph codes*/ + font-variant: normal; + text-transform: none; + + /* fix buttons height, for twitter bootstrap */ + line-height: 1em; + + /* Animation center compensation - margins should be symmetric */ + /* remove if not needed */ + /* margin-left: .2em; */ + + /* you can be more comfortable with increased icons size */ + /* font-size: 120%; */ + + /* Font smoothing. That was taken from TWBS */ + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + + /* Uncomment for 3D effect */ + /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */ +} +/* DO NOT EDIT! Generated by iconfount */ + + +.van-icon-qr-invalid:before { content: '\e800'; } /* '' */ +.van-icon-qr:before { content: '\e801'; } /* '' */ +.van-icon-exchange:before { content: '\e802'; } /* '' */ +.van-icon-close:before { content: '\e803'; } /* '' */ +.van-icon-location:before { content: '\e804'; } /* '' */ +.van-icon-upgrade:before { content: '\e805'; } /* '' */ +.van-icon-check:before { content: '\e806'; } /* '' */ +.van-icon-checked:before { content: '\e807'; } /* '' */ +.van-icon-like-o:before { content: '\e808'; } /* '' */ +.van-icon-like:before { content: '\e809'; } /* '' */ +.van-icon-chat:before { content: '\e80a'; } /* '' */ +.van-icon-shop:before { content: '\e80b'; } /* '' */ +.van-icon-photograph:before { content: '\e80c'; } /* '' */ +.van-icon-add:before { content: '\e80d'; } /* '' */ +.van-icon-add2:before { content: '\e80e'; } /* '' */ +.van-icon-photo:before { content: '\e80f'; } /* '' */ +.van-icon-logistics:before { content: '\e810'; } /* '' */ +.van-icon-edit:before { content: '\e811'; } /* '' */ +.van-icon-passed:before { content: '\e812'; } /* '' */ +.van-icon-cart:before { content: '\e813'; } /* '' */ +.van-icon-arrow:before { content: '\e814'; } /* '' */ +.van-icon-gift:before { content: '\e815'; } /* '' */ +.van-icon-search:before { content: '\e816'; } /* '' */ +.van-icon-clear:before { content: '\e817'; } /* '' */ +.van-icon-success:before { content: '\e818'; } /* '' */ +.van-icon-fail:before { content: '\e819'; } /* '' */ +.van-icon-contact:before { content: '\e81a'; } /* '' */ +.van-icon-wechat:before { content: '\e81b'; } /* '' */ +.van-icon-alipay:before { content: '\e81c'; } /* '' */ \ No newline at end of file diff --git a/packages/vant-css/src/image_preview.css b/packages/vant-css/src/image_preview.css new file mode 100644 index 000000000..3ee1a64bd --- /dev/null +++ b/packages/vant-css/src/image_preview.css @@ -0,0 +1,36 @@ +@import './swipe.css'; + +@component-namespace van { + @b image-preview { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + overflow: auto; + + @e image { + display: block; + position: absolute; + left: 0; + + @m center { + width: 100%; + height: auto; + top: 50%; + transform: translate3d(0, -50%, 0); + } + } + + .van-image-preview__image--big { + height: 100%; + width: auto; + left: 50%; + transform: translate3d(-50%, 0, 0); + } + + .van-swipe { + height: 100%; + } + } +} diff --git a/packages/vant-css/src/index.css b/packages/vant-css/src/index.css new file mode 100644 index 000000000..addb5464c --- /dev/null +++ b/packages/vant-css/src/index.css @@ -0,0 +1,30 @@ +/** + css组件库入口,组装成css组件库 + */ +@import './button.css'; +@import './cell.css'; +@import './card.css'; +@import './dialog.css'; +@import './field.css'; +@import './icon.css'; +@import './loading.css'; +@import './picker.css'; +@import './popup.css'; +@import './radio.css'; +@import './switch.css'; +@import './badge.css'; +@import './search.css'; +@import './panel.css'; +@import './steps.css'; +@import './tag.css'; +@import './checkbox.css'; +@import './tab.css'; +@import './col.css'; +@import './row.css'; +@import './image_preview.css'; +@import './actionsheet.css'; +@import './quantity.css'; +@import './progress.css'; +@import './toast.css'; +@import './uploader.css'; +@import './swipe.css'; diff --git a/packages/vant-css/src/loading.css b/packages/vant-css/src/loading.css new file mode 100644 index 000000000..446e0bbe5 --- /dev/null +++ b/packages/vant-css/src/loading.css @@ -0,0 +1,68 @@ +@-webkit-keyframes loading { + from { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + + to { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +@keyframes loading { + from { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + + to { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +@component-namespace van { + @b loading { + width: 30px; + height: 30px; + line-height: 0; + font-size: 0; + + @e spinner { + display: inline-block; + height: 100%; + width: 100%; + + -webkit-animation: loading 0.8s linear; + -webkit-animation-iteration-count: infinite; + animation: loading 0.8s linear; + animation-iteration-count: infinite; + + @m circle { + border-radius: 100%; + border: 3px solid transparent; + box-sizing: border-box; + &.van-loading__spinner--black { + border-color: $c-gray; + border-top-color: $c-gray-darker; + } + &.van-loading__spinner--white { + border-color: rgba(0, 0, 0, .5); + border-top-color: transparent; + } + } + + @m gradient-circle { + &.van-loading__spinner--black { + background: url('data:image/png;base64,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'); + background-size: contain; + } + &.van-loading__spinner--white { + background: url('data:image/png;base64,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'); + background-size: contain; + } + } + } + } +} diff --git a/packages/vant-css/src/mixins/border_retina.css b/packages/vant-css/src/mixins/border_retina.css new file mode 100644 index 000000000..404c323e5 --- /dev/null +++ b/packages/vant-css/src/mixins/border_retina.css @@ -0,0 +1,20 @@ +$border-poses: top, right, bottom, left; + +@define-mixin border-retina $poses: $border-poses, $border-retina-color: #e5e5e5 { + content: ''; + position: absolute; + top: 0; + left: 0; + box-sizing: border-box; + width: 200%; + height: 200%; + transform: scale(.5); + transform-origin: left top; + -webkit-perspective: 1000; + -webkit-backface-visibility: hidden; + pointer-events: none; + + @each $pos in $poses { + border-$(pos): 1px solid $border-retina-color; + } +} \ No newline at end of file diff --git a/packages/vant-css/src/mixins/clearfix.css b/packages/vant-css/src/mixins/clearfix.css new file mode 100644 index 000000000..cb8ed0126 --- /dev/null +++ b/packages/vant-css/src/mixins/clearfix.css @@ -0,0 +1,7 @@ +@define-mixin clearfix { + &::after { + content: ''; + display: table; + clear: both; + } +} diff --git a/packages/vant-css/src/mixins/ellipsis.css b/packages/vant-css/src/mixins/ellipsis.css new file mode 100644 index 000000000..cfe063a5b --- /dev/null +++ b/packages/vant-css/src/mixins/ellipsis.css @@ -0,0 +1,7 @@ +@define-mixin multi-ellipsis $lines { + overflow : hidden; + text-overflow: ellipsis; + display: -webkit-box; + -webkit-line-clamp: $lines; + -webkit-box-orient: vertical; +} diff --git a/packages/vant-css/src/panel.css b/packages/vant-css/src/panel.css new file mode 100644 index 000000000..2a08bda61 --- /dev/null +++ b/packages/vant-css/src/panel.css @@ -0,0 +1,36 @@ +@component-namespace van { + @b panel { + background: #fff; + border-top: 1px solid #E5E5E5; + border-bottom: 1px solid #E5E5E5; + + @e header { + padding: 10px 15px; + position: relative; + border-bottom: 1px solid #E5E5E5; + } + + @e title { + font-size: 14px; + color: #333; + } + + @e desc { + font-size: 12px; + color: #666; + } + + @e status { + font-size: 14px; + position: absolute; + top: 10px; + right: 15px; + color: #FF4444; + } + + @e footer { + border-top: 1px solid #E5E5E5; + padding: 10px 15px; + } + } +} diff --git a/packages/vant-css/src/picker.css b/packages/vant-css/src/picker.css new file mode 100644 index 000000000..0a89f49d0 --- /dev/null +++ b/packages/vant-css/src/picker.css @@ -0,0 +1,143 @@ +@import './mixins/border_retina.css'; + +@component-namespace van { + @b picker { + overflow: hidden; + background-color: #fff; + + @e toolbar { + height: 40px; + line-height: 40px; + overflow: hidden; + padding: 0 15px; + position: relative; + + &::after { + @mixin border-retina (top, bottom); + } + } + + @e cancel { + color: #3388FF; + float: left; + } + + @e confirm { + color: #3388FF; + float: right; + } + + @e columns { + position: relative; + overflow: hidden; + + @m 1 { + .van-picker-column { + width: 100%; + } + } + + @m 2 { + .van-picker-column { + width: 50%; + } + } + + @m 3 { + .van-picker-column { + width: 33.333%; + } + } + + @m 4 { + .van-picker-column { + width: 25%; + } + } + + @m 5 { + .van-picker-column { + width: 20%; + } + } + } + } + + .van-picker-center-highlight { + box-sizing: border-box; + position: absolute; + left: 0; + width: 100%; + top: 50%; + margin-top: -18px; + pointer-events: none; + } + + .van-picker-center-highlight:before, + .van-picker-center-highlight:after { + content: ''; + position: absolute; + height: 1px; + width: 100%; + background-color: #eaeaea; + display: block; + van-index: 15; + transform: scaleY(0.5); + } + + .van-picker-center-highlight:before { + left: 0; + top: 0; + bottom: auto; + right: auto; + } + + .van-picker-center-highlight:after { + left: 0; + bottom: 0; + right: auto; + top: auto; + } + + @b picker-column { + font-size: 18px; + overflow: hidden; + position: relative; + max-height: 100%; + float: left; + text-align: center; + + @e item { + height: 44px; + line-height: 44px; + padding: 0 10px; + white-space: nowrap; + position: relative; + overflow: hidden; + text-overflow: ellipsis; + color: #707274; + left: 0; + top: 0; + width: 100%; + box-sizing: border-box; + transition-duration: .3s; + backface-visibility: hidden; + + @m selected { + color: #000; + transform: translate3d(0, 0, 0) rotateX(0); + } + } + } + + .picker-column-wrapper { + transition-duration: 0.3s; + transition-timing-function: ease-out; + backface-visibility: hidden; + } + + .picker-column-wrapper.dragging, + .picker-column-wrapper.dragging .picker-item { + transition-duration: 0s; + } +} diff --git a/packages/vant-css/src/popup.css b/packages/vant-css/src/popup.css new file mode 100644 index 000000000..5d2f438c5 --- /dev/null +++ b/packages/vant-css/src/popup.css @@ -0,0 +1,78 @@ +@component-namespace van { + @b modal { + position: fixed; + width: 100%; + height: 100%; + top: 0; + left: 0; + background-color: rgba(0, 0, 0, 0.701961); + transition: all .5s ease-out; + } + + @b popup { + position: fixed; + background-color: #fff; + top: 50%; + left: 50%; + transform: translate3d(-50%, -50%, 0); + backface-visibility: hidden; + transition: .2s ease-out; + + @m top { + width: 100%; + top: 0; + right: auto; + bottom: auto; + left: 50%; + transform: translate3d(-50%, 0, 0); + } + + @m right { + top: 50%; + right: 0; + bottom: auto; + left: auto; + transform: translate3d(0, -50%, 0); + } + + @m bottom { + width: 100%; + top: auto; + bottom: 0; + right: auto; + left: 50%; + transform: translate3d(-50%, 0, 0); + } + + @m left { + top: 50%; + right: auto; + bottom: auto; + left: 0; + transform: translate3d(0, -50%, 0); + } + } +} + +.popup-slide-top-enter, +.popup-slide-top-leave-active { + transform: translate3d(-50%, -100%, 0); +} + +.popup-slide-right-enter, +.popup-slide-right-leave-active { + transform: translate3d(100%, -50%, 0); +} + +.popup-slide-bottom-enter, +.popup-slide-bottom-leave-active { + transform: translate3d(-50%, 100%, 0); +} + +.popup-slide-left-enter, .popup-slide-left-leave-active { + transform: translate3d(-100%, -50%, 0); +} + +.popup-fade-enter, .popup-fade-leave-active { + opacity: 0; +} diff --git a/packages/vant-css/src/progress.css b/packages/vant-css/src/progress.css new file mode 100644 index 000000000..7240d06cd --- /dev/null +++ b/packages/vant-css/src/progress.css @@ -0,0 +1,33 @@ +@import './common/var.css'; + +@component-namespace van { + @b progress { + @e bar { + height: 4px; + border-radius: 4.5px; + width: 100%; + background: $c-gray-light; + position: relative; + + @e finished-portion { + border-radius: 4.5px; + height: 100%; + position: absolute; + left: 0; + display: inline-block; + } + @e pivot { + padding: 2px 0; + font-size: 8px; + position: absolute; + border-radius: 6px; + width: 28px; + background-color: $c-gray-light; + line-height: 8px; + text-align: center; + top: 50%; + transform: translate3d(0, -50%, 0); + } + } + } +} diff --git a/packages/vant-css/src/quantity.css b/packages/vant-css/src/quantity.css new file mode 100644 index 000000000..d37204c97 --- /dev/null +++ b/packages/vant-css/src/quantity.css @@ -0,0 +1,79 @@ +@import './common/var.css'; + +@component-namespace van { + @b quantity { + font-size: 0; + + @e stepper { + width: 40px; + height: 30px; + box-sizing: border-box; + background-color: $c-white; + border: 1px solid $c-gray-dark; + position: relative; + outline: 0; + padding: 5px; + vertical-align: middle; + + &::before { + width: 9px; + height: 1px; + } + + &::after { + width: 1px; + height: 9px; + } + + &::before, + &::after { + content: ''; + position: absolute; + margin: auto; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: #6c6c6c; + } + } + + @e minus { + border-radius: 2px 0 0 2px; + + &::after { + display: none; + } + + @m disabled { + background-color: #f8f8f8; + border-color: #e8e8e8 #999 #e8e8e8 #e8e8e8; + } + } + + @e plus { + border-radius: 0 2px 2px 0; + + @m disabled { + background-color: #f8f8f8; + border-color: #e8e8e8 #e8e8e8 #e8e8e8 #999; + } + } + + @e input { + width: 33px; + height: 26px; + padding: 1px; + border: 1px solid $c-gray-dark; + border-width: 1px 0; + border-radius: 0; + box-sizing: content-box; + color: $c-gray-darker; + font-size: 14px; + outline: 0; + vertical-align: middle; + text-align: center; + -webkit-appearance: none; + } + } +} diff --git a/packages/vant-css/src/radio.css b/packages/vant-css/src/radio.css new file mode 100644 index 000000000..c45ade591 --- /dev/null +++ b/packages/vant-css/src/radio.css @@ -0,0 +1,48 @@ +@import "./common/var.css"; + +@component-namespace van { + @b radio { + overflow: hidden; + + @m disabled { + .van-icon { + color: #d1dbe5; + } + } + + @e input { + position: relative; + height: 22px; + float: left; + } + + @e control { + position: absolute; + top: 0; + left: 0; + width: 22px; + height: 22px; + opacity: 0; + margin: 0; + } + + @e label { + line-height: 22px; + display: block; + margin-left: 37px; + } + + .van-icon { + font-size: 22px; + line-height: 1; + } + + .van-icon-checked { + color: $c-green; + } + + .van-icon-check { + color: $c-gray-dark; + } + } +} diff --git a/packages/vant-css/src/row.css b/packages/vant-css/src/row.css new file mode 100644 index 000000000..d31edb8af --- /dev/null +++ b/packages/vant-css/src/row.css @@ -0,0 +1,8 @@ +.van-row { + &:after { + content: ""; + display: table; + clear: both; + } + zoom: 1; +} diff --git a/packages/vant-css/src/search.css b/packages/vant-css/src/search.css new file mode 100644 index 000000000..5cd27016b --- /dev/null +++ b/packages/vant-css/src/search.css @@ -0,0 +1,61 @@ +@import './common/var.css'; +@import './icon.css'; + +@component-namespace van { + @b search { + position: relative; + box-sizing: border-box; + padding: 4px 15px; + background-color: #F2F2F2; + + @m focus { + padding-right: 50px; + } + + @e input-wrap { + position: relative; + padding: 8px 24px 8px 35px; + border: 1px solid $c-gray-light; + border-radius: 4px; + background-color: $c-white; + } + + @e input { + display: block; + width: 100%; + height: 14px; + font-size: 14px; + color: $c-gray-dark; + border: none; + outline: none; + } + + @e cancel { + position: absolute; + line-height: 34px; + padding: 4px 0; + top: 0; + right: 10px; + font-size: 14px; + color: $c-green; + } + + .van-icon-search { + color: $c-gray-darker; + position: absolute; + top: 8px; + left: 10px; + font-size: 16px; + line-height: 1; + } + + .van-icon-clear { + font-size: 14px; + line-height: 1; + position: absolute; + right: 5px; + top: 9px; + color: #888; + } + } +} \ No newline at end of file diff --git a/packages/vant-css/src/steps.css b/packages/vant-css/src/steps.css new file mode 100644 index 000000000..f2b16ba8f --- /dev/null +++ b/packages/vant-css/src/steps.css @@ -0,0 +1,159 @@ +@import './common/var.css'; +@import './mixins/ellipsis.css'; +@import './icon.css'; + +@component-namespace van { + @b steps { + overflow: hidden; + padding: 0 10px; + background-color: #fff; + + @m 4 { + .van-step { + width: 33.2%; + } + } + + @m 3 { + .van-step { + width: 50%; + } + } + + @e icon { + float: left; + margin-right: 10px; + } + + .van-icon { + font-size: 40px; + line-height: 1; + } + + @e message { + display: table; + height: 40px; + margin: 15px 0; + + .van-steps__message-wrapper { + display: table-cell; + vertical-align: middle; + } + } + + @e title { + font-size: 14px; + color: $c-black; + } + + @e desc { + font-size: 12px; + line-height: 1.5; + color: $c-gray-dark; + max-height: 18px; + @mixin multi-ellipsis 1; + } + + @e items { + margin: 0 0 10px; + overflow: hidden; + position: relative; + padding-bottom: 20px; + + @m alone { + padding-top: 10px; + } + } + } + + @b step { + font-size: 14px; + float: left; + position: relative; + color: $c-gray-dark; + + @m finish { + color: $c-black; + + .van-step__circle, + .van-step__line { + background-color: $c-green; + } + } + + @m process { + color: $c-black; + + .van-step__circle-container { + top: 24px; + } + + .van-icon { + font-size: 12px; + color: $c-green; + line-height: 1; + display: block; + } + } + + &:first-child { + .van-step__title { + transform: none; + margin-left: 0; + } + } + + &:last-child { + position: absolute; + right: 10px; + width: auto; + + .van-step__title { + transform: none; + margin-left: 0; + } + + .van-step__circle-container { + left: auto; + right: -9px; + } + + .van-step__line { + width: 0; + } + } + + .van-step__circle-container { + position: absolute; + top: 28px; + left: -8px; + padding: 0 8px; + background-color: #fff; + z-index: 1; + } + + @e circle { + display: block; + width: 5px; + height: 5px; + background-color: #888; + border-radius: 50%; + } + + @e title { + font-size: 12px; + transform: translate3d(-50%, 0, 0); + display: inline-block; + margin-left: 3px; + } + + @e line { + position: absolute; + left: 0px; + top: 30px; + width: 100%; + height: 1px; + background-color: $c-gray-light; + } + } +} diff --git a/packages/vant-css/src/swipe.css b/packages/vant-css/src/swipe.css new file mode 100644 index 000000000..cd0ba4c61 --- /dev/null +++ b/packages/vant-css/src/swipe.css @@ -0,0 +1,56 @@ +@import './common/var.css'; + +@component-namespace van { + @b swipe { + position: relative; + overflow: hidden; + width: 100%; + height: 100%; + + @e indicators { + position: absolute; + bottom: 10px; + left: 50%; + transform: translateX(-50%); + } + + @e indicator { + width: 5px; + height: 5px; + display: inline-block; + border-radius: 100%; + background: #999; + opacity: .8; + margin: 0 3px; + z-index: 1; + + @m active { + background: $c-orange; + opacity: 1; + } + } + + @e items { + position: relative; + overflow: hidden; + position: relative; + height: 100%; + } + } + + @b swipe-item { + display: none; + height: 100%; + width: 100%; + text-align: center; + + img { + width: 100%; + height: auto; + } + + &:first-child { + display: block; + } + } +} diff --git a/packages/vant-css/src/switch.css b/packages/vant-css/src/switch.css new file mode 100644 index 000000000..fc827ef9b --- /dev/null +++ b/packages/vant-css/src/switch.css @@ -0,0 +1,59 @@ +@import './mixins/border_retina.css'; + +@component-namespace van { + @b switch { + height: 31px; + width: 51px; + display: inline-block; + position: relative; + background: #fff; + border-radius: 16px; + &::after{ + @mixin border-retina (top, right, bottom, left), rgba(0, 0, 0, .1); + border-width: 3px; + border-radius: 32px; + } + + @e node { + width: 28px; + height: 28px; + border-radius: 13.5px; + background-color: #fff; + position: absolute; + box-shadow: 0 3px 1px 0 rgba(0, 0, 0, .05), 0 2px 2px 0 rgba(0, 0, 0, .1), 0 3px 3px 0 rgba(0, 0, 0, .05); + left: 1px; + top: 1px; + z-index: 2; + &::after { + @mixin border-retina (top, right, bottom, left), rgba(0, 0, 0, .1); + border-radius: 27px; + } + } + + @e loading { + width: 16px; + height: 16px; + position: relative; + left: 50%; + top: 50%; + transform: translate3d(-50%, -50%, 0); + } + + @m on { + background-color: #44db5e; + &::after { border-color: #44db5e; } + .van-switch__node { + transform: translateX(20px); + } + } + + @m off { + background-color: #fff; + border-color: rgba(0, 0, 0, .1); + } + + @m disabled { + opacity: .4; + } + } +} diff --git a/packages/vant-css/src/tab.css b/packages/vant-css/src/tab.css new file mode 100644 index 000000000..d9e803a94 --- /dev/null +++ b/packages/vant-css/src/tab.css @@ -0,0 +1,122 @@ +@import './common/var.css'; +@import './mixins/border_retina.css'; + +@component-namespace van { + @b tabs { + position: relative; + + @m col-2 { + .van-tab { + width: 50%; + } + } + + @m col-3 { + .van-tab { + width: 33.33333333333333%; + } + } + + @m col-4 { + .van-tab { + width: 25%; + } + } + + @m col-5 { + .van-tab { + width: 20%; + } + } + + @e nav { + overflow: hidden; + transition: transform .5s cubic-bezier(.645, .045, .355, 1); + position: relative; + + @m line { + height: 44px; + background-color: $c-white; + &::after { + @mixin border-retina (top); + @mixin border-retina (bottom); + } + @b tabs-nav-bar { + display: block; + } + } + + @m card { + height: 28px; + margin: 0 15px; + background-color: $c-white; + border-radius: 2px; + border: 1px solid #666666; + overflow: hidden; + + .van-tab { + color: #666666; + line-height: 28px; + border-right: 1px solid #666666; + &:last-child { + border-right: none; + } + &.van-tab--active { + background-color: #666666; + color: $c-white; + } + } + } + } + + @e nav-bar { + z-index: 1; + position: absolute; + left: 0; + bottom: 0; + height: 2px; + background-color: #f13e3a; + transition: transform .3s cubic-bezier(.645, .045, .355, 1); + transform-origin: 0 0; + } + } + + @b tab { + color: $c-black; + font-size: 14px; + line-height: 44px; + box-sizing: border-box; + transition: color .3s cubic-bezier(.645, .045, .355, 1); + cursor: pointer; + text-align: center; + float: left; + + @m active { + color: #FF4444; + } + + @e pane { + display: none; + + @m select { + display: block; + } + } + } +} + + + + + + + + + + + + + + + + diff --git a/packages/vant-css/src/tag.css b/packages/vant-css/src/tag.css new file mode 100644 index 000000000..132e01930 --- /dev/null +++ b/packages/vant-css/src/tag.css @@ -0,0 +1,69 @@ +@import './common/var.css'; +@import './mixins/border_retina.css'; + +@component-namespace van { + @b tag { + position: relative; + display: inline-block; + line-height: 14px; + padding: 1px 5px; + border-radius: 2px; + font-size: 10px; + background: $c-gray; + color: $c-white; + + &::after { + @mixin border-retina (top, right, bottom, left), $c-gray; + border-radius: 4px; + } + + @m success { + background: $c-green; + + &::after { + border-color: $c-green; + } + + @when plain { + color: $c-green; + } + } + + @m danger { + background: $button-danger-background-color; + + &::after { + border-color: $button-danger-background-color; + } + + @when plain { + color: $button-danger-background-color; + } + } + + @m primary { + background: $c-blue; + + &::after { + border-color: $c-blue; + } + + @when plain { + color: $c-blue; + } + } + + @when plain { + background: $c-white; + color: $c-gray; + } + + @when mark { + border-radius: 0 8px 8px 0; + + &::after { + border-radius: 0 16px 16px 0; + } + } + } +} diff --git a/packages/vant-css/src/toast.css b/packages/vant-css/src/toast.css new file mode 100644 index 000000000..fc27bea7c --- /dev/null +++ b/packages/vant-css/src/toast.css @@ -0,0 +1,56 @@ +@import './common/var.css'; + +@component-namespace van { + @b toast { + position: fixed; + z-index: 3001; + border-radius: 5px; + background-color: #272727; + opacity: .7; + top: 50%; + left: 50%; + transform: translate3d(-50%, -50%, 0); + font-size: 12px; + color: $c-white; + text-align: center; + line-height: 12px; + + @e overlay { + position: fixed; + left: 0; + top: 0; + background: transparent; + height: 100vh; + width: 100vh; + z-index: 3000; + } + + @m loading { + padding: 45px; + } + + @m text, html { + padding: 12px; + min-width: 200px; + } + + @m default { + width: 120px; + height: 120px; + + .van-toast__icon { + padding-top: 20px; + font-size: 50px; + } + + .van-toast__text { + padding: 15px 0 20px; + font-size: 14px; + } + } + } +} + +.van-toast-fade-enter, .van-toast-fade-leave-active { + opacity: 0; +} diff --git a/packages/vant-css/src/uploader.css b/packages/vant-css/src/uploader.css new file mode 100644 index 000000000..c6499d397 --- /dev/null +++ b/packages/vant-css/src/uploader.css @@ -0,0 +1,23 @@ +@component-namespace van { + @b uploader { + position: relative; + display: inline-block; + + @e input { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + display: block; + width: 100%; + height: 100%; + opacity: 0; + cursor:pointer; + } + + input[type="file" i]::-webkit-file-upload-button { + cursor:pointer; + } + } +}