UNPKG

vhb-table

Version:

一个基于 vue 的 PC 端表格组件,支持增删改查、虚拟列表、虚拟树、懒加载、快捷菜单、数据校验、树形结构、打印导出、表单渲染、数据分页、弹窗、自定义模板、渲染器、贼灵活的配置项、扩展接口等...

331 lines (279 loc) 7.77 kB
/*font*/ /*size*/ /*icon*/ /*color*/ /*input/radio/checkbox*/ /*popup*/ /*table*/ /*filter*/ /*menu*/ /*loading*/ /*validate*/ /*grid*/ /*toolbar*/ /*tooltip*/ /*pager*/ /*modal*/ /*checkbox*/ /*radio*/ /*button*/ /*input*/ /*textarea*/ /*form*/ /*select*/ /*switch*/ /*pulldown*/ [class*="vhb-"], [class*="vhb-"]:after, [class*="vhb-"]:before, [class*="vhb-"] *:after, [class*="vhb-"] *:before { -webkit-box-sizing: border-box; box-sizing: border-box; } .vhb-radio .vhb-radio--label, .vhb-radio-button .vhb-radio--label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } [class*="vhb-"] { font-variant: tabular-nums; -webkit-font-feature-settings: 'tnum'; font-feature-settings: 'tnum'; } .vhb-primary-color { color: #409eff; } .vhb-success-color { color: #67c23a; } .vhb-info-color { color: #909399; } .vhb-warning-color { color: #e6a23c; } .vhb-danger-color { color: #f56c6c; } .vhb-perfect-color { color: #f8f8f9; } .vhb-row:after { content: ''; display: block; clear: both; height: 0; overflow: hidden; visibility: hidden; } .vhb-row > .vhb-col--1 { float: left; width: 4.16667%; } .vhb-row > .vhb-col--2 { float: left; width: 8.33333%; } .vhb-row > .vhb-col--3 { float: left; width: 12.5%; } .vhb-row > .vhb-col--4 { float: left; width: 16.66667%; } .vhb-row > .vhb-col--5 { float: left; width: 20.83333%; } .vhb-row > .vhb-col--6 { float: left; width: 25%; } .vhb-row > .vhb-col--7 { float: left; width: 29.16667%; } .vhb-row > .vhb-col--8 { float: left; width: 33.33333%; } .vhb-row > .vhb-col--9 { float: left; width: 37.5%; } .vhb-row > .vhb-col--10 { float: left; width: 41.66667%; } .vhb-row > .vhb-col--11 { float: left; width: 45.83333%; } .vhb-row > .vhb-col--12 { float: left; width: 50%; } .vhb-row > .vhb-col--13 { float: left; width: 54.16667%; } .vhb-row > .vhb-col--14 { float: left; width: 58.33333%; } .vhb-row > .vhb-col--15 { float: left; width: 62.5%; } .vhb-row > .vhb-col--16 { float: left; width: 66.66667%; } .vhb-row > .vhb-col--17 { float: left; width: 70.83333%; } .vhb-row > .vhb-col--18 { float: left; width: 75%; } .vhb-row > .vhb-col--19 { float: left; width: 79.16667%; } .vhb-row > .vhb-col--20 { float: left; width: 83.33333%; } .vhb-row > .vhb-col--21 { float: left; width: 87.5%; } .vhb-row > .vhb-col--22 { float: left; width: 91.66667%; } .vhb-row > .vhb-col--23 { float: left; width: 95.83333%; } .vhb-row > .vhb-col--24 { float: left; width: 100%; } /*animat*/ .is--animat .vhb-sort--asc-btn:before, .is--animat .vhb-sort--asc-btn:after, .is--animat .vhb-sort--desc-btn:before, .is--animat .vhb-sort--desc-btn:after, .is--animat .vhb-filter--btn:before, .is--animat .vhb-filter--btn:after { -webkit-transition: border 0.1s ease-in-out; transition: border 0.1s ease-in-out; } .is--animat .vhb-input--wrapper .vhb-input { -webkit-transition: border 0.1s ease-in-out; transition: border 0.1s ease-in-out; } .is--animat .vhb-table--expand-btn, .is--animat .vhb-tree--node-btn { -webkit-transition: -webkit-transform 0.1s ease-in-out; transition: -webkit-transform 0.1s ease-in-out; transition: transform 0.1s ease-in-out; transition: transform 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out; } .is--animat .vhb-checkbox > input:checked + span, .is--animat .vhb-radio > input:checked + span { -webkit-transition: background-color 0.1s ease-in-out; transition: background-color 0.1s ease-in-out; } /*radio-group*/ .vhb-radio-group { display: inline-block; vertical-align: middle; line-height: 1; font-size: 0; } .vhb-radio-group + .vhb-radio-group { margin-left: 10px; } /*radio*/ .vhb-radio { display: inline-block; vertical-align: middle; white-space: nowrap; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; line-height: 1; cursor: pointer; color: #606266; } .vhb-radio > input[type="radio"] { position: absolute; width: 0; height: 0; border: 0; -webkit-appearance: none; -moz-appearance: none; appearance: none; } .vhb-radio > input + .vhb-radio--icon { position: relative; display: inline-block; width: 1em; height: 1em; border: 2px solid #dcdfe6; background-color: #fff; vertical-align: middle; border-radius: 50%; } .vhb-radio > input:checked + .vhb-radio--icon { background-color: #409eff; border-color: #409eff; } .vhb-radio > input:checked + .vhb-radio--icon:before { content: ""; position: absolute; background-color: #fff; border-radius: 50%; height: 0.25em; width: 0.25em; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } .vhb-radio > input:checked + .vhb-radio--icon + .vhb-radio--label { color: #409eff; } .vhb-radio:not(.is--disabled) > input:focus + .vhb-radio--icon { border-color: #409eff; -webkit-box-shadow: 0 0 0.2em 0 #409eff; box-shadow: 0 0 0.2em 0 #409eff; } .vhb-radio:not(.is--disabled):hover > input + .vhb-radio--icon { border-color: #409eff; } .vhb-radio.is--disabled { cursor: not-allowed; } .vhb-radio.is--disabled > input + .vhb-radio--icon { border-color: #dcdfe6; background-color: #f3f3f3; } .vhb-radio.is--disabled > input + .vhb-radio--icon:before { border-color: #c0c4cc; background-color: #c0c4cc; } .vhb-radio.is--disabled > input + .vhb-radio--icon + .vhb-radio--label { color: #BFBFBF; } .vhb-radio .vhb-radio--label { padding-left: 0.5em; vertical-align: middle; display: inline-block; max-width: 50em; } .vhb-radio:not(.vhb-radio-button) + .vhb-radio { margin-left: 10px; } .vhb-radio-button .vhb-radio--label { background-color: #fff; } .vhb-radio-button:first-child .vhb-radio--label { border-left: 1px solid #dcdfe6; border-radius: 4px 0 0 4px; } .vhb-radio-button:last-child .vhb-radio--label { border-radius: 0 4px 4px 0; } .vhb-radio-button > input:checked + .vhb-radio--label { color: #fff; background-color: #409eff; border-color: #409eff; } .vhb-radio-button .vhb-radio--label { padding: 0 1em; line-height: 32px; display: inline-block; border-style: solid; border-color: #dcdfe6; border-width: 1px 1px 1px 0; max-width: 50em; } .vhb-radio-button.is--disabled { cursor: not-allowed; } .vhb-radio-button.is--disabled > input:not(:checked) + .vhb-radio--label { color: #dcdfe6; } .vhb-radio-button.is--disabled > input:checked + .vhb-radio--label { border-color: #a6d2ff; background-color: #a6d2ff; } .vhb-radio-button:not(.is--disabled) > input:focus + .vhb-radio--label { border-color: #409eff; -webkit-box-shadow: 0 0 0.2em 0 #409eff; box-shadow: 0 0 0.2em 0 #409eff; } .vhb-radio-button:not(.is--disabled):hover > input:not(:checked) + .vhb-radio--label { color: #409eff; } .vhb-radio-button.size--medium .vhb-radio--label { line-height: 30px; } .vhb-radio-button.size--small .vhb-radio--label { line-height: 28px; } .vhb-radio-button.size--mini .vhb-radio--label { line-height: 26px; } .vhb-radio { font-size: 14px; } .vhb-radio .vhb-radio--icon { font-size: 16px; } .vhb-radio.size--medium { font-size: 14px; } .vhb-radio.size--medium .vhb-radio--icon { font-size: 15px; } .vhb-radio.size--small { font-size: 13px; } .vhb-radio.size--small .vhb-radio--icon { font-size: 14px; } .vhb-radio.size--mini { font-size: 12px; } .vhb-radio.size--mini .vhb-radio--icon { font-size: 14px; }