AngularJs学习之ng-repeat ng-repeat-start ng-repeat-end 《指令》

1 ng-repeat指令: 循环输出数组或者对象内容到html

代码:

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>apply watch</title>
	<link rel="stylesheet" type="text/css" href="css/lib/bootstrap.css">
	<script src="js/lib/angular.min.js"></script>
	<style type="text/css">
		*{margin: 0;padding: 0;}
	</style>
</head>
<body ng-app="myApp" ng-controller="myCtrl">
	<div class="container-fluid">
		<table class="table table-striped">
			<thead>
				<tr>
					<th>姓名</th>
					<th>介绍</th>
				</tr>
			</thead>
			<tbody>
				<tr ng-repeat="item in list">
					<td>{{item.name}}</td>
					<td>{{item.content}}</td>
				</tr>
			</tbody>
		</table>
	</div>
	<script type="text/javascript">
		var app = angular.module("myApp",[]);
		app.controller('myCtrl', function($scope) { 
			$scope.list = [
				{name: "慕容复",content: "金庸武侠悲剧人物,曾与主角乔峰大战百余回合而未落败。"},
				{name: "张无忌",content: "金庸武侠一代传奇高手,擅长九阳神功以及乾坤大挪移。"},
				{name: "慕容复",content: "金庸武侠悲剧人物,曾与主角乔峰大战百余回合而未落败。"},
				{name: "张无忌",content: "金庸武侠一代传奇高手,擅长九阳神功以及乾坤大挪移。"},
			];
		});
	</script>
</body>
</html>

页面: 一条数据占一行,如果分行显示则不容易实现。


2  ng-repeat-start ng-repeat-end指令: 将数组或对象的一条数据分行显示。

代码:

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>apply watch</title>
	<link rel="stylesheet" type="text/css" href="css/lib/bootstrap.css">
	<script src="js/lib/angular.min.js"></script>
	<style type="text/css">
		*{margin: 0;padding: 0;}
	</style>
</head>
<body ng-app="myApp" ng-controller="myCtrl">
	<div class="container-fluid">
		<table class="table table-striped">
			<tbody>
				<tr ng-repeat-start="item in list">
					<td>姓名</td>
					<td>{{item.name}}</td>
				</tr>
				<tr ng-repeat-end>
					<td></td>
					<td>{{item.content}}</td>
				</tr>
			</tbody>
		</table>
	</div>
	<script type="text/javascript">
		var app = angular.module("myApp",[]);
		app.controller('myCtrl', function($scope) { 
			$scope.list = [
				{name: "慕容复",content: "金庸武侠悲剧人物,曾与主角乔峰大战百余回合而未落败。"},
				{name: "张无忌",content: "金庸武侠一代传奇高手,擅长九阳神功以及乾坤大挪移。"},
				{name: "慕容复",content: "金庸武侠悲剧人物,曾与主角乔峰大战百余回合而未落败。"},
				{name: "张无忌",content: "金庸武侠一代传奇高手,擅长九阳神功以及乾坤大挪移。"},
			];
		});
	</script>
</body>
</html>

页面:实现分行显示一条数据。


### CSS 中 `justify-self` 和 `align-self` 属性的用法及效果 #### 一、`align-self` 的作用与用法 `align-self` 是用于调整单个弹性子项在其交叉轴上的对齐方式。它覆盖了父容器中的 `align-items` 设置,仅影响指定的子项。其取值范围包括但不限于以下几个选项: - **`auto`**: 使用父级定义的 `align-items` 值[^1]。 - **`flex-start`**: 子项靠交叉轴起点对齐。 - **`center`**: 子项在交叉轴中心位置对齐。 - **`flex-end`**: 子项靠交叉轴终点对齐。 示例代码如下: ```css .container { display: flex; align-items: stretch; /* 默认值 */ } .item1 { align-self: flex-start; /* 单独设置 item1 对齐到顶部 */ } ``` #### 二、`justify-self` 的作用与用法 需要注意的是,在标准的 Flexbox 模型中并不存在 `justify-self` 这个属性。该属性属于 Grid Layout(网格布局),而非 Flexbox 布局的一部分[^2]。因此如果尝试在 Flexbox 容器中使用此属性,则不会有任何效果。 对于 Grid 布局而言,`justify-self` 可以单独控制某个单元格沿行方向的位置,常见的值有: - **`start`**: 靠近起始边缘对齐。 - **`end`**: 靠近结束边缘对齐。 - **`stretch`**: 自动拉伸填充整个区域。 #### 三、两者的主要区别 | 特性 | `align-self` | `justify-self` | |-----------------|-------------------------------------|-----------------------------------| | 所属布局模型 | Flexbox | Grid | | 控制的方向 | 交叉轴 (垂直于主轴) | 主轴 (Grid 下有效, 类似 justify-content) | 以下是两个属性分别使用的场景对比案例: ```css /* Align-Self 示例 */ .flex-container { display: flex; height: 200px; border: 1px solid black; } .child { width: 50px; height: 50px; background-color: lightblue; } .centered-child { align-self: center; /* 让特定子元素居中对齐 */ } /* Justify-Self 示例(需配合grid)*/ .grid-container { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; } .justified-item { justify-self: end; /* 将某一项放置在列尾部 */ } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值