feat(ui-features): add a grid page

This commit is contained in:
Alexander Zhukov 2017-05-04 16:36:38 +03:00
parent 63062872aa
commit c0efb43bd6
3 changed files with 277 additions and 3 deletions

View file

@ -0,0 +1,252 @@
<div class="row">
<div class="col-md-12">
<nga-card>
<nga-card-header>
Inline Form
</nga-card-header>
<nga-card-body>
<h4 class="grid-h">Stacked to horizontal</h4>
<div class="row show-grid">
<div class="col-md-1">
<div>.col-md-1</div>
</div>
<div class="col-md-1">
<div>.col-md-1</div>
</div>
<div class="col-md-1">
<div>.col-md-1</div>
</div>
<div class="col-md-1">
<div>.col-md-1</div>
</div>
<div class="col-md-1">
<div>.col-md-1</div>
</div>
<div class="col-md-1">
<div>.col-md-1</div>
</div>
<div class="col-md-1">
<div>.col-md-1</div>
</div>
<div class="col-md-1">
<div>.col-md-1</div>
</div>
<div class="col-md-1">
<div>.col-md-1</div>
</div>
<div class="col-md-1">
<div>.col-md-1</div>
</div>
<div class="col-md-1">
<div>.col-md-1</div>
</div>
<div class="col-md-1">
<div>.col-md-1</div>
</div>
</div>
<div class="row show-grid">
<div class="col-md-8">
<div>.col-md-8</div>
</div>
<div class="col-md-4">
<div>.col-md-4</div>
</div>
</div>
<div class="row show-grid">
<div class="col-md-4">
<div>.col-md-4</div>
</div>
<div class="col-md-4">
<div>.col-md-4</div>
</div>
<div class="col-md-4">
<div>.col-md-4</div>
</div>
</div>
<div class="row show-grid">
<div class="col-md-6">
<div>.col-md-6</div>
</div>
<div class="col-md-6">
<div>.col-md-6</div>
</div>
</div>
<h4 class="grid-h">Mobile and desktop</h4>
<div class="row show-grid">
<div class="col-12 col-md-8">
<div>.col-12 .col-md-8</div>
</div>
<div class="col-6 col-md-4">
<div>.col-6 .col-md-4</div>
</div>
</div>
<div class="row show-grid">
<div class="col-6 col-md-4">
<div>.col-6 .col-md-4</div>
</div>
<div class="col-6 col-md-4">
<div>col-6 .col-md-4</div>
</div>
<div class="col-6 col-md-4">
<div>.col-6 .col-md-4</div>
</div>
</div>
<div class="row show-grid">
<div class="col-6">
<div>.col-6</div>
</div>
<div class="col-6">
<div>.col-6</div>
</div>
</div>
<h4 class="grid-h">Mobile, tablet, desktop</h4>
<div class="row show-grid">
<div class="col-12 col-sm-6 col-md-8">
<div>.col-12 .col-sm-6 .col-md-8</div>
</div>
<div class="col-6 col-md-4">
<div>.col-6 .col-md-4</div>
</div>
</div>
<div class="row show-grid">
<div class="col-6 col-sm-4">
<div>.col-6 .col-sm-4</div>
</div>
<div class="col-6 col-sm-4">
<div>.col-6 .col-sm-4</div>
</div>
<div class="col-6 col-sm-4">
<div>.col-6 .col-sm-4</div>
</div>
</div>
<h4 class="grid-h">Column wrapping</h4>
<div class="row show-grid">
<div class="col-9">
<div>.col-9</div>
</div>
<div class="col-4">
<div>.col-4<br>Since 9 + 4 = 13 &gt; 12, this 4-column-wide div gets wrapped onto a new line as one contiguous unit.
</div>
</div>
<div class="col-6">
<div>.col-6<br>Subsequent columns continue along the new line.</div>
</div>
</div>
<h4 class="grid-h">Responsive column resets</h4>
<div class="row show-grid">
<div class="col-6 col-sm-3">
<div>.col-6 .col-sm-3
<p>Resize your viewport or check it out on your phone for an example.</p>
</div>
</div>
<div class="col-6 col-sm-3">
<div>.col-6 .col-sm-3</div>
</div>
<div class="col-6 col-sm-3">
<div>.col-6 .col-sm-3</div>
</div>
<div class="col-6 col-sm-3">
<div>.col-6 .col-sm-3</div>
</div>
</div>
<h4 class="grid-h">Offsetting columns</h4>
<div class="row show-grid">
<div class="col-md-4">
<div>.col-md-4</div>
</div>
<div class="col-md-4 offset-md-4">
<div>.col-md-4 .offset-md-4</div>
</div>
</div>
<div class="row show-grid">
<div class="col-md-3 offset-md-3">
<div>.col-md-3 .offset-md-3</div>
</div>
<div class="col-md-3 offset-md-3">
<div>.col-md-3 .offset-md-3</div>
</div>
</div>
<div class="row show-grid">
<div class="col-md-6 offset-md-3">
<div>.col-md-6 .offset-md-3</div>
</div>
</div>
<h4 class="grid-h">Grid options</h4>
<div class="table-responsive">
<table class="table table-bordered table-striped">
<thead>
<tr>
<th></th>
<th> Extra small devices
<small>Phones (&lt;576px)</small>
</th>
<th> Small devices
<small>Tablets (≥576px)</small>
</th>
<th> Medium devices
<small>Desktops (≥768px)</small>
</th>
<th> Large devices
<small>Desktops (≥992px)</small>
</th>
<th> Large devices
<small>Desktops (≥1200px)</small>
</th>
</tr>
</thead>
<tbody>
<tr>
<th class="text-nowrap" scope="row">Grid behavior</th>
<td>Horizontal at all times</td>
<td colspan="4">Collapsed to start, horizontal above breakpoints</td>
</tr>
<tr>
<th class="text-nowrap" scope="row">Container width</th>
<td>None (auto)</td>
<td>540px</td>
<td>720px</td>
<td>960px</td>
<td>1140px</td>
</tr>
<tr>
<th class="text-nowrap" scope="row">Class prefix</th>
<td><code>.col-</code></td>
<td><code>.col-sm-</code></td>
<td><code>.col-md-</code></td>
<td><code>.col-lg-</code></td>
<td><code>.col-xl-</code></td>
</tr>
<tr>
<th class="text-nowrap" scope="row"># of columns</th>
<td colspan="5">12</td>
</tr>
<tr>
<th class="text-nowrap" scope="row">Gutter width</th>
<td colspan="5">1.875rem / 30px (15px on each side of a column)</td>
</tr>
<tr>
<th class="text-nowrap" scope="row">Nestable</th>
<td colspan="5">Yes</td>
</tr>
<tr>
<th class="text-nowrap" scope="row">Offsets</th>
<td colspan="5">Yes</td>
</tr>
<tr>
<th class="text-nowrap" scope="row">Column ordering</th>
<td colspan="5">Yes</td>
</tr>
</tbody>
</table>
</div>
</nga-card-body>
<nga-card-footer></nga-card-footer>
</nga-card>
</div>
</div>

View file

@ -0,0 +1,23 @@
:host {
.show-grid {
div[class^=col-] {
padding: 10px;
box-sizing: border-box;
div {
text-align: center;
background-color: rgba(white, 0.3);
padding: 12px 5px;
}
}
}
.grid-h {
margin-top: 40px;
margin-bottom: 0;
&:first-child {
margin-top: 0;
}
}
}

View file

@ -2,9 +2,8 @@ import { Component, OnInit } from '@angular/core';
@Component({ @Component({
selector: 'ngx-grid', selector: 'ngx-grid',
template: ` styleUrls: ['./grid.component.scss'],
<p>grid works!</p> templateUrl: './grid.component.html',
`,
}) })
export class NgxGridComponent implements OnInit { export class NgxGridComponent implements OnInit {