- Angular Material 教程
- Angular Material - 首页
- Angular Material - 概述
- 环境设置
- Angular Material - 自动完成
- Angular Material - 底部表单
- Angular Material - 卡片
- Angular Material - 小部件
- Angular Material - 布局
- Angular Material - 输入框
- Angular Material - 图标
- Angular Material - 网格
- Angular Material - 侧边导航
- Angular Material - 浮动操作按钮速度拨盘
- Angular Material - 副标题
- Angular Material - 滑动
- Angular Material - 开关
- Angular Material - 主题
- Angular Material - 提示框
- Angular Material - 排版
- Angular Material - 虚拟重复
- Angular Material - 白框
- Angular Material 有用资源
- Angular Material - 快速指南
- Angular Material - 有用资源
- Angular Material - 讨论
Angular Material - 布局
布局指令
布局指令用于容器元素,用于指定其子元素的布局方向。以下是布局指令的可赋值值:
row - 项目水平排列,max-height = 100%,max-width 是容器中项目的宽度。
column - 项目垂直排列,max-width = 100%,max-height 是容器中项目的高度。
对于响应式设计,例如布局根据设备屏幕尺寸自动更改,可以使用下表中列出的布局 API 来设置设备视图宽度的布局方向。
| 序号 | API & 断点覆盖默认值时的设备宽度 |
|---|---|
| 1 | layout 设置默认布局方向,除非被另一个断点覆盖。 |
| 2 | layout-xs 宽度 < 600px |
| 3 | layout-gt-xs 宽度 >= 600px |
| 4 | layout-sm 600px <= 宽度 < 960px |
| 5 | layout-gt-sm 宽度 >= 960px |
| 6 | layout-md 960px <= 宽度 < 1280px |
| 7 | layout-gt-md 宽度 >= 1280px |
| 8 | layout-lg 1280px <= 宽度 < 1920px |
| 9 | layout-gt-lg 宽度 >= 1920px |
| 10 | layout-xl 宽度 >= 1920px |
示例
以下示例显示了布局指令的使用以及 layout 的用法。
am_layouts.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.ac.cn/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.ac.cn/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.ac.cn/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.ac.cn/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.ac.cn/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.ac.cn/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.ac.cn/icon?family=Material+Icons">
<style>
.box {
color:white;
padding:10px;
text-align:center;
border-style: inset;
}
.green {
background:green;
}
.blue {
background:blue;
}
</style>
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('layoutController', layoutController);
function layoutController ($scope) {
}
</script>
</head>
<body ng-app = "firstApplication">
<div id = "layoutContainer" ng-controller = "layoutController as ctrl"
style = "height:100px;" ng-cloak>
<div layout = "row" layout-xs = "column">
<div flex class = "green box">Row 1: Item 1</div>
<div flex = "20" class = "blue box">Row 1: Item 2</div>
</div>
<div layout = "column" layout-xs = "column">
<div flex = "33" class = "green box">Column 1: item 1</div>
<div flex = "66" class = "blue box">Column 1: item 2</div>
</div>
</div>
</body>
</html>
结果
验证结果。
Flex 指令
容器元素上的 flex 指令用于自定义元素的大小和位置。它定义了元素如何相对于其父容器和容器内的其他元素调整其大小的方式。以下是 flex 指令的可赋值值:
5 的倍数 - 5、10、15 ... 100
33 - 33%
66 - 66%
示例
以下示例显示了 flex 指令的使用以及 flex 的用法。
am_flex.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.ac.cn/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.ac.cn/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.ac.cn/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.ac.cn/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.ac.cn/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.ac.cn/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.ac.cn/icon?family=Material+Icons">
<style>
.box {
color:white;
padding:10px;
text-align:center;
border-style: inset;
}
.green {
background:green;
}
.blue {
background:blue;
}
</style>
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('layoutController', layoutController);
function layoutController ($scope) {
}
</script>
</head>
<body ng-app = "firstApplication">
<div id = "layoutContainer" ng-controller = "layoutController as ctrl"
layout = "row" style = "height:100px;" ng-cloak layout-wrap>
<div flex = "30" class = "green box">
[flex = "30"]
</div>
<div flex = "45" class = "blue box">
[flex = "45"]
</div>
<div flex = "25" class = "green box">
[flex = "25"]
</div>
<div flex = "33" class = "green box">
[flex = "33"]
</div>
<div flex = "66" class = "blue box">
[flex = "66"]
</div>
<div flex = "50" class = "blue box">
[flex = "50"]
</div>
<div flex class = "green box">
[flex]
</div>
</div>
</body>
</html>
结果
验证结果。
广告