# Container 布局容器

用于布局的容器组件,方便快速搭建页面的基本结构,还提供了 tag 属性来自定义元素标签,可以结合语义化标签来使用。

<ml-container>:外层容器。当子元素中包含 <ml-header><ml-footer> 时,全部子元素会垂直上下排列,否则会水平左右排列。

<ml-header>:顶栏容器。

<ml-aside>:侧边栏容器。

<ml-main>:主要区域容器。

<ml-footer>:底栏容器。

以上组件采用了 flex 布局,使用前请确定目标浏览器是否兼容。此外,<ml-container> 的子元素只能是后四者,后四者的父元素也只能是 <ml-container>


# 常见页面布局

Header
Main
Header
Main
Aside
Main
Header
Aside
Main
Header
Aside
Main
Aside
Header
Main
Aside
Header
Main
查看代码
<template>
  <div class="demoBlock">
    <ml-container>
      <ml-header>Header</ml-header>
      <ml-main>Main</ml-main>
    </ml-container>

    <ml-container>
      <ml-header>Header</ml-header>
      <ml-main>Main</ml-main>
      <ml-footer>Footer</ml-footer>
    </ml-container>

    <ml-container>
      <ml-aside width="200px">Aside</ml-aside>
      <ml-main>Main</ml-main>
    </ml-container>

    <ml-container>
      <ml-header>Header</ml-header>
      <ml-container>
        <ml-aside width="200px">Aside</ml-aside>
        <ml-main>Main</ml-main>
      </ml-container>
    </ml-container>

    <ml-container>
      <ml-header>Header</ml-header>
      <ml-container>
        <ml-aside width="200px">Aside</ml-aside>
        <ml-container>
          <ml-main>Main</ml-main>
          <ml-footer>Footer</ml-footer>
        </ml-container>
      </ml-container>
    </ml-container>

    <ml-container>
      <ml-aside width="200px">Aside</ml-aside>
      <ml-container>
        <ml-header>Header</ml-header>
        <ml-main>Main</ml-main>
      </ml-container>
    </ml-container>

    <ml-container>
      <ml-aside width="200px">Aside</ml-aside>
      <ml-container>
        <ml-header>Header</ml-header>
        <ml-main>Main</ml-main>
        <ml-footer>Footer</ml-footer>
      </ml-container>
    </ml-container>
  </div>
</template>
<style lang="scss" scoped>
.ml-header,
.ml-footer {
  background-color: #b3c0d1;
  color: #333;
  text-align: center;
  line-height: 60px;
}

.ml-aside {
  background-color: #d3dce6;
  color: #333;
  text-align: center;
  line-height: 200px;
}

.ml-main {
  background-color: #e9eef3;
  color: #333;
  text-align: center;
  line-height: 160px;
}

body > .ml-container {
  margin-bottom: 40px;
}

.ml-container:nth-child(5) .ml-aside,
.ml-container:nth-child(6) .ml-aside {
  line-height: 260px;
}

.ml-container:nth-child(7) .ml-aside {
  line-height: 320px;
}
</style>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91

# Container 属性

参数 说明 类型 可选值 默认值
direction 子元素的排列方向 string horizontal / vertical 子元素中有 ml-header 或 ml-footer 时为 vertical,否则为 horizontal
tag 自定义元素标签 string * div

# Header 属性

参数 说明 类型 可选值 默认值
height 顶栏高度 string -- 60px
tag 自定义元素标签 string * div

# Aside 属性

参数 说明 类型 可选值 默认值
width 侧边栏宽度 string -- 300px
tag 自定义元素标签 string * div
参数 说明 类型 可选值 默认值
height 底栏高度 string -- 60px
tag 自定义元素标签 string * div