Former-commit-id: edd9508dd4ea2e3cacae729ee154a44e5ad7bef4 [formerly edd9508dd4ea2e3cacae729ee154a44e5ad7bef4 [formerly edd9508dd4ea2e3cacae729ee154a44e5ad7bef4 [formerly edd9508dd4ea2e3cacae729ee154a44e5ad7bef4 [formerly fddabeee0d8e10f2eba15fa501c08d293b92b1fb [formerly 98d9bab87141373a7da7e7197242376f8326dfc6]]]]] Former-commit-id: 1554a4a75d3c8d04269a2c702c810f14c956d058 Former-commit-id: 537f5148a1ae0b9e454b4e6e82efada5e9086181 Former-commit-id: 30f36236c6e27385e85cc83264b9d85c9c91eb01 [formerly 57f1072da69969a18be9e757ca086d030fae8dc4] Former-commit-id: d56dc8a2e39ba7fd380dd887ba0f5f9b548eabac Former-commit-id: 15d9368f35197f6f20a615d382a619f7c1e5d17c Former-commit-id: cf3e4dfa69c36c23209b29295c38407fbccc6ac0 Former-commit-id: f8444e2f52271a684daf90947b7b229090ff6b00 Former-commit-id: 37ddf26c726207755e0711db83d38a2800fed0f1
291 lines
7.7 KiB
Markdown
291 lines
7.7 KiB
Markdown
# 页面容器
|
||
|
||
## 参数
|
||
|
||
| 参数名 | 介绍 | 必选 | 值类型 | 可选值 | 默认值 |
|
||
| --- | --- | --- | --- | --- | --- |
|
||
| type | 容器模式 | 非 | string | full card ghost | full |
|
||
| scroll | 使用自定义滚动条 | 非 | boolean | | false |
|
||
|
||
下面的介绍中 **主区域** 范围见下
|
||
|
||

|
||
|
||
## full
|
||
|
||
full 模式会生成一个无论内容多少,都会填满主区域的页面容器。
|
||
|
||
页面内容较少时,container 也会填满主区域:
|
||
|
||
``` vue
|
||
<template>
|
||
<d2-container>
|
||
内容
|
||
</d2-container>
|
||
</template>
|
||
```
|
||
|
||

|
||
|
||
页面有较多内容时会在侧面产生滚动条
|
||
|
||

|
||
|
||
支持 header 和 footer 插槽,两个区域分别会固定在主体区域的顶部和底部,内容压缩至中间
|
||
|
||
``` vue
|
||
<template>
|
||
<d2-container>
|
||
<template slot="header">Header</template>
|
||
内容
|
||
<template slot="footer">Footer</template>
|
||
</d2-container>
|
||
</template>
|
||
```
|
||
|
||

|
||
|
||
如果使用插槽后内容超出一屏,滚动条会出现在 header 和 footer 之间
|
||
|
||

|
||
|
||
设置 scroll 属性可以启用自定义滚动条,自定义滚动条在内容不满一屏时不会显示
|
||
|
||
``` vue
|
||
<template>
|
||
<d2-container scroll>
|
||
内容
|
||
</d2-container>
|
||
</template>
|
||
```
|
||
|
||

|
||
|
||
超出一屏后在滚动时显示自定义滚动条
|
||
|
||

|
||
|
||
如果使用插槽后内容超出一屏,发生滚动时自定义滚动条会出现在 header 和 footer 之间
|
||
|
||
``` vue
|
||
<template>
|
||
<d2-container scroll>
|
||
<template slot="header">Header</template>
|
||
内容
|
||
<template slot="footer">Header</template>
|
||
</d2-container>
|
||
</template>
|
||
```
|
||
|
||

|
||
|
||
## card
|
||
|
||
卡片模式适用于简单的小页面,可以方便地实现下面的布局效果:
|
||
|
||
``` vue
|
||
<template>
|
||
<d2-container type="card">
|
||
内容
|
||
</d2-container>
|
||
</template>
|
||
```
|
||
|
||

|
||
|
||
如果内容超出一屏长度,会在右侧显示滚动条
|
||
|
||

|
||
|
||
如果内容超出一屏,滚动条滚动到底部后主体区域会距离底部 20px 距离
|
||
|
||

|
||
|
||
支持 header 和 footer 插槽,header 区域会固定在顶部,footer 区域会固定在底部
|
||
|
||
``` vue
|
||
<template>
|
||
<d2-container type="card">
|
||
<template slot="header">Header</template>
|
||
<d2-demo-article/>
|
||
<template slot="footer">Footer</template>
|
||
</d2-container>
|
||
</template>
|
||
```
|
||
|
||

|
||
|
||
如果使用插槽后内容超出一屏,滚动条会在 header 和 footer 之间显示
|
||
|
||

