4.4 KiB
category | type | cols | title |
---|---|---|---|
Components | Layout | 1 | Layout |
Handling the overall layout of a page.
Specification
Size
The first level of the navigation is placed near by a logo inclined left, and the secondary menu is placed inclined right.
- Top Navigation (almost systems): the height of the first level navigation
64px
, the second level of navigation48px
. - Top Navigation(contents page): the height of the first level navigation
80px
, the second level of navigation56px
. - Calculation formula of a top navigation:
48+8n
. - Calculation formula a aside navigation:
200+8n
.
Interaction rules
- The first level navigation and the last level navigation should be distincted by visualization;
- The current item should have the highest priority of visualization;
- When the current navigation item is collapsed, the stlye of the current navigation item will be applied to the parent level of it;
- The left side navigation bar support for both the according and the expanding style, you can choose the one of it case by case.
Visualization rules
Style of a navigation should conform to the level of it.
-
Emphasis by colorblock
When background color is a deep color, you can use this pattern for the parent level navigation item of current page.
-
The highlight match stick
When background color is a light color, you can use this pattern for the current page navigation item, we recommed to use it for the last item of the navigation path.
-
Hightlighted font
From the visualization aspect, hightlighted font is stronger than colorblock, this pattern is often used for the parent level of the current item.
-
Enlarge the size of the font
12px
、14px
is a standard font size of navigations,14 is used for the first and the second level of the navigation. You can choose a approprigate font size in terms of the level of your navigation.
Component Overview
Layout
: The layout wrapper, in whichHeader
Sider
Content
Footer
orLayout
itself can be nested, and can be placed in any parent container.Header
: The top layout with default style, in which any element can be nested, and must be placed inLayout
.Sider
: The sidebar with default style and basic functions, in which any element can be nested, and must be placed inLayout
.Content
: The content layout with default style, in which any element can be nested, and must be placed inLayout
.Footer
: The bottom layout with default style, in which any element can be nested, and must be placed inLayout
.
Base on
flex layout
, please pay attention to the compatibility.
API
<Layout>
<Header>header</Header>
<Layout>
<Sider>left sidebar</Sider>
<Content>main content</Content>
<Sider>right sidebar</Sider>
</Layout>
<Footer>footer</Footer>
</Layout>
Layout
The wrapper.
Property | Description | Type | Default |
---|---|---|---|
style | to custom the styles | object | - |
className | container className | string | - |
API of
Layout.Header
Layout.Footer
Layout.Content
is the same withLayout
.
Layout.Sider
The sidebar.
Property | Description | Type | Default |
---|---|---|---|
collapsible | whether can be collapsed | boolean | false |
defaultCollapsed | to set the initial status | boolean | false |
reverseArrow | reverse direction of arrow, for a sider that expands from the right | boolean | false |
collapsed | to set the current status | boolean | - |
onCollapse | the callback function, can be executed by clicking the trigger or activating the responsive layout | (collapsed, type) => {} | - |
trigger | specify the customized trigger, set to null to hide the trigger | string|ReactNode | - |
width | width of the sidebar | number|string | 200 |
collapsedWidth | width of the collapsed sidebar, by setting to 0 a special trigger will appear |
number | 64 |
breakpoint | breakpoint of the responsive layout | Enum { 'xs', 'sm', 'md', 'lg', 'xl' } | - |
style | to custom the styles | object | - |
className | container className | string | - |
breakpoint width
{
xs: '480px',
sm: '768px',
md: '992px',
lg: '1200px',
xl: '1600px',
}
Note: If you want to wrap the
Sider
, do not forget to add this setting to the customized component:__ANT_LAYOUT_SIDER = true
. e.g.
const CustomizedSider = (props) => <Sider {...props} />
CustomizedSider.__ANT_LAYOUT_SIDER = true;
...
<CustomizedSider>Sider Content</CustomizedSider>