mirror of
https://github.com/ant-design/ant-design.git
synced 2024-12-02 07:39:36 +08:00
f88f383be6
* fix: suggestion dark bg * fix: demo use autoComplete="off" * feat: support iframe theme change * fix: iframe dark theme * upd: test snapshot * fix: lint * fix: lint * tweak: use theme-switcher to handle iframe and parent * feat: support iframe theme change * fix: dark shadow * fix: layout style * fix: dark site style * fix: snapshot
93 lines
2.4 KiB
Markdown
93 lines
2.4 KiB
Markdown
---
|
|
order: 5
|
|
title:
|
|
zh-CN: 响应式布局
|
|
en-US: Responsive
|
|
---
|
|
|
|
## zh-CN
|
|
|
|
Layout.Sider 支持响应式布局。
|
|
|
|
> 说明:配置 `breakpoint` 属性即生效,视窗宽度小于 `breakpoint` 时 Sider 缩小为 `collapsedWidth` 宽度,若将 `collapsedWidth` 设置为零,会出现特殊 trigger。
|
|
|
|
## en-US
|
|
|
|
Layout.Sider supports responsive layout.
|
|
|
|
> Note: You can get a responsive layout by setting `breakpoint`, the Sider will collapse to the width of `collapsedWidth` when window width is below the `breakpoint`. And a special trigger will appear if the `collapsedWidth` is set to `0`.
|
|
|
|
```jsx
|
|
import { Layout, Menu } from 'antd';
|
|
import { UploadOutlined, UserOutlined, VideoCameraOutlined } from '@ant-design/icons';
|
|
|
|
const { Header, Content, Footer, Sider } = Layout;
|
|
|
|
ReactDOM.render(
|
|
<Layout>
|
|
<Sider
|
|
breakpoint="lg"
|
|
collapsedWidth="0"
|
|
onBreakpoint={broken => {
|
|
console.log(broken);
|
|
}}
|
|
onCollapse={(collapsed, type) => {
|
|
console.log(collapsed, type);
|
|
}}
|
|
>
|
|
<div className="logo" />
|
|
<Menu theme="dark" mode="inline" defaultSelectedKeys={['4']}>
|
|
<Menu.Item key="1">
|
|
<UserOutlined />
|
|
<span className="nav-text">nav 1</span>
|
|
</Menu.Item>
|
|
<Menu.Item key="2">
|
|
<VideoCameraOutlined />
|
|
<span className="nav-text">nav 2</span>
|
|
</Menu.Item>
|
|
<Menu.Item key="3">
|
|
<UploadOutlined />
|
|
<span className="nav-text">nav 3</span>
|
|
</Menu.Item>
|
|
<Menu.Item key="4">
|
|
<UserOutlined />
|
|
<span className="nav-text">nav 4</span>
|
|
</Menu.Item>
|
|
</Menu>
|
|
</Sider>
|
|
<Layout>
|
|
<Header className="site-layout-sub-header-background" style={{ padding: 0 }} />
|
|
<Content style={{ margin: '24px 16px 0' }}>
|
|
<div className="site-layout-background" style={{ padding: 24, minHeight: 360 }}>
|
|
content
|
|
</div>
|
|
</Content>
|
|
<Footer style={{ textAlign: 'center' }}>Ant Design ©2018 Created by Ant UED</Footer>
|
|
</Layout>
|
|
</Layout>,
|
|
mountNode,
|
|
);
|
|
```
|
|
|
|
```css
|
|
#components-layout-demo-responsive .logo {
|
|
height: 32px;
|
|
background: rgba(255, 255, 255, 0.2);
|
|
margin: 16px;
|
|
}
|
|
|
|
.site-layout-sub-header-background {
|
|
background: #fff;
|
|
}
|
|
|
|
.site-layout-background {
|
|
background: #fff;
|
|
}
|
|
```
|
|
|
|
<style>
|
|
[data-theme="dark"] .site-layout-sub-header-background {
|
|
background: #141414;
|
|
}
|
|
</style>
|