Skip to content

Commit 4a80b55

Browse files
feat: add xxxl grid col size for 4k&5k display (#4953)
* feat: add xxxl grid col size for 4k&5k display * Update index.zh-CN.md * Update index.zh-CN.md * Update index.en-US.md * Update index.zh-CN.md Co-authored-by: undefined <undefined> Co-authored-by: tangjinzhou <[email protected]>
1 parent 65fc82e commit 4a80b55

File tree

22 files changed

+77
-48
lines changed

22 files changed

+77
-48
lines changed

components/_util/responsiveObserve.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
export type Breakpoint = 'xxl' | 'xl' | 'lg' | 'md' | 'sm' | 'xs';
1+
export type Breakpoint = 'xxxl' | 'xxl' | 'xl' | 'lg' | 'md' | 'sm' | 'xs';
22
export type BreakpointMap = Record<Breakpoint, string>;
33
export type ScreenMap = Partial<Record<Breakpoint, boolean>>;
44
export type ScreenSizeMap = Partial<Record<Breakpoint, number>>;
55

6-
export const responsiveArray: Breakpoint[] = ['xxl', 'xl', 'lg', 'md', 'sm', 'xs'];
6+
export const responsiveArray: Breakpoint[] = ['xxxl', 'xxl', 'xl', 'lg', 'md', 'sm', 'xs'];
77

88
export const responsiveMap: BreakpointMap = {
99
xs: '(max-width: 575px)',
@@ -12,6 +12,7 @@ export const responsiveMap: BreakpointMap = {
1212
lg: '(min-width: 992px)',
1313
xl: '(min-width: 1200px)',
1414
xxl: '(min-width: 1600px)',
15+
xxxl: '(min-width: 2000px)',
1516
};
1617

1718
type SubscribeFunc = (screens: ScreenMap) => void;

components/grid/Col.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ const colProps = {
5151
lg: objectOrNumber,
5252
xl: objectOrNumber,
5353
xxl: objectOrNumber,
54+
xxxl: objectOrNumber,
5455
prefixCls: PropTypes.string,
5556
flex: stringOrNumber,
5657
};
@@ -67,7 +68,7 @@ export default defineComponent({
6768
const { span, order, offset, push, pull } = props;
6869
const pre = prefixCls.value;
6970
let sizeClassObj = {};
70-
['xs', 'sm', 'md', 'lg', 'xl', 'xxl'].forEach(size => {
71+
['xs', 'sm', 'md', 'lg', 'xl', 'xxl', 'xxxl'].forEach(size => {
7172
let sizeProps: ColSize = {};
7273
const propSize = props[size];
7374
if (typeof propSize === 'number') {

components/grid/Row.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ const ARow = defineComponent({
4444
lg: true,
4545
xl: true,
4646
xxl: true,
47+
xxxl: true,
4748
});
4849

4950
const supportFlexGap = useFlexGapSupport();

components/grid/demo/responsive-more.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ title:
1414

1515
## en-US
1616

17-
`span` `pull` `push` `offset` `order` property can be embedded into `xs` `sm` `md` `lg` `xl` `xxl` properties to use, where `:xs="6"` is equivalent to `:xs="{ span: 6 }"`.
17+
`span` `pull` `push` `offset` `order` property can be embedded into `xs` `sm` `md` `lg` `xl` `xxl` `xxxl` properties to use, where `:xs="6"` is equivalent to `:xs="{ span: 6 }"`.
1818
</docs>
1919

2020
<template>

components/grid/demo/responsive.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ title:
88

99
## zh-CN
1010

11-
参照 Bootstrap 的 [响应式设计](http://getbootstrap.com/css/#grid-media-queries),预设六个响应尺寸:`xs` `sm` `md` `lg` `xl` `xxl`。
11+
参照 Bootstrap 的 [响应式设计](http://getbootstrap.com/css/#grid-media-queries),预设七个响应尺寸:`xs` `sm` `md` `lg` `xl` `xxl` `xxxl`。
1212

1313
## en-US
1414

components/grid/index.en-US.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,5 +56,6 @@ Our grid systems support Flex layout to allow the elements within the parent to
5656
| lg | `≥992px`, could be a `span` value or an object containing above props | number\|object | - |
5757
| xl | `≥1200px`, could be a `span` value or an object containing above props | number\|object | - |
5858
| xxl | `≥1600px`, could be a `span` value or an object containing above props | number\|object | - |
59+
| xxxl | `≥2000px`, could be a `span` value or an object containing above props | number\|object | - |
5960

6061
The breakpoints of responsive grid follow [BootStrap 4 media queries rules](https://getbootstrap.com/docs/4.0/layout/overview/#responsive-breakpoints)(not including `occasionally part`).

components/grid/index.zh-CN.md

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -39,19 +39,20 @@ cover: https://gw.alipayobjects.com/zos/alicdn/5rWLU27so/Grid.svg
3939

4040
### Col
4141

42-
| 成员 | 说明 | 类型 | 默认值 |
43-
| ------ | -------------------------------------------------------- | -------------- | ------ |
44-
| flex | flex 布局填充 | string\|number | - |
45-
| offset | 栅格左侧的间隔格数,间隔内不可以有栅格 | number | 0 |
46-
| order | 栅格顺序,`flex` 布局模式下有效 | number | 0 |
47-
| pull | 栅格向左移动格数 | number | 0 |
48-
| push | 栅格向右移动格数 | number | 0 |
49-
| span | 栅格占位格数,为 0 时相当于 `display: none` | number | - |
50-
| xs | `<576px` 响应式栅格,可为栅格数或一个包含其他属性的对象 | number\|object | - |
51-
| sm | `≥576px` 响应式栅格,可为栅格数或一个包含其他属性的对象 | number\|object | - |
52-
| md | `≥768px` 响应式栅格,可为栅格数或一个包含其他属性的对象 | number\|object | - |
53-
| lg | `≥992px` 响应式栅格,可为栅格数或一个包含其他属性的对象 | number\|object | - |
54-
| xl | `≥1200px` 响应式栅格,可为栅格数或一个包含其他属性的对象 | number\|object | - |
55-
| xxl | `≥1600px` 响应式栅格,可为栅格数或一个包含其他属性的对象 | number\|object | - |
42+
| 成员 | 说明 | 类型 | 默认值 | 版本 |
43+
| ------ | -------------------------------------------------------- | -------------- | ------ | --- |
44+
| flex | flex 布局填充 | string\|number | - | |
45+
| offset | 栅格左侧的间隔格数,间隔内不可以有栅格 | number | 0 | |
46+
| order | 栅格顺序,`flex` 布局模式下有效 | number | 0 | |
47+
| pull | 栅格向左移动格数 | number | 0 | |
48+
| push | 栅格向右移动格数 | number | 0 | |
49+
| span | 栅格占位格数,为 0 时相当于 `display: none` | number | - | |
50+
| xs | `<576px` 响应式栅格,可为栅格数或一个包含其他属性的对象 | number\|object | - | |
51+
| sm | `≥576px` 响应式栅格,可为栅格数或一个包含其他属性的对象 | number\|object | - | |
52+
| md | `≥768px` 响应式栅格,可为栅格数或一个包含其他属性的对象 | number\|object | - | |
53+
| lg | `≥992px` 响应式栅格,可为栅格数或一个包含其他属性的对象 | number\|object | - | |
54+
| xl | `≥1200px` 响应式栅格,可为栅格数或一个包含其他属性的对象 | number\|object | - | |
55+
| xxl | `≥1600px` 响应式栅格,可为栅格数或一个包含其他属性的对象 | number\|object | - | |
56+
| xxxl | `≥2000px` 响应式栅格,可为栅格数或一个包含其他属性的对象 | number\|object | - | 3.0 |
5657

5758
响应式栅格的断点扩展自 [BootStrap 4 的规则](https://getbootstrap.com/docs/4.0/layout/overview/#responsive-breakpoints)(不包含链接里 `occasionally` 的部分)。

components/grid/style/index.less

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,4 +115,8 @@
115115
.make-grid(-xxl);
116116
}
117117

118+
@media (min-width: @screen-xxxl-min) {
119+
.make-grid(-xxxl);
120+
}
121+
118122
@import './rtl';

components/layout/Sider.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ const dimensionMaxMap = {
1818
lg: '991.98px',
1919
xl: '1199.98px',
2020
xxl: '1599.98px',
21+
xxxl: '1999.98px',
2122
};
2223

2324
export type CollapseType = 'clickTrigger' | 'responsive';
@@ -32,7 +33,7 @@ export const siderProps = {
3233
trigger: PropTypes.VNodeChild,
3334
width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
3435
collapsedWidth: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
35-
breakpoint: PropTypes.oneOf(tuple('xs', 'sm', 'md', 'lg', 'xl', 'xxl')),
36+
breakpoint: PropTypes.oneOf(tuple('xs', 'sm', 'md', 'lg', 'xl', 'xxl', 'xxxl')),
3637
theme: PropTypes.oneOf(tuple('light', 'dark')).def('dark'),
3738
onBreakpoint: Function as PropType<(broken: boolean) => void>,
3839
onCollapse: Function as PropType<(collapsed: boolean, type: CollapseType) => void>,

components/layout/index.en-US.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,5 +118,6 @@ The sidebar.
118118
lg: '992px',
119119
xl: '1200px',
120120
xxl: '1600px',
121+
xxxl: '2000px',
121122
}
122123
```

0 commit comments

Comments
 (0)