ant-design/components/layout/demo/responsive.md
信鑫-King f88f383be6
fix: dark site in Form and iframe change (#20573)
* 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
2020-01-02 17:54:11 +08:00

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>