|
1 |
| -<h1>Tab Nav Bar</h1> |
2 |
| - |
3 |
| -<button mat-button (click)="tabLinks.shift()">Remove tab</button> |
4 |
| -<button mat-button (click)="swapTabLinks()">Swap first two</button> |
5 |
| -<button mat-button (click)="addToLabel()">Add to labels</button> |
6 |
| -<button mat-button (click)="toggleBackground()">Toggle background</button> |
| 1 | +<mat-tab-group> |
| 2 | + <mat-tab label="Tab 1" disabled>Content 1</mat-tab> |
| 3 | + <mat-tab label="Tab 2">Content 2</mat-tab> |
| 4 | +</mat-tab-group> |
| 5 | + |
| 6 | +<nav mat-tab-nav-bar> |
| 7 | + <a mat-tab-link |
| 8 | + routerLink="1"> |
| 9 | + <span class="step-number">1</span> |
| 10 | + </a> |
| 11 | + <a mat-tab-link |
| 12 | + routerLink="2" |
| 13 | + disabled> |
| 14 | + <span class="step-number">2</span> |
| 15 | + </a> |
| 16 | +</nav> |
7 | 17 |
|
8 | 18 | <div class="demo-nav-bar">
|
9 |
| - <nav mat-tab-nav-bar aria-label="weather navigation links" [backgroundColor]="tabNavBackground"> |
| 19 | + <nav mat-tab-nav-bar aria-label="weather navigation links"> |
10 | 20 | <a mat-tab-link
|
11 | 21 | *ngFor="let tabLink of tabLinks; let i = index"
|
12 |
| - [routerLink]="tabLink.link" |
13 |
| - routerLinkActive #rla="routerLinkActive" |
14 |
| - [active]="rla.isActive"> |
| 22 | + routerLink="tabLink.link"> |
15 | 23 | {{tabLink.label}}
|
16 | 24 | </a>
|
17 | 25 | <a mat-tab-link disabled>Disabled Link</a>
|
18 | 26 | </nav>
|
19 |
| - <router-outlet></router-outlet> |
20 |
| -</div> |
21 |
| - |
22 |
| - |
23 |
| -<h1>Tab Group Demo - Dynamic Tabs</h1> |
24 |
| - |
25 |
| -<div> |
26 |
| - Selected tab index: |
27 |
| - <mat-form-field> |
28 |
| - <input matInput type="number" [(ngModel)]="activeTabIndex"> |
29 |
| - </mat-form-field> |
30 |
| -</div> |
31 |
| - |
32 |
| -<div class="demo-dynamic-tabs"> |
33 |
| - <mat-card> |
34 |
| - <mat-card-title>Add New Tab</mat-card-title> |
35 |
| - <mat-card-content> |
36 |
| - <mat-checkbox [(ngModel)]="createWithLongContent"> |
37 |
| - Include extra content |
38 |
| - </mat-checkbox> |
39 |
| - <mat-checkbox [(ngModel)]="gotoNewTabAfterAdding"> |
40 |
| - Select after adding |
41 |
| - </mat-checkbox> |
42 |
| - <div> |
43 |
| - Position: |
44 |
| - <mat-form-field> |
45 |
| - <input matInput type="number" [(ngModel)]="addTabPosition"> |
46 |
| - </mat-form-field> |
47 |
| - </div> |
48 |
| - <button mat-raised-button color="primary" |
49 |
| - (click)="addTab(createWithLongContent)"> |
50 |
| - Add |
51 |
| - </button> |
52 |
| - </mat-card-content> |
53 |
| - </mat-card> |
54 |
| - |
55 |
| - <mat-tab-group class="demo-tab-group" dynamicHeight [(selectedIndex)]="activeTabIndex"> |
56 |
| - <mat-tab *ngFor="let tab of dynamicTabs" [disabled]="tab.disabled"> |
57 |
| - <ng-template mat-tab-label>{{tab.label}}</ng-template> |
58 |
| - <div class="tab-content"> |
59 |
| - {{tab.content}} |
60 |
| - <br> |
61 |
| - <br> |
62 |
| - <div *ngIf="tab.extraContent"> |
63 |
| - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla venenatis ante augue. |
64 |
| - Phasellus volutpat neque ac dui mattis vulputate. Etiam consequat aliquam cursus. |
65 |
| - In sodales pretium ultrices. Maecenas lectus est, sollicitudin consectetur felis nec, |
66 |
| - feugiat ultricies mi. Aliquam erat volutpat. Nam placerat, tortor in ultrices porttitor, |
67 |
| - orci enim rutrum enim, vel tempor sapien arcu a tellus. Vivamus convallis sodales ante varius |
68 |
| - gravida. Curabitur a purus vel augue ultrices ultricies id a nisl. Nullam malesuada consequat |
69 |
| - diam, a facilisis tortor volutpat et. Sed urna dolor, aliquet vitae posuere vulputate, euismod |
70 |
| - ac lorem. Sed felis risus, pulvinar at interdum quis, vehicula sed odio. Phasellus in enim |
71 |
| - venenatis, iaculis tortor eu, bibendum ante. Donec ac tellus dictum neque volutpat blandit. |
72 |
| - Praesent efficitur faucibus risus, ac auctor purus porttitor vitae. Phasellus ornare dui nec |
73 |
| - orci posuere, nec luctus mauris semper. |
74 |
| - <br> |
75 |
| - <br> |
76 |
| - Morbi viverra, ante vel aliquet tincidunt, leo dolor pharetra quam, at semper massa orci nec |
77 |
| - magna. Donec posuere nec sapien sed laoreet. Etiam cursus nunc in condimentum facilisis. |
78 |
| - Etiam in tempor tortor. Vivamus faucibus egestas enim, at convallis diam pulvinar vel. |
79 |
| - Cras ac orci eget nisi maximus cursus. Nunc urna libero, viverra sit amet nisl at, hendrerit |
80 |
| - tempor turpis. Maecenas facilisis convallis mi vel tempor. Nullam vitae nunc leo. Cras sed |
81 |
| - nisl consectetur, rhoncus sapien sit amet, tempus sapien. |
82 |
| - <br> |
83 |
| - <br> |
84 |
| - Integer turpis erat, porttitor vitae mi faucibus, laoreet interdum tellus. Curabitur posuere |
85 |
| - molestie dictum. Morbi eget congue risus, quis rhoncus quam. Suspendisse vitae hendrerit erat, |
86 |
| - at posuere mi. Cras eu fermentum nunc. Sed id ante eu orci commodo volutpat non ac est. |
87 |
| - Praesent ligula diam, congue eu enim scelerisque, finibus commodo lectus. |
88 |
| - </div> |
89 |
| - <br> |
90 |
| - <br> |
91 |
| - <mat-form-field> |
92 |
| - <input matInput placeholder="Tab Label" [(ngModel)]="tab.label"> |
93 |
| - </mat-form-field> |
94 |
| - <br><br> |
95 |
| - <button mat-raised-button |
96 |
| - [disabled]="dynamicTabs.length == 1" |
97 |
| - (click)="deleteTab(tab)"> |
98 |
| - Delete Tab |
99 |
| - </button> |
100 |
| - </div> |
101 |
| - </mat-tab> |
102 |
| - </mat-tab-group> |
103 | 27 | </div>
|
104 | 28 |
|
105 |
| -<h1>Tab Group Demo - Dynamic Height</h1> |
106 | 29 |
|
107 |
| -<mat-tab-group class="demo-tab-group" dynamicHeight> |
108 |
| - <mat-tab *ngFor="let tab of tabs" [disabled]="tab.disabled"> |
109 |
| - <ng-template mat-tab-label>{{tab.label}}</ng-template> |
110 |
| - <div class="tab-content"> |
111 |
| - {{tab.content}} |
112 |
| - <br> |
113 |
| - <br> |
114 |
| - <div *ngIf="tab.extraContent"> |
115 |
| - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla venenatis ante augue. |
116 |
| - Phasellus volutpat neque ac dui mattis vulputate. Etiam consequat aliquam cursus. |
117 |
| - In sodales pretium ultrices. Maecenas lectus est, sollicitudin consectetur felis nec, |
118 |
| - feugiat ultricies mi. Aliquam erat volutpat. Nam placerat, tortor in ultrices porttitor, |
119 |
| - orci enim rutrum enim, vel tempor sapien arcu a tellus. Vivamus convallis sodales ante varius |
120 |
| - gravida. Curabitur a purus vel augue ultrices ultricies id a nisl. Nullam malesuada consequat |
121 |
| - diam, a facilisis tortor volutpat et. Sed urna dolor, aliquet vitae posuere vulputate, euismod |
122 |
| - ac lorem. Sed felis risus, pulvinar at interdum quis, vehicula sed odio. Phasellus in enim |
123 |
| - venenatis, iaculis tortor eu, bibendum ante. Donec ac tellus dictum neque volutpat blandit. |
124 |
| - Praesent efficitur faucibus risus, ac auctor purus porttitor vitae. Phasellus ornare dui nec |
125 |
| - orci posuere, nec luctus mauris semper. |
126 |
| - <br> |
127 |
| - <br> |
128 |
| - Morbi viverra, ante vel aliquet tincidunt, leo dolor pharetra quam, at semper massa orci nec |
129 |
| - magna. Donec posuere nec sapien sed laoreet. Etiam cursus nunc in condimentum facilisis. |
130 |
| - Etiam in tempor tortor. Vivamus faucibus egestas enim, at convallis diam pulvinar vel. |
131 |
| - Cras ac orci eget nisi maximus cursus. Nunc urna libero, viverra sit amet nisl at, hendrerit |
132 |
| - tempor turpis. Maecenas facilisis convallis mi vel tempor. Nullam vitae nunc leo. Cras sed |
133 |
| - nisl consectetur, rhoncus sapien sit amet, tempus sapien. |
134 |
| - <br> |
135 |
| - <br> |
136 |
| - Integer turpis erat, porttitor vitae mi faucibus, laoreet interdum tellus. Curabitur posuere |
137 |
| - molestie dictum. Morbi eget congue risus, quis rhoncus quam. Suspendisse vitae hendrerit erat, |
138 |
| - at posuere mi. Cras eu fermentum nunc. Sed id ante eu orci commodo volutpat non ac est. |
139 |
| - Praesent ligula diam, congue eu enim scelerisque, finibus commodo lectus. |
140 |
| - </div> |
141 |
| - <br> |
142 |
| - <br> |
143 |
| - <mat-form-field> |
144 |
| - <input matInput placeholder="Tab Label" [(ngModel)]="tab.label"> |
145 |
| - </mat-form-field> |
146 |
| - </div> |
147 |
| - </mat-tab> |
148 |
| -</mat-tab-group> |
149 |
| - |
150 |
| - |
151 |
| -<h1>Tab Group Demo - Fixed Height</h1> |
152 |
| - |
153 |
| -<mat-tab-group class="demo-tab-group" style="height: 220px"> |
154 |
| - <mat-tab *ngFor="let tab of tabs" [disabled]="tab.disabled"> |
155 |
| - <ng-template mat-tab-label>{{tab.label}}</ng-template> |
156 |
| - <div class="tab-content"> |
157 |
| - {{tab.content}} |
158 |
| - <br> |
159 |
| - <br> |
160 |
| - <div *ngIf="tab.extraContent"> |
161 |
| - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla venenatis ante augue. |
162 |
| - Phasellus volutpat neque ac dui mattis vulputate. Etiam consequat aliquam cursus. |
163 |
| - In sodales pretium ultrices. Maecenas lectus est, sollicitudin consectetur felis nec, |
164 |
| - feugiat ultricies mi. Aliquam erat volutpat. Nam placerat, tortor in ultrices porttitor, |
165 |
| - orci enim rutrum enim, vel tempor sapien arcu a tellus. Vivamus convallis sodales ante varius |
166 |
| - gravida. Curabitur a purus vel augue ultrices ultricies id a nisl. Nullam malesuada consequat |
167 |
| - diam, a facilisis tortor volutpat et. Sed urna dolor, aliquet vitae posuere vulputate, euismod |
168 |
| - ac lorem. Sed felis risus, pulvinar at interdum quis, vehicula sed odio. Phasellus in enim |
169 |
| - venenatis, iaculis tortor eu, bibendum ante. Donec ac tellus dictum neque volutpat blandit. |
170 |
| - Praesent efficitur faucibus risus, ac auctor purus porttitor vitae. Phasellus ornare dui nec |
171 |
| - orci posuere, nec luctus mauris semper. |
172 |
| - <br> |
173 |
| - <br> |
174 |
| - Morbi viverra, ante vel aliquet tincidunt, leo dolor pharetra quam, at semper massa orci nec |
175 |
| - magna. Donec posuere nec sapien sed laoreet. Etiam cursus nunc in condimentum facilisis. |
176 |
| - Etiam in tempor tortor. Vivamus faucibus egestas enim, at convallis diam pulvinar vel. |
177 |
| - Cras ac orci eget nisi maximus cursus. Nunc urna libero, viverra sit amet nisl at, hendrerit |
178 |
| - tempor turpis. Maecenas facilisis convallis mi vel tempor. Nullam vitae nunc leo. Cras sed |
179 |
| - nisl consectetur, rhoncus sapien sit amet, tempus sapien. |
180 |
| - <br> |
181 |
| - <br> |
182 |
| - Integer turpis erat, porttitor vitae mi faucibus, laoreet interdum tellus. Curabitur posuere |
183 |
| - molestie dictum. Morbi eget congue risus, quis rhoncus quam. Suspendisse vitae hendrerit erat, |
184 |
| - at posuere mi. Cras eu fermentum nunc. Sed id ante eu orci commodo volutpat non ac est. |
185 |
| - Praesent ligula diam, congue eu enim scelerisque, finibus commodo lectus. |
186 |
| - </div> |
187 |
| - <br> |
188 |
| - <br> |
189 |
| - <mat-form-field> |
190 |
| - <input matInput placeholder="Tab Label" [(ngModel)]="tab.label"> |
191 |
| - </mat-form-field> |
192 |
| - </div> |
193 |
| - </mat-tab> |
194 |
| -</mat-tab-group> |
195 |
| - |
196 |
| -<h1>Stretched Tabs</h1> |
197 |
| - |
198 |
| -<mat-tab-group class="demo-tab-group" style="height: 200px" mat-stretch-tabs> |
199 |
| - <mat-tab *ngFor="let tab of tabs" [disabled]="tab.disabled"> |
200 |
| - <ng-template mat-tab-label>{{tab.label}}</ng-template> |
201 |
| - <div class="tab-content"> |
202 |
| - {{tab.content}} |
203 |
| - </div> |
204 |
| - </mat-tab> |
205 |
| -</mat-tab-group> |
206 |
| - |
207 |
| - |
208 |
| -<h1>Async Tabs</h1> |
209 |
| - |
210 |
| -<mat-tab-group class="demo-tab-group"> |
211 |
| - <mat-tab *ngFor="let tab of asyncTabs | async; let i = index" [disabled]="i == 1"> |
212 |
| - <ng-template mat-tab-label>{{tab.label}}</ng-template> |
213 |
| - |
214 |
| - <div class="tab-content"> |
215 |
| - {{tab.content}} |
216 |
| - <br> |
217 |
| - <br> |
218 |
| - <br> |
219 |
| - <mat-form-field> |
220 |
| - <input matInput placeholder="Tab Label" [(ngModel)]="tab.label"> |
221 |
| - </mat-form-field> |
222 |
| - </div> |
223 |
| - </mat-tab> |
224 |
| -</mat-tab-group> |
225 |
| - |
226 |
| -<!-- Simple tabs api --> |
227 |
| -<h1>Tabs with simplified api</h1> |
228 |
| -<mat-tab-group class="demo-tab-group"> |
229 |
| - <mat-tab label="Earth"> |
230 |
| - <div class="tab-content"> |
231 |
| - This tab is about the Earth! |
232 |
| - </div> |
233 |
| - </mat-tab> |
234 |
| - <mat-tab label="Fire"> |
235 |
| - This tab is about combustion! |
236 |
| - </mat-tab> |
237 |
| -</mat-tab-group> |
238 |
| - |
239 |
| -<h1>Inverted tabs</h1> |
240 |
| -<mat-tab-group class="demo-tab-group" headerPosition="below"> |
241 |
| - <mat-tab label="Earth"> |
242 |
| - <div class="tab-content"> |
243 |
| - This tab is about the Earth! |
244 |
| - </div> |
245 |
| - </mat-tab> |
246 |
| - <mat-tab label="Fire"> |
247 |
| - <div class="tab-content"> |
248 |
| - This tab is about combustion! |
249 |
| - </div> |
250 |
| - </mat-tab> |
251 |
| -</mat-tab-group> |
252 |
| - |
253 |
| -<h1>Accent tabs</h1> |
254 |
| -<mat-tab-group class="demo-tab-group" color="accent"> |
255 |
| - <mat-tab label="Earth"> |
256 |
| - <div class="tab-content"> |
257 |
| - This tab is about the Earth! |
258 |
| - </div> |
259 |
| - </mat-tab> |
260 |
| - <mat-tab label="Fire"> |
261 |
| - <div class="tab-content"> |
262 |
| - This tab is about combustion! |
263 |
| - </div> |
264 |
| - </mat-tab> |
265 |
| -</mat-tab-group> |
266 |
| - |
267 |
| -<h1>Tabs with background color</h1> |
268 |
| -<mat-tab-group class="demo-tab-group" backgroundColor="primary" color="accent"> |
269 |
| - <mat-tab label="Earth"> |
270 |
| - <div class="tab-content"> |
271 |
| - This tab is about the Earth! |
272 |
| - </div> |
273 |
| - </mat-tab> |
274 |
| - <mat-tab label="Fire"> |
275 |
| - <div class="tab-content"> |
276 |
| - This tab is about combustion! |
277 |
| - </div> |
278 |
| - </mat-tab> |
279 |
| -</mat-tab-group> |
280 |
| - |
281 |
| -<h1>Tabs with autosize textarea</h1> |
282 |
| -<mat-tab-group class="demo-tab-group"> |
283 |
| - <mat-tab label="Tab 1"> |
284 |
| - <div class="tab-content"> |
285 |
| - <mat-form-field> |
286 |
| - <textarea matInput placeholder="Autosize textarea" matTextareaAutosize>This is an autosize textarea, it should adjust to the size of its content.</textarea> |
287 |
| - </mat-form-field> |
288 |
| - </div> |
289 |
| - </mat-tab> |
290 |
| -</mat-tab-group> |
| 30 | +<!-- Copyright 2017 Google Inc. All Rights Reserved. |
| 31 | + Use of this source code is governed by an MIT-style license that |
| 32 | + can be found in the LICENSE file at http://angular.io/license --> |
0 commit comments