53 lines
1.4 KiB
TypeScript
53 lines
1.4 KiB
TypeScript
![]() |
// 此样式是vue版本独有样式,react版本没有拖拽改变列宽度功能
|
|||
|
import type { CSSObject } from '../../_util/cssinjs';
|
|||
|
import type { GenerateStyle } from '../../theme/internal';
|
|||
|
import type { TableToken } from './index';
|
|||
|
|
|||
|
const genResizeStyle: GenerateStyle<TableToken, CSSObject> = token => {
|
|||
|
const { componentCls } = token;
|
|||
|
|
|||
|
return {
|
|||
|
[`${componentCls}-wrapper ${componentCls}-resize-handle`]: {
|
|||
|
position: 'absolute',
|
|||
|
top: 0,
|
|||
|
height: '100% !important',
|
|||
|
bottom: 0,
|
|||
|
left: ' auto !important',
|
|||
|
right: ' -8px',
|
|||
|
cursor: 'col-resize',
|
|||
|
touchAction: 'none',
|
|||
|
userSelect: 'auto',
|
|||
|
width: '16px',
|
|||
|
zIndex: 1,
|
|||
|
[`&-line`]: {
|
|||
|
display: 'block',
|
|||
|
width: '1px',
|
|||
|
marginLeft: '7px',
|
|||
|
height: '100% !important',
|
|||
|
backgroundColor: token.colorPrimary,
|
|||
|
opacity: 0,
|
|||
|
},
|
|||
|
[`&:hover &-line`]: {
|
|||
|
opacity: 1,
|
|||
|
},
|
|||
|
},
|
|||
|
[`${componentCls}-wrapper ${componentCls}-resize-handle.dragging`]: {
|
|||
|
overflow: 'hidden',
|
|||
|
[`${componentCls}-resize-handle-line`]: {
|
|||
|
opacity: 1,
|
|||
|
},
|
|||
|
[`&:before`]: {
|
|||
|
position: 'absolute',
|
|||
|
top: 0,
|
|||
|
bottom: 0,
|
|||
|
content: '" "',
|
|||
|
width: '200vw',
|
|||
|
transform: 'translateX(-50%)',
|
|||
|
opacity: 0,
|
|||
|
},
|
|||
|
},
|
|||
|
};
|
|||
|
};
|
|||
|
|
|||
|
export default genResizeStyle;
|