介绍
更新时间:2023-06-14
一、iov-ui介绍
1、组件版本说明
点击查看 iov-ui 最新版本(车载生态开放平台中组件相关使用及案例均参考自1.xx.xx版本组件库)
- 1.xx.xx 为2.0小程序的ui组件库,里面包含了换肤和自适应
- 0.xx.xx 为1.0小程序的ui组件库,只包含换肤
npm install iov-ui -S
使用时遵循百度小程序规范,先在json中引入,然后直接在swan中使用。
{
"navigationBarTitleText": "智能小程序官方组件",
"usingComponents": {
"iov-button": "iov-ui/lib/button"
}
}
<iov-button>确认</iov-button>
小程序目前分两个版本,支持换肤和自适应+换肤。支持自适应+换肤的版本号在1.0.3以上版本,仅支持换肤的是0.0.100以上版本。两个版本的主题文件也不一样。
2、组件更新记录
1.xx.xx组件更新记录
-
1.2.54
- titlebar 空标题问题
-
1.2.53
- preview-image 滑动屏幕未暂停问题
-
1.2.52
- [fix] 处理 layout-con 组件同时注册多个 voice-type 问题 (layout-con组件包含两个scroll-view组件,如果两个组件同时注册voice-type 会导致语音不执行,当前改动使这个组件只能存在一个voice-type)
-
1.2.51
- solution-card-layout height兼容
-
1.2.48 - 1.2.50
- preview-image 新增图片预览手势放大缩小优化
-
1.2.47
- preview-image 新增图片预览双指放大
-
1.2.46
- slider max<20 会拖出min外的问题
- slider 增加滑块上方价格隐藏tag
- preview-image 新增可显示title和左右切换按钮
-
1.2.45
- modal 语音指令扩展
-
1.2.44
- card 新增no-voice-zone区域
-
1.2.43
- card ui调整
0.xx.xx组件更新记录
- 参考npm官网
二、标准小程序主题配置
支持自适应2.0和换肤的 theme.css 文件
/* ex11白天小程序主题配置 */
:root {
/* 系统颜色 */
/* 页面背景色 */
--colorBackground: linear-gradient(180deg, rgba(227, 231, 242, 1), rgba(219, 226, 233, 1));
/* 表层色1 */
--colorSurface1: linear-gradient(180deg, rgba(242, 244, 251, 0.8), rgba(238, 240, 244, 0.8));
/* 表层色2 */
--colorSurface2: linear-gradient(180deg, rgba(247, 249, 251, 1), rgba(235, 238, 243, 1));
/* 表层色3 */
--colorSurface3: rgba(190, 208, 227, 0.3);
/* 功能色 */
/* 1级功能色 */
--colorPrimary1: linear-gradient(180deg, rgba(54, 190, 169, 1), rgba(0, 166, 141, 1));
/* 1级功能色2, 主题色非渐变 */
--colorPrimary2: rgba(0, 187, 158, 1);
/* 1级功能色3 */
--colorPrimary3: linear-gradient(180deg, rgba(248, 249, 252, 1), rgba(230, 246, 245, 1));
/* 2级功能色1 */
--colorSecondary1: linear-gradient(180deg, rgba(133, 151, 176, 1), rgba(119, 133, 161, 1));
/* 2级功能色2 */
--colorSecondary2: rgba(89, 90, 113, 0.06);
/* 2级功能色3 */
--colorSecondary3: rgba(190, 208, 227, 0.3);
/* 3级功能色 */
--colorTertiary1: rgba(4, 10, 18, 1);
/* 常用在边框,分割线颜色 */
--colorTertiary2: rgba(83, 90, 113, 0.6);
/* 状态色 */
/* 成功色 */
--colorSucceed: rgb(6, 209, 128);
/* 警戒色 */
--colorWarning: rgba(217, 0, 0, 1);
/* 强调色 */
--colorImportant: rgba(241, 143, 39, 1);
/* 通用字体颜色 */
--colorTextNormal: rgba(4, 10, 18, 1);
/* 辅助字体颜色 */
--colorTextCaptioon: rgba(4, 10, 18, 0.6);
/* 高亮文字颜色---- */
--icolorTextHighlight: rgba(0, 187, 158, 1);
/* 链接文字颜色---- */
--icolorTextLink: rgba(0, 146, 255, 1);
/* 成功状态颜色---- */
--icolorTextSucceed: rgba(6, 209, 128, 1);
/* 警告状态颜色---- */
--icolorTextWarning: rgba(217, 0, 0, 1);
/*滚动条滑块颜色*/
--colorScrollRailNor: rgba(169, 176, 192, 0.6);
/*滚动条轨道颜色*/
--colorScrollGapNor: rgba(69, 78, 91, 0.1);
/*滚动条滑块颜色*/
--borderScrollWidth: 0.04rem;
/*滚动条轨道颜色*/
--borderScrollRadius: 0.1rem;
/* 用于运营类等一级大标题 */
--ifontsizeH1: 0.56rem;
/* 运营类二级大标题 */
--ifontsizeH2: 0.48rem;
/* 用于常规标题如导航、标题栏 */
--ifontsizeTitle1: 0.4rem;
/* 常规标题2 */
--ifontsizeTitle2: 0.36rem;
/* 操作类标题 */
--ifontsizeOperation: 0.32rem;
/* 一级内容、操控类(Tab、弹窗标题、列表标题等 */
--ifontsizeC1: 0.36rem;
/* 二级内容(二级导航、按钮) */
--ifontsizeC2: 0.32rem;
/* 三级级内容 */
--ifontsizeC3: 0.28rem;
/* 辅助类文案,内容(列表),比如输入出错提示 */
--ifontsizeCaption1: 0.24rem;
/* 仅用于标签(谨慎使用) */
--ifontsizeCaption2: 0.2rem;
/* 通用圆角-小 */
--cornerNormalS: 0.1rem;
/* 通用圆角-中 */
--cornerNormalM: 0.2rem;
/* 通用圆角-大 */
--cornerNormalL: 0.24rem;
/* 通用圆角-Full */
--cornerNormalFull: 100%;
/* 异形屏参数 */
/* 异形屏,屏幕上方弧线垂直方向大小 */
--screenArcTop: 0px;
/* 异形屏,屏幕右方弧线水平方向大小 */
--screenArcRight: 0px;
/* 异形屏,屏幕下方弧线垂直方向大小 */
--screenArcBottom: 0px;
/* 异形屏,屏幕左方弧线水平方向大小 */
--screenArcLeft: 0px;
/*textfield 颜色*/
/*textfield 普通*/
--colorTextfieldBgNor: transparent;
--colorTextfieldTextNor: rgb(86, 92, 104);
/* --colorTextfieldBgNor: ; 光标颜色 */
--colorTextfieldBorderNor: transparent;
/* 带下划线的边框 */
--colorTextfieldUNor: rgba(83, 90, 113, 0.6);
--textfieldBorder: 0.02rem solid var(--colorTextfieldBorderNor);
--textfieldBorderBottom: 0.02rem solid var(--colorTextfieldUNor);
/*textfield 输入状态*/
--colorTextfieldBgInput: transparent;
--colorTextfieldTextInput: rgb(4, 10, 18, 1);
--colorTextfieldCsr: rgb(0, 187, 159);
--colorTextfieldInput: rgba(167, 183, 204, 0.5);
--colorTextfieldUInput: rgb(30, 241, 198);
--colorTextfieldBorInput: transparent;
/*textfield Pressed状态*/
--colorTextfieldBgPre: unset;
--colorTextfieldTextPre: unset;
--colorTextfieldBorderPre: unset;
/*textfield Error状态*/
--colorTextfieldTexErr: rgb(255, 255, 255);
--colorTextfieldBgError: transparent;
--colorTextfieldTextError: rgb(4, 10, 18, 1);
--colorTextfieldBorderError: rgb(217, 0, 0);
/*textfield Disable状态*/
--colorTextfieldTexDis: rgba(255, 255, 255, 0.3);
--colorTextfieldBgDis: transparent;
--colorTextfieldTextDis: rgb(4, 10, 18, 0.3);
--colorTextfieldBorderDis: rgba(83, 90, 113, 0.6);
/* tag 组件颜色 */
/* tag Succed */
--colorTagSucceedBg: rgba(129, 255, 235, 0.1);
--colorTagSucceedBorder: rgba(6, 209, 128, 1);
--colorTagSucceedText: rgba(6, 209, 128, 1);
/* tag Warning */
--colorTagWarningBg: rgba(217, 0, 0, 0.1);
--colorTagWarningBorder: rgba(217, 0, 0, 1);
--colorTagWarningText: rgba(217, 0, 0, 1);
/* tag Hint */
--colorTagHintBg: rgba(241, 143, 39, 0.1);
--colorTagHintBorder: rgba(241, 143, 39, 1);
--colorTagHintText: rgba(241, 143, 39, 1);
/* tag Highlight */
--colorTagHighlightBg: rgba(0, 187, 158, 0.1);
--colorTagHighlightBorder: rgba(0, 187, 158, 1);
--colorTagHighlightText: rgba(0, 187, 158, 1);
/* tag Refund */
--colorTagRefundBg: rgba(4, 10, 18, 0.05);
--colorTagRefundBorder: rgba(4, 10, 18, 0.5);
--colorTagRefundText: rgba(4, 10, 18, 0.5);
/* button 按钮颜色*/
/* button 阴影 */
--colorBtnShadow: 0 0.04rem 0.1rem 0 rgba(0, 0, 0, 0.1);
/* Real 普通状态 */
--colorRealbtnBgNor: linear-gradient(180deg, rgba(54, 190, 169, 1), rgba(0, 166, 141, 1));
--colorRealbtnBorderNor: rgba(180, 251, 235, 0.2);
--colorRealbtnTextNor: rgb(255, 255, 255);
/* Real 点击状态*/
--colorRealbtnBgPre: linear-gradient(180deg, rgba(54, 190, 169, 0.6), rgba(0, 166, 141, 0.6));
--colorRealbtnBorderPre: rgba(180, 251, 235, 0.2);
--colorRealbtnTextPre: rgba(255, 255, 255, 0.6);
/* Real 禁用状态*/
--colorRealbtnBgDis: linear-gradient(180deg, rgba(54, 190, 169, 0.3), rgba(0, 166, 141, 0.3));
--colorRealbtnBorderDis: rgba(180, 251, 235, 0.1);
--colorRealbtnTextDis: rgba(255, 255, 255, 0.3);
/* Real2 普通状态 */
--colorRealbtn2BgNor: linear-gradient(180deg, rgba(133, 151, 176, 1), rgba(119, 133, 161, 1));
--colorRealbtn2BorderNor: rgba(180, 251, 235, 0.2);
--colorRealbtn2TextNor: rgb(255, 255, 255);
/* Real2 点击状态*/
--colorRealbtn2BgPre: linear-gradient(180deg, rgba(133, 151, 176, 0.6), rgba(119, 133, 161, 0.6));
--colorRealbtn2BorderPre: rgba(180, 251, 235, 0.6);
--colorRealbtn2TextPre: rgb(255, 255, 255);
/* Real2 禁用状态*/
--colorRealbtn2BgDis: linear-gradient(180deg, rgba(133, 151, 176, 0.3), rgba(119, 133, 161, 0.3));
--colorRealbtn2BorderDis: rgba(180, 251, 235, 0.05);
--colorRealbtn2TextDis: rgba(255, 255, 255, 0.3);
/* Ghost btn 普通状态 */
--colorGhostbtnBgNor: linear-gradient(180deg, rgba(133, 151, 176, 1), rgba(119, 133, 161, 1));
--colorGhostbtnBorderNor: rgba(180, 251, 235, 0.2);
--colorGhostbtnTextNor: rgb(255, 255, 255);
/* Ghost 点击状态*/
--colorGhostbtnBgPre: linear-gradient(180deg, rgba(133, 151, 176, 0.6), rgba(119, 133, 161, 0.6));
--colorGhostbtnBorderPre: rgba(180, 251, 235, 0.6);
--colorGhostbtnTextPre: rgb(255, 255, 255);
/* Ghost 禁用状态*/
--colorGhostbtnBgDis: linear-gradient(180deg, rgba(133, 151, 176, 0.3), rgba(119, 133, 161, 0.3));
--colorGhostbtnBorderDis: rgba(180, 251, 235, 0.05);
--colorGhostbtnTextDis: rgba(255, 255, 255, 0.3);
/* Flat btn 普通状态 */
--colorFlatTextbtnBgNor: transparent;
--colorFlatTextbtnBorderNor: transparent;
--colorFlatTextbtnNor: rgba(0, 187, 158, 1);
/* Flat 点击状态*/
--colorFlatTextbtnBgPre: transparent;
--colorFlatTextbtnBorderPre: transparent;
--colorFlatTextbtnPre: rgba(0, 187, 158, 1);
/* Flat 禁用状态*/
--colorFlatTextbtnBgDis: transparent;
--colorFlatTextbtnBorderDis: transparent;
--colorFlatTextbtnDis: rgba(0, 187, 158, 0.3);
/* ui 未提供样式*/
--ibtnSmallLinehight: 0.6rem;
--ibtnRealBgc: unset;
--ibtnRealBorderRadius: 0.04rem;
--ibtnRealBorderWidth: 0.02rem;
--ibtnGhostBgi: unset;
/* --ibtnGhostBorderRadius: 4px; */
--ibtnGhostBorderWidth: 0.02rem;
/* --ibtnFlatBorderRadius: 4px; */
--ibtnFlatBorderWidth: 0.02rem;
/* slider变量 */
/* normal*/
--colorSliderThumbNor: linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(237, 240, 250, 1));
--colorSliderThumbBorderNor: unset;
--colorSliderRailNor: linear-gradient(90deg, rgba(0, 187, 158, 1), rgba(14, 221, 179, 1));
--colorSliderGapNor: rgba(120, 133, 150, 0.3);
/* Pressed */
--colorSliderThumbPre: linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(237, 240, 250, 1));
--colorSliderThumbBorderPre: unset;
--colorSliderRailPre: linear-gradient(90deg, rgba(0, 187, 158, 1), rgba(14, 221, 179, 1));
/* Disable*/
--colorSliderThumbDis: linear-gradient(180deg, rgba(255, 255, 255, 0.24), rgba(237, 240, 250, 0.24));
--colorSliderRailDis: linear-gradient(90deg, rgba(0, 187, 158, 0.24), rgba(14, 221, 179, 0.24));
--colorSliderGapDis: rgba(120, 133, 150, 0.1);
--iSliderBlockSize: 0.324rem;
--isliderBlockMarginHalfSize: -0.162rem;
--isliderBlockHalfSize: 0.162rem;
--isliderBlockShadow: 0 0.03rem 0.16rem 0 rgba(0, 0, 0, 0.2);
--isliderLineHeight: 0.06rem;
--isliderTapAreaHeight: 0.72rem;
--isliderBlockActiveShadowOpatity: 0.6;
--isliderBlockActiveShadowSize: 0.72rem;
--isliderBlockMarginSize: -0.2rem;
/* searchbar 颜色*/
/* Normal */
--colorSearchbarBgNor: rgba(255, 255, 255, 0.3);
--colorSearchbarBorderNor: transparent;
--colorSearchbarTextNor: rgb(86, 92, 104);
--colorSearchbarIconNor: rgb(255, 255, 255);
/* Pressed */
--colorSearchbarBgPre: unset;
--colorSearchbarBorderPre: unset;
--colorSearchbarTextPre: unset;
/* Inputting */
--colorSearchbarBgInputting: rgba(255, 255, 255, 1);
--colorSearchbarCsr: rgb(0, 187, 159, 1);
--colorSearchbarBorderInputting: transparent;
--colorSearchbarInputting: rgba(4, 10, 18, 1);
/* radio */
/* 选中状态 */
--colorRadioSelThumbBgNor: linear-gradient(180deg, rgba(241, 248, 254, 1), rgba(214, 219, 235, 1));
--colorRadioSelThumbBorderNor: unset;
--colorRadioSelBaseBgNor: linear-gradient(180deg, rgba(0, 195, 166, 1), rgba(0, 166, 141, 1));
--colorRadioSelBaseBorderNor: unset;
/* 选中Pressed状态 */
--colorRadioSelThumbBgPre: unset;
--colorRadioSelThumbBorderPre: unset;
--colorRadioSelBaseBgPre: unset;
--colorRadioSelBaseBorderPre: unset;
/* 未选中状态 */
--colorRadioUnselThumbBgNor: unset;
--colorRadioUnselThumbBorderNor: unset;
--colorRadioUnselBaseBgNor: linear-gradient(180deg, rgba(143, 159, 182, 1), rgba(119, 133, 160, 1));
--colorRadioUnselBaseBorderNor: unset;
/* 选中禁用状态 */
--colorRadioSelThumbBgDis: linear-gradient(180deg, rgba(241, 248, 254, 0.5), rgba(214, 219, 235, 0.5));
--colorRadioSelThumbBorderDis: unset;
--colorRadioSelBaseBgDis: linear-gradient(180deg, rgba(0, 195, 166, 0.5), rgba(0, 166, 141, 0.5));
--colorRadioUnselBaseBorderDis: unset;
/* 未选中禁用状态 */
--colorRadioUnselThumbBgDis: unset;
--colorRadioUnselThumbBorderDis: unset;
--colorRadioUnselBaseBgDis: linear-gradient(180deg, rgba(143, 159, 182, 0.5), rgba(119, 133, 160, 0.5));
--colorRadioUnselBaseBorderDis: unset;
/* Checkbox */
/* 选中状态 */
--colorCheckboxSelThumbNor: rgba(255, 255, 255, 1);
--colorCheckboxSelBaseBgNor: linear-gradient(180deg, rgba(0, 195, 166, 1), rgba(0, 166, 141, 1));
--colorCheckboxSelBaseBorderNor: transparent;
--cornerCheckboxBorderWidth: 0;
/* 选中Pressed状态 */
--colorCheckboxSelThumbPre: unset;
--colorCheckboxSelBaseBgPre: unset;
--colorCheckboxSelBaseBorderPre: unset;
/* 未选中状态 */
--colorCheckboxUnselThumbNor: transparent;
--colorCheckboxUnselBaseBgNor: linear-gradient(180deg, rgba(143, 159, 182, 1), rgba(119, 133, 160, 1));
--colorCheckboxUnselBaseBorderNor: transparent;
--cornerCheckboxUnselBorderWidth: 0.01rem;
/* 未选中Pressed状态 */
--colorCheckboxUnselThumbPre: unset;
--colorCheckboxUnselBaseBgPre: unset;
--colorCheckboxUnselBaseBorderPre: unset;
/* 选中禁用状态 */
--colorCheckboxSelThumbDis: rgba(255, 255, 255, 0.5);
--colorCheckboxSelBaseBgDis: linear-gradient(180deg, rgba(0, 195, 166, 0.5), rgba(0, 166, 141, 0.5));
--colorCheckboxSelBaseBorderDis: unset;
/* 未选中禁用状态 */
--colorCheckboxUnselThumbDis: unset;
--colorCheckboxUnselBaseBgDis: linear-gradient(180deg, rgba(143, 159, 182, 0.5), rgba(119, 133, 160, 0.5));
--colorCheckboxUnselBaseBorderDis: transparent;
/* loadingbar变量 */
--colorProgIndeterminateRail: linear-gradient(90deg, rgba(0, 187, 158, 1), rgba(14, 221, 179, 1));
--colorProgDeterminateRail: linear-gradient(90deg, rgba(0, 187, 158, 1), rgba(14, 221, 179, 1));
--colorProgIndeterminateGap: rgba(120, 133, 150, 0.3);
--colorProgDeterminateGap: rgba(120, 133, 150, 0.3);
/* loading circle */
--colorProgCircularRail: rgb(0, 0, 0, 0.45);
--colorProgCircularGap: rgba(0, 0, 0, 0.2);
/* 纵向tabs变量 */
--colorTabsVerticalSelNor: rgba(0, 187, 159, 1);
--colorTabsVerticalSelBaseBgNor: linear-gradient(90deg, rgba(0, 187, 158, 0.2), rgba(0, 187, 158, 0));
--colorTabsVerticalSelBaseBorderNor: linear-gradient(180deg, rgba(226, 230, 241, 0), rgba(226, 230, 241, 1));
--colorTabsVerticalSelTextNor: rgb(0, 187, 159, 1);
--colorTabsVerticalUnselTextNor: rgba(4, 10, 18, 0.6);
/* Vertical Pressed 状态下 */
--colorTabsVerticalSelTextPre: transparent;
--colorTabsVerticalUnselPre: unset;
--colorTabsVerticalUnselBaseBgPre: linear-gradient(90deg, rgba(53, 229, 255, 0.2), rgba(53, 229, 255, 0));
--colorTabsVerticalUnselBaseBorderPre: unset;
--colorTabsVerticalUnselBasePre: unset;
--colorTabsVerticalUnselTextPre: rgba(255, 255, 255, 1);
/* Horizontal Pressed 状态下 */
--colorTabsHorizontalSelTextPre: rgb(0, 187, 159, 1);
/* Horizontal 未选中Pressed 状态下 */
--colorTabsHorizontalUnselBasePre: unset;
--colorTabsHorizontalUnselTextPre: unset;
--colorTabsHorizontalUnselBaseBgPre: unset;
--colorTabsHorizontalUnselBaseBorderPre: rgb(30, 180, 209);
/* Horizontal normal */
--colorTabsHorizontalSelNor: rgba(0, 187, 159, 1);
--colorTabsHorizontalSelBaseBgNor: transparent;
--colorTabsHorizontalSelBaseBgDis: linear-gradient(90deg, rgba(53, 229, 255, 0.1), rgba(53, 229, 255, 0));
--colorTabsHorizontalSelBaseBorderNor: transparent;
/* 横向tabs变量 */
--colorTabsHorizontalSelTextNor: rgba(0, 187, 159, 1);
--colorTabsHorizontalUnselTextNor: rgba(4, 10, 18, 0.6);
/* tabs禁用状态变量 */
--colorTabsVerticalSelDis: rgba(30, 241, 198, 0.3);
--colorTabsVerticalSelBaseBgDis: linear-gradient(90deg, rgba(0, 187, 158, 0.1), rgba(0, 187, 158, 0));
--colorTabsVerticalSelBaseBorderDis: unset;
--colorTabsVerticalSelBaseDis: unset;
--colorTabsVerticalUnselDis: unset;
--colorTabsVerticalUnselBaseDis: unset;
--colorTabsVerticalUnselBaseBgDis: unset;
--colorTabsVerticalUnselBaseBorderDis: unset;
--colorTabsVerticalSelTextDis: rgba(0, 187, 159, 0.3);
--colorTabsVerticalUnselTextDis: rgba(4, 10, 18, 0.3);
--colorTabsHorizontalSelTextDis: rgba(0, 187, 159, 0.3);
--colorTabsHorizontalUnselTextDis: rgba(4, 10, 18, 0.3);
--colorTabsHorizontalelBaseBgDis: unset;
--colorTabsHorizontalelBaseBorderDis: unset;
--colorTabsHorizontalUnselDis: unset;
--colorTabsHorizontalUnselBaseBgDis: unset;
--colorTabsHorizontalUnselBaseBorderDis: unset;
/* ui未提供变量 */
--itabsVerticalWidth: 0.02rem;
--itabsVerticalHeight: 100%;
--itabsVerticalTop: 0;
/* switch选中状态变量 */
--colorSwitchOnBaseBgNor: linear-gradient(180deg, rgba(133, 151, 176, 1), rgba(119, 133, 160, 1));
--colorSwitchOnThumbBgNor: linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(237, 240, 250, 1));
--colorSwitchOnBaseBorderNor: unset;
--colorSwitchOnThumbBorderNor: unset;
/* switch选中Pressed状态变量 */
--colorSwitchOnThumbBgPre: unset;
--colorSwitchOnThumbBorderPre: unset;
--colorSwitchOnBaseBgPre: unset;
--colorSwitchOnBaseBorderPre: unset;
/* switch未选中状态变量 */
--colorSwitchOffThumbBorderNor: unset;
--colorSwitchOffBaseBorderNor: unset;
/* switch未选中Pressed状态变量 */
--colorSwitchOffThumbBgPre: unset;
--colorSwitchOffThumbBorderPre: unset;
--colorSwitchOffBaseBgPre: unset;
--colorSwitchOffBaseBorderPre: unset;
--colorSwitchOffBaseBgNor: linear-gradient(180deg, rgba(0, 195, 166, 1), rgba(0, 166, 141, 1));
--colorSwitchOffThumbBgNor: linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(237, 240, 250, 1));
/* switch禁用状态变量 */
--colorSwitchOnThumbBgDis: linear-gradient(180deg, rgba(255, 255, 255, 0.5), rgba(237, 240, 250, 0.5));
--colorSwitchOnBaseBgDis: linear-gradient(180deg, rgba(0, 195, 166, 0.5), rgba(0, 166, 141, 0.5));
--colorSwitchOnBaseBorderDis: unset;
--colorSwitchOffThumbBgDis: linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(237, 240, 250, 1));
--colorSwitchOffBaseBgDis: unset;
--colorSwitchOffThumbBorderDis: unset;
--colorSwitchOffBaseBorderDis: unset;
/* ui未提供变量 */
--iswitchTrackShadow: 0 0.02rem 0.12rem 0 rgba(0, 0, 0, 0.1);
--iswitchOnTrackBorderColor: #fff7ee80;
--iswitchOffTrackBorderColor: #9cb3db80;
/* 弹窗 Normal */
--colorDialogBg: linear-gradient(180deg, rgba(247, 249, 251, 1), rgba(235, 238, 243, 1));
--colorDialogMaskBg: rgba(13, 15, 19, 0.9);
--colorDialogBorder: transparent;
--colorMask: (0, 0, 0, 0.8);
--colorDialogTiltle: rgba(4, 10, 18, 1);
--colorDialogText: rgba(4, 10, 18, 0.6);
--colorDiaologBtnBgNor: linear-gradient(0deg, rgb(35, 180, 209), rgb(0, 91, 102));
--colorDiaologBtnTextNor: rgba(255, 255, 255, 1);
--colorDialogBtnBorderNor: unset;
--positionDialogTiltle: center;
--highlightDialogBtn: linear-gradient(0deg, rgb(35, 180, 209), rgb(0, 91, 102));
--colorDiaologBtnBorderNor: unset;
/* 弹窗 Pressed */
--colorDiaologBtnBgPre: linear-gradient(0deg, rgb(35, 180, 209), rgb(0, 91, 102));
--colorDialogBtnBorderPre: unset;
--colorDiaologBtnTextPre: rgba(255, 255, 255, 1);
/* 弹窗 Disable */
--colorDiaologBtnBgDis: linear-gradient(0deg, rgba(35, 180, 209, 0.5), rgba(0, 91, 102, 0.5));
--colorDiaologBtnBorderDis: unset;
--colorDiaologBtnTextDis: rgba(255, 255, 255, 0.3);
/* 弹窗 对齐方式 */
/* 垂直对齐方式 */
--diaologAlignItems: center;
/* 水平对齐方式 */
--diaologJustifyContent: flex-start;
/* 浮窗颜色 */
--colorMaskBgNor: rgba(0, 0, 0, 0.2);
--colorMaskFloatNor: linear-gradient(90deg, #f7f9fb, #ebeef3);
/* 筛选菜单 Normal */
/*筛选菜单圆角*/
--colorMenuRadius: 0.16rem;
--colorMenuUnselBg: linear-gradient(90deg, rgba(247, 249, 251, 1), rgba(241, 244, 250, 1));
--colorMenuSubUnselBg: rgba(224, 229, 241, 1);
--colorMenuTextUnselNor: rgba(4, 10, 18, 1);
--colorMenuTextSubUnselNor: rgba(4, 10, 18, 0.6);
--colorMenuSelBg: linear-gradient(90deg, rgba(247, 249, 251, 1), rgba(235, 238, 243, 1));
--colorMenuTextSelNor: rgb(0, 187, 159, 1);
--colorMenuSubSelBg: rgba(235, 238, 243, 1);
--colorMenuTextSubSelNor: rgb(0, 187, 159, 1);
/* 筛选菜单 pressed */
--colorMenuTextUnselPre: rgba(4, 10, 18, 1);
--colorMenuTextSubUnselPre: rgba(4, 10, 18, 0.6);
--colorMenuTextSelPre: rgba(0, 187, 159, 1);
--colorMenuTextSubSelPre: rgba(0, 187, 159, 1);
/* 筛选菜单 Disable */
--colorMenuTextUnselDis: rgba(4, 10, 18, 0.3);
--colorMenuTextSubUnselDis: rgba(4, 10, 18, 0.3);
--colorMenuTextSelDis: rgba(0, 187, 159, 0.3);
--colorMenuTextSubSelDis: rgba(0, 187, 159, 0.3);
/* tag-select 样式 */
/* 边框大小 */
--borderOptiontagSel: 0.01rem;
--cornerOptiontagSel: 0.1rem;
/* 选中状态背景 */
--colorOptiontagSelBgNor: rgba(129, 255, 235, 0.1);
/* 选中状态边框 */
--colorOptiontagSelBorderNor: rgb(0, 146, 124);
/* 选中状态文字 */
--colorOptiontagSelTextNor: rgba(0, 146, 124, 1);
/* 阴影 */
--colorOPtiontagSelBoxShodaw: unset;
/* 选中Pressed状态背景 */
--colorOptiontagSelBgPre: unset;
--colorOptiontagSelBorderPre: unset;
--colorOptiontagSelTextPre: unset;
/* 禁用状态 */
/* 背景 */
--colorOptiontagSelBgDis: linear-gradient(180deg, rgba(248, 249, 252, 0.5), rgba(230, 246, 245, 0.5));
/* 边框 */
--colorOptiontagSelBorderDis: transparent;
/* 文字 */
--colorOptiontagSelTextDis: rgba(0, 187, 158, 0.3);
/* 类型1 */
/* 没有选中状态背景 */
--colorOptiontagUnselBgNor: rgba(255, 255, 255, 0.6);
/* 没有选中状态边框 */
--colorOptiontagUnselBorderNor: transparent;
/* 没有选中状态文字 */
--colorOptiontagUnselTextNor: rgba(4, 10, 18, 1);
/* 没有选中Pressed状态 */
--colorOptiontagUnselBgPre: rgba(255, 255, 255, 0.1);
--colorOptiontagUnselBorderPre: unset;
--colorOptiontagUnselTextPre: unset;
/* 禁用状态 */
/* 背景 */
--colorOptiontagUnsel1BgDis: rgba(255, 255, 255, 0.2);
/* 边框 */
--colorOptiontagUnsel1BorderDis: transparent;
/* 文字 */
--colorOptiontagUnsel1TextDis: rgba(4, 10, 18, 0.3);
/* 类型2 */
/* 没有选中状态背景 */
--colorOptiontagUnsel2BgNor: rgba(255, 255, 255, 0.4);
/* 没有选中状态边框 */
--colorOptiontagUnsel2BorderNor: transparent;
/* 没有选中状态文字 */
--colorOptiontagUnsel2TextNor: rgba(4, 10, 18, 1);
/* 禁用状态 */
/* 背景 */
--colorOptiontagUnsel2BgDis: rgba(255, 255, 255, 0.2);
/* 边框 */
--colorOptiontagUnsel2BorderDis: transparent;
/* 文字 */
--colorOptiontagUnsel2TextDis: rgba(4, 10, 18, 0.3);
/* 日历颜色 */
/* 日历选择区间颜色 */
--colorCalendarMiddleBg: rgba(0, 187, 158, 0.06);
/* 标题对齐方式 */
--colorCalendarTitAlign: center;
/* 选中日期颜色 */
--colorCalendarSelectBg: var(--colorRealbtnBgNor);
/* 选中日期文字颜色 */
--colorCalendarSelectText: var(--colorRealbtnTextNor);
/* 选中日期文字颜色 */
--colorCalendarDisabledText: rgba(0, 0, 0, 0.3);
/* 选中日期边框颜色 */
--colorCalendarSelectBor: transparent;
/* 选中日期中间态颜色 */
--colorCalendarSelectMidBg: rgba(73, 83, 109, 0.6);
/* 日期弹窗的宽度 */
--cornerCalendarWidth: 1.1rem;
/* 选择日期的圆角 */
--cornerCalendarBorRad: 0.12rem;
/* 图片 */
--imgNoSrcBgColor: linear-gradient(180deg, rgba(166, 180, 205, 1), rgb(135, 148, 167, 1));
--imgNoSrcTextColor: rgba(255, 255, 255, 0.3);
--imgNoSrcBorRail: 0.04rem;
/* btn 圆角 */
--cornerBtn: 0.1rem;
/* btn 描边 */
--borderRealbtn: 0.01rem;
--borderReal2btn: 0.01rem;
--borderGhostbtn: 0;
/* Slider 圆角 */
--borderSliderThumb: unset;
--borderSliderRail: unset;
--borderSliderRail: unset;
--cornerSliderThumb: 0.04rem;
--cornerSliderRail: 0.04rem;
--cornerSliderGap: 0.04rem;
/* Progress 圆角 */
--borderProgRail: unset;
--borderProgGap: unset;
--cornerProgRail: 0.04rem;
--cornerProgGap: 0.04rem;
/* Tag 圆角 */
--cornerTag: 0.04rem;
/* Switch 圆角 */
--cornerSwitchThumb: 100%;
--cornerSwitchBase: 0.32rem;
--borderSwitchThumb: 0;
--borderSwitchBase: 0.01rem;
/* Radio 圆角 */
--borderRadioThumb: unset;
--borderRadiolBase: 0.01rem;
--cornerRadioThumb: 100%;
--cornerRadioBase: 100%;
/* Checkbox 圆角 */
--cornerCheckboxThumb: 0.08rem;
--cornerCheckboxBase: 0.08rem;
/* Textfield 圆角 */
--borderTextfieldBg: 0.02rem;
--borderTextfield: 0.02rem;
--cornerTextfield: 0.1rem;
--cornerTextfield: 0.1rem;
--cornerTextfieldBg: 0.08rem;
/* SearchBars */
--cornerSearchbar: 0.1rem;
--borderSearchbar: 0.02rem;
/* Optiontag 圆角 */
--cornerOptiontag: unset;
/* 所有弹窗的圆角 圆角 */
--cornerDialog: 0.24rem;
--borderDialog: 0;
/* Menu 圆角 */
--cornerMenu: 0.1rem;
--borderMenu: unset;
/* 导航 圆角 */
--borderTabsVerticalSel: unset;
--borderTabsVerticalSelBase: 0.02rem;
--borderTabsHorizontalSel: unset;
--borderTabsHorizontalSelBase: 0.02rem;
--cornerTabsVerticalSel: unset;
--cornerTabsVerticalSelBase: unset;
--cornerTabsHorizontalSel: unset;
--cornerTabsHorizontalSelBase: unset;
/* 地图常用组件 */
/* 地图上的按钮*/
--colorBtnMap: rgba(125, 139, 166, 1);
--colorMapSurface: rgba(239, 242, 246, 1);
--colorMapDialog: rgba(242, 244, 247, 1);
--imgMapNavigation: url('https://iov-www.cdn.bcebos.com/mini-program/aiappopen/ex11-day/navigation.png');
--imgMapOrder: url('https://iov-www.cdn.bcebos.com/mini-program/aiappopen/ex11-day/order.png');
--imgMapPerson: url('https://iov-www.cdn.bcebos.com/mini-program/aiappopen/ex11-day/person.png');
--imgMapPos: url('https://iov-www.cdn.bcebos.com/mini-program/aiappopen/ex11-day/pos.png');
--BtnMapSecondary: #444d5b;
--BtnMapPrimary: #228c7a;
/* 地图上边框宽度 */
--colorBorderHeightMap: 0.01rem;
/*充电上的快慢标签 */
--colorSlowTag: rgb(47, 235, 164);
--colorFastTag: rgb(35, 180, 209);
--backgroundFastTag: rgba(35, 180, 209, 0.1);
--backgroundSlowTag: rgba(47, 235, 164, 0.1);
/* 星星背景色 */
--colorRateBg: rgba(4, 10, 18, 0.6);
/* 图片上方星星背景色 */
--colorRateImgBg: rgba(255, 255, 255, 0.6);
/* 评分文字颜色 */
--colorRateText: rgba(4, 10, 18, 0.6);
/* 图片上方评分文字颜色 */
--colorRateImgText: rgba(255, 255, 255, 0.6);
/* 优惠券背景颜色 */
--colorCouponBg: rgba(246, 250, 255, 0.7);
/* 骨架屏 */
--skeletonBgColor: #e1e4eb;
--skeletonCardColor: #d8dae2;
--lightColor: linear-gradient(
100deg,
rgba(255, 255, 255, 0) 20%,
rgba(255, 255, 255, 0.3) 50%,
rgba(255, 255, 255, 0) 80%
);
--listImg: url('https://iov-www.cdn.bcebos.com/mini-program/aiappopen/skeleton/list-light.png');
--tabImg: url('https://iov-www.cdn.bcebos.com/mini-program/aiappopen/skeleton/tab-light.png');
--cardImg: url('https://iov-www.cdn.bcebos.com/mini-program/aiappopen/skeleton/card-light.png');
--mapImg: url('https://iov-www.cdn.bcebos.com/mini-program/aiappopen/skeleton/map.png');
/* 轻卡片相关参数 */
--bubbleImg: url('https://iov-www.cdn.bcebos.com/mini-program/aiappopen/ex11-day/ic_poi.png');
--orderImg: url('https://iov-www.cdn.bcebos.com/mini-program/aiappopen/ex11-day/img_order.png');
--listBgImg: url('https://iov-www.cdn.bcebos.com/mini-program/aiappopen/ex11-day/bg_voice.png');
}
.iov-text-h1 {
font-size: var(--ifontsizeH1);
font-weight: 800;
}
.iov-text-h2 {
font-size: var(--ifontsizeH2);
font-weight: 800;
}
.iov-text-title {
font-size: var(--ifontsizeTitle);
font-weight: 400;
}
.iov-text-operation {
font-size: var(--ifontsizeC1);
font-weight: 400;
}
.iov-text-c1 {
font-size: var(--ifontsizeC1);
font-weight: 400;
}
.iov-text-c2 {
font-size: var(--ifontsizeC2);
font-weight: 200;
}
.iov-text-caption {
font-size: var(--ifontsizeCaption);
font-weight: 200;
}
.modal-content-footer {
height: 1.24rem;
display: flex;
justify-content: flex-start;
padding-top: 0.12rem;
}
.modal-content-footer-item {
flex: 1;
max-width: 3rem;
margin-right: 0.4rem;
text-align: center;
line-height: 0.8rem;
display: inline-block;
font-size: var(--ifontsizeC2);
text-overflow: ellipsis;
white-space: nowrap;
box-sizing: content-box;
color: var(--colorRealbtnTextNor);
background: var(--colorRealbtnBgNor);
box-shadow: 0 0.02rem 0.12rem 0 rgba(0, 0, 0, 0.1);
border-radius: var(--cornerBtn);
border: var(--borderRealbtn) solid var(--colorRealbtnBorderNor);
}
.modal-content-footer-item:active {
color: var(--colorRealbtnTextPre);
background: var(--colorRealbtnBgPre);
border-color: var(--colorRealbtnBorderPre);
}
.modal-content-footer-item:nth-child(2),
.modal-content-footer-item:last-child {
color: var(--colorGhostbtnTextNor);
background: var(--colorGhostbtnBgNor);
border-color: var(--colorGhostbtnBorderNor);
}
.modal-content-footer-item:nth-child(2):active,
.modal-content-footer-item:last-child:active {
color: var(--colorGhostbtnTextPre);
background: var(--colorGhostbtnBgPre);
border-color: var(--colorGhostbtnBorderPre);
}
::-webkit-scrollbar {
width: var(--borderScrollWidth);
background: var(--colorScrollGapNor);
border-radius: var(--borderScrollRadius);
}
/*定义滑块 内阴影+圆角*/
::-webkit-scrollbar-thumb {
width: var(--borderScrollWidth);
border-radius: var(--borderScrollRadius);
background: var(--colorScrollRailNor);
}
#card-content ::-webkit-scrollbar {
width: 0;
}
#card-content ::-webkit-scrollbar-thumb {
width: 0;
}
html {
font-size: 100px;
}
body {
font-size: var(--ifontsizeCaption1);
}
/* 兼容视频按钮 */
.swan-web-video-player {
font-size: 45px !important;
}
.swan-video-bottom-control {
padding: 10px 24px 2.9vw 24px;
}
.swan-video-top-control {
padding: 0 28px;
top: 38px;
right: 48px;
}
.swan-video-controls {
line-height: 1.2;
}
.vjs-control-bar {
font-size: 45px !important;
}
.swan-video-i-play,
.swan-video-i-pause,
.swan-video-i-fullscreen,
.swan-video-i-fullscreen-exit,
.swan-video-i-brightness,
.swan-video-i-brightness-lower,
.swan-video-i-voice-muted,
.swan-video-i-voice,
.swan-video-i-forward,
.swan-video-i-backward,
.swan-video-i-unlock,
.swan-video-i-replay,
.swan-video-i-refresh,
.swan-video-i-audio-muted,
.swan-video-i-lock,
.swan-video-i-danmu-disabled,
.swan-video-i-audio,
.swan-video-i-danmu-enabled,
.swan-video-i-loading,
.swan-video-i-back,
.swan-video-i-controls {
font-size: 36px !important;
}
.swan-video-circle-btn .swan-video-btn-icon {
font-size: 55px !important;
}
.swan-video-lock-btn .swan-video-btn-icon {
font-size: 55px !important;
}
/* video button */
.swan-video-bottom-op-btn {
font-size: 45px !important;
}
.swan-video-progress-bar,
.swan-video-progress-bar-placeholder {
font-size: 28px !important;
}
.swan-video-spinner {
font-size: 100px !important;
}
.swan-video-progress-state,
.swan-video-voice-light-state {
font-size: 28px !important;
}
.swan-video-up-state-icon {
font-size: 63px !important;
}
.swan-video-progress-state .swan-video-time-info {
font-size: 28px !important;
}
.swan-video-play-result-state-tip {
font-size: 28px !important;
}
.swan-video-network-tip {
font-size: 32px !important;
}
.swan-video-play-go-on {
font-size: 32px !important;
}
.swan-video-back-btn {
font-size: 46px !important;
top: 38px;
left: 48px;
}
.swan-video-title {
font-size: 43px !important;
}
.swan-video-rate-btn .swan-video-rate-btn-text {
font-size: 28px !important;
}
.swan-video-rate-tips {
font-size: 32px !important;
}
.swan-video-sidebar-title {
font-size: 32px !important;
}
.swan-video-silent-play-tips {
font-size: 32px !important;
}
/* 音量条加粗 */
.swan-video-progress-slider {
height: 5px !important;
}
/* 实现水波纹效果的小球样式 */
.ripple-ball {
position: absolute;
z-index: 999999;
display: block;
border: 0px solid #03cbad;
width: 120px;
height: 120px;
border-radius: 50%;
animation: ripple 0.4s;
}
.ripple-ball::after {
content: '';
position: absolute;
width: 80px;
height: 80px;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
border-radius: 50%;
background: rgba(30, 241, 198, 0.3);
box-shadow: 0 0 20px rgba(30, 241, 198, 0.8);
}
.ripple-ball-disabled {
position: absolute;
z-index: 999999;
display: block;
border: 0px solid #949aa3;
width: 120px;
height: 120px;
border-radius: 50%;
animation: ripple 0.4s;
}
.ripple-ball-disabled::after {
content: '';
position: absolute;
width: 80px;
height: 80px;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
border-radius: 50%;
background: rgba(213, 214, 216, 8);
box-shadow: 0 0 20px rgba(213, 214, 216, 1);
}
@keyframes cardIn {
from {
opacity: 0.3;
transform: translateY(20%);
}
to {
opacity:1;
transform: translateY(0);
}
}
/* 小球动画 */
@keyframes ripple {
0% {
border-width: 8px;
transform: scale(0.1);
}
10% {
transform: scale(0.2);
border-width: 8px;
}
20% {
transform: scale(0.3);
border-width: 8px;
}
30% {
transform: scale(0.4);
border-width: 7px;
}
40% {
transform: scale(0.5);
border-width: 6px;
}
50% {
transform: scale(0.6);
border-width: 5px;
}
60% {
transform: scale(0.7);
border-width: 4px;
}
70% {
transform: scale(0.8);
border-width: 3px;
opacity: 0.8;
}
80% {
transform: scale(0.9);
border-width: 2px;
opacity: 0.6;
}
90% {
opacity: 0.3;
transform: scale(1);
border-width: 1px;
}
100% {
transform: scale(1);
opacity: 0;
}
}
/* 哔哩哔哩弹幕优化 */
/* 进度条小圆点 */
swan-video .swan-video-progress-slider-handler {
margin-top: -10px;
margin-left: -10px;
width: 1vw;
height: 1vw;
background-color: #c2cbcd;
box-shadow: none;
}
swan-video .swan-video-progress-slider {
height: 8px;
border-radius: 6px;
}
swan-video .swan-video-progress-slider-track {
border-radius: 6px;
background: var(--colorRealbtnBgNor) !important;
}
swan-video .swan-video-lock-btn {
width: 4.8vw;
height: 4.8vw;
background: rgba(0, 0, 0, 0.3);
transform: translateY(-130%);
border-radius: 0.4vw;
display: flex;
justify-content: center;
align-items: center;
}
swan-video .swan-video-lock-btn .swan-video-btn-icon {
font-size: 45px;
}
swan-video .swan-spider-tap {
left: 16px;
margin-top: 0;
width: 4.8vw;
height: 4.8vw;
background: rgba(0, 0, 0, 0.3);
border-radius: 0.4vw;
}
swan-video .swan-spider-tap swan-image {
margin-top: 0.7vw !important;
width: 3.73vw;
height: 3.73vw;
}
swan-video .swan-video-i-unlock {
font-size: 2.8vw !important;
}
swan-video .swan-video-sidebar-title {
font-size: 36px;
font-weight: 700;
}
swan-video .swan-video-circle-btn {
width: 4.8vw;
height: 4.8vw;
display: flex;
justify-content: center;
align-items: center;
}
swan-video .swan-video-sidebar {
border-radius: unset;
}
swan-video .swan-video-i-horizontal {
display: none;
}
swan-video .danmu-container-full .danmu-text {
font-size: 24px;
}
swan-video .swan-video-rate-btn .swan-video-rate-btn-text {
font-size: 12px;
}
swan-video .swan-hide {
display: none !important;
}
swan-view[class$='video-bottom-share'] {
transform: translateY(-24px);
}
swan-view[class$='video-replay-box'] {
transform: translateY(15px);
}