|
||
|
||
如果使用插槽后内容超出一屏,滚动条滚动到底部后主体区域依然会距离底部 20px 距离
|
||
|
||

|
||
|
||
设置 scroll 属性可以启用自定义滚动条,滚动条在内容不满一屏时不会显示
|
||
|
||
``` vue
|
||
<template>
|
||
<d2-container type="card" scroll>
|
||
内容
|
||
</d2-container>
|
||
</template>
|
||
```
|
||
|
||

|
||
|
||
超出一屏后在滚动时显示自定义滚动条
|
||
|
||

|
||
|
||
如果使用插槽后内容超出一屏,发生滚动时自定义滚动条会在 header 和 footer 之间显示
|
||
|
||
``` vue
|
||
<template>
|
||
<d2-container type="card" scroll>
|
||
<template slot="header">Header</template>
|
||
内容
|
||
<template slot="footer">Footer</template>
|
||
</d2-container>
|
||
</template>
|
||
```
|
||
|
||

|
||
|
||
如果使用插槽后内容超出一屏,自定义滚动条滚动到底部后主体区域依然会距离底部 20px 距离
|
||
|
||

|
||
|
||
## ghost
|
||
|
||
ghost 模式适合对页面有定制需求的用户,此模式生成一个没有背景颜色的页面区域
|
||
|
||
``` vue
|
||
<template>
|
||
<d2-container type="ghost">
|
||
内容
|
||
</d2-container>
|
||
</template>
|
||
```
|
||
|
||
该模式默认没有内边距,示例中的内边距样式需要自行添加,比如可以在组件内嵌添加一层带有 .d2-pt 和 .d2-pb class 的 div,像下面这样
|
||
|
||
``` vue
|
||
<template>
|
||
<d2-container type="ghost">
|
||
<div class="d2-pt d2-pb">
|
||
内容
|
||
</div>
|
||
</d2-container>
|
||
</template>
|
||
```
|
||
|
||

|
||
|
||
如果内容超出一屏长度,会在右侧显示滚动条
|
||
|
||

|
||
|
||
支持 header 和 footer 插槽,header 区域会固定在顶部,footer 区域会固定在底部
|
||
|
||
``` vue
|
||
<template>
|
||
<d2-container type="ghost">
|
||
<template slot="header">Header</template>
|
||
内容
|
||
<template slot="footer">Footer</template>
|
||
</d2-container>
|
||
</template>
|
||
```
|
||
|
||
如果你希望有内边距:
|
||
|
||
``` vue
|
||
<template>
|
||
<d2-container type="ghost">
|
||
<template slot="header">Header</template>
|
||
<div class="d2-pt d2-pb">
|
||
内容
|
||
</div>
|
||
<template slot="footer">Footer</template>
|
||
</d2-container>
|
||
</template>
|
||
```
|
||
|
||

|
||
|
||
如果使用插槽后内容超出一屏,滚动条会出现在 header 和 footer 之间
|
||
|
||

|
||
|
||
设置 scroll 属性可以启用自定义滚动条,自定义滚动条在内容不满一屏时不会显示
|
||
|
||
``` vue
|
||
<template>
|
||
<d2-container type="ghost" scroll>
|
||
内容
|
||
</d2-container>
|
||
</template>
|
||
```
|
||
|
||
同样,如果你希望有内边距:
|
||
|
||
``` vue
|
||
<template>
|
||
<d2-container type="ghost" scroll>
|
||
<div class="d2-pt d2-pb">
|
||
内容
|
||
</div>
|
||
</d2-container>
|
||
</template>
|
||
```
|
||
|
||

|
||
|
||
超出一屏后在滚动时显示自定义滚动条
|
||
|
||

|
||
|
||
如果使用插槽后内容超出一屏,发生滚动时自定义滚动条会在 header 和 footer 之间显示
|
||
|
||
``` vue
|
||
<template>
|
||
<d2-container type="ghost" scroll>
|
||
<template slot="header">Header</template>
|
||
内容
|
||
<template slot="footer">Footer</template>
|
||
</d2-container>
|
||
</template>
|
||
```
|
||
|
||
有内边距:
|
||
|
||
``` vue
|
||
<template>
|
||
<d2-container type="ghost" scroll>
|
||
<template slot="header">Header</template>
|
||
<div class="d2-pt d2-pb">
|
||
内容
|
||
</div>
|
||
<template slot="footer">Footer</template>
|
||
</d2-container>
|
||
</template>
|
||
```
|
||
|
||

|
||
|
||
## 注
|
||
|
||
本文插图为 [@FairyEver](https://github.com/FairyEver) 为此文档设计,未经授权不得转载或者修改使用
|
||
|
||

|
||
|
||

|
||
|
||
|
||
|
||
|
||
|
||
|