Reusable components like the ones used by Windows 8 and Windows Phone 8 or later.
A simple shell for an h1
to appropriately space out and segment sections of content on a page. It can utilize the h1
's default small
, element as well most other components (with additional styles).
<div class="page-header"> <h1>Example page header <small>Subtext for header</small></h1> </div>
A page header with a left arrow button that should be used to navigate back. It can utilize the h1
's default small
, element as well most other components (with additional styles).
<div id="nav-bar"> <div class="row"> <div class="span9"> <div id="header-container"> <a id="backbutton" class="win-backbutton" href="#"></a> <div class="dropdown"> <h1 class="header-dropdown accent-color">Title</h1> </div> </div> </div> </div> </div>
A page header with the page title and the application sub-title on top, and with a left arrow button that should be used to navigate back. It can utilize the h1
's default small
, element as well most other components (with additional styles).
<div id="nav-bar"> <div class="row"> <div class="span9"> <div id="header-container"> <a id="backbutton" class="win-backbutton" href="#"></a> <h5>Application name</h5> <div class="dropdown"> <a class="header-dropdown accent-color" href="#"> Page Title </a> </div> </div> </div> </div> </div>
A page header with the page title, the application sub-title on top, the left arrow button that should be used to navigate back, and the dropdown menu for navigation on other pages.
<div id="nav-bar"> <div class="row"> <div class="span9"> <div id="header-container"> <a id="backbutton" class="win-backbutton" href="#"></a> <h5>Application name</h5> <div class="dropdown"> <a class="header-dropdown dropdown-toggle accent-color" data-toggle="dropdown" href="#"> Title <b class="caret"></b> </a> <ul class="dropdown-menu"> <li><a href="#">Go to another page</a></li> <li><a href="#">Go to another page</a></li> <li><a href="#">Go to another page</a></li> <li class="divider"></li> <li><a href="#">Home</a></li> </ul> </div> </div> </div> </div> </div>
A lightweight, flexible component to showcase key content on your site. It works well on marketing and content-heavy sites.
This is a simple hero unit, a simple jumbotron-style component for calling extra attention to featured content or information.
<div class="hero-unit"> <h1>Heading</h1> <p>Tagline</p> <p> <a class="btn btn-primary btn-large"> Learn more </a> </p> </div>
A bottom app bar that contains transient access to commands relevant to a particular view
To place a separator line add <hr class="win-command" />
element between commands.
<div class="win-commandlayout"> <a class="win-command" href="#"> <span class="win-commandicon win-commandring icon-home"></span> <span class="win-label">Home</span> </a> <hr class="win-command" /> ... <button class="win-command"> <span class="win-commandicon win-commandring icon-reload"></span> <span class="win-label">Reload</span> </button> ... </div>
To have the bar with a dark background add the win-ui-dark
.
<div class="win-commandlayout win-ui-dark"> <a class="win-command" href="#"> <span class="win-commandicon win-commandring icon-home"></span> <span class="win-label">Home</span> </a> <hr class="win-command" /> ... <button class="win-command"> <span class="win-commandicon win-commandring icon-reload"></span> <span class="win-label">Reload</span> </button> ... </div>
<div id="pivot" class="pivot slide"> <div class="pivot-headers"> <a href="#pivot" data-target="0" class="active">Item 1</a> <a href="#pivot" data-target="1">Item 2</a> <a href="#pivot" data-target="2">Item 3</a> <a href="#pivot" data-target="3">Item 4</a> </div> <div class="pivot-items"> <div id="pivot-item-1" class="pivot-item active"> <h3>Item 1</h3> ... </div> <div id="pivot-item-2" class="pivot-item"> <h3>Item 2</h3> <p>...</p> <p>...</p> </div> <div id="pivot-item-3" class="pivot-item"> <h3>Item 3</h3> <p>...</p> <p>...</p> </div> <div id="pivot-item-4" class="pivot-item"> <h3>Item 4</h3> <p>...</p> <p>...</p> </div> </div> </div>
Include the bootmetro-pivot.js alongside the other JS files.
Activate a modal without writing JavaScript. Set data-target
attribute on every header anchor with the index of the related pivot panel as value.
The ListView control offers a way to present collections of data, referred to as “items”, to users of your app. You can use ListView to produce various layouts, but it may not necessarily be the best option. Guidelines for ListView controls (Windows 8 User experience guidelines)
ListView is intended for items that expose multiple pieces of data. If your items are just a set of short strings, consider using the Select control.
The ListView comes with two “layouts” built into the control: list layout, and grid layout.
To apply the selection check simply add the selected
class.
The grid layout always pans horizontally, and items are laid out following a top-to-bottom, then left-to-right reading order.
Body text that wraps over two lines. Vivamus elementum semper nisi.
Single line. Lorem ipsum sin ut dolorem
Single line. Lorem ipsum sin ut dolorem
Body text that wraps over three lines. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula
Body text that wraps over two lines. Vivamus elementum semper nisi.
Body text that wraps over two lines, IcoMoon icon on the left.
<div class="listview grid-layout"> <div class="listview-item bg-color-blue"> <div class="pull-left" href="#"> <img class="listview-item-object" data-src="holder.js/60x60"> </div> <div class="listview-item-body"> <h4 class="listview-item-heading">Media heading</h4> <p class="two-lines">Body text that wraps over two lines. Vivamus elementum semper nisi.</p> </div> </div> <div class="listview-item bg-color-green"> <div class="pull-left" href="#"> <img class="listview-item-object" data-src="holder.js/60x60"> </div> <div class="listview-item-body"> <h4 class="listview-item-heading">Media heading</h4> <p>Single line. Lorem ipsum sin ut dolorem</p> <p>Single line. Lorem ipsum sin ut dolorem</p> </div> </div> <div class="listview-item bg-color-orange"> <div class="pull-left" href="#"> <img class="listview-item-object" data-src="holder.js/60x60"> </div> <div class="listview-item-body"> <p class="three-lines">Body text that wraps over three lines. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula</p> </div> </div> <div class="listview-item bg-color-grayLight selected"> <div class="pull-left" href="#"> <img class="listview-item-object" data-src="holder.js/60x60"> </div> <div class="listview-item-body"> <h4 class="listview-item-heading">Media heading</h4> <p class="two-lines">Body text that wraps over two lines. Vivamus elementum semper nisi.</p> </div> </div> <div class="listview-item bg-color-blue"> <div class="pull-left" href="#"> <div class="listview-item-object icon-github"></div> </div> <div class="listview-item-body"> <h4 class="listview-item-heading">Media heading</h4> <p class="two-lines">Body text that wraps over two lines, IcoMoon icon on the left.</p> </div> </div> </div>
List Layouts are single-column only with a top to bottom reading order, and they always pan or scroll vertically.
Body text that wraps over two lines. Vivamus elementum semper nisi.
Single line. Lorem ipsum sin ut dolorem
Single line. Lorem ipsum sin ut dolorem
Body text that wraps over three lines. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula
Body text that wraps over two lines. Vivamus elementum semper nisi.
Body text that wraps over two lines, IcoMoon icon on the left.
<div class="listview list-layout"> ... </div>
Bigger ListViews are available, add the big
class to the listview
and listview-item
elements:
Body text that wraps over two lines. Vivamus elementum semper nisi.
Body text that wraps over two lines, IcoMoon icon on the left.
<div class="listview list-layout big"> <div class="listview-item big bg-color-blue"> <div class="pull-left" href="#"> <img class="listview-item-object" data-src="holder.js/112x112"> </div> <div class="listview-item-body"> <h4 class="listview-item-heading">Media heading</h4> <h5 class="listview-item-subheading">Subtitle</h5> <p class="two-lines">Body text that wraps over two lines. Vivamus elementum semper nisi.</p> </div> </div> <div class="listview-item big bg-color-green"> <div class="pull-left" href="#"> <div class="listview-item-object icon-github"></div> </div> <div class="listview-item-body"> <h4 class="listview-item-heading">Media heading</h4> <p class="two-lines">Body text that wraps over two lines, IcoMoon icon on the left.</p> </div> </div> </div>
Tiles are the representation of your app on the Start screen. Selecting a tile launches its app. The content shown on your tile can, and ideally should, change regularly, especially if your tile can communicate new, real-time information to your user. Tiles can show a combination of text and images, and a badge to show status. Tiles, badges, and notifications (Windows Store apps documentation)
Important All tiles must be contained in a wrap element with metro
class.
Template Name | Description | Tile |
---|---|---|
Square App Tile |
AppName
12
|
Template Name | Description | Tile |
---|---|---|
TileSquareBlock | One short string of large block text over a single, short line of bold, regular text. |
22
Text field 2
|
TileSquareText01 | One header string in larger text on the first line; three strings of regular text on each of the next three lines. Text does not wrap. |
Header
Text field 1
Text field 2
Text field 3
|
TileSquareText02 | One header string in larger text on the first line, over one string of regular text wrapped over a maximum of three lines. |
Header
Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.
|
TileSquareText03 | Four strings of regular text on four lines. Text does not wrap. |
Text field 1
Text field 2
Text field 3
Text field 4
|
TileSquareText04 | One string of regular text wrapped over a maximum of four lines. |
Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.
|
Template Name | Description | Tile |
---|---|---|
TileSquareImage | One square image that fills the entire tile, no text. |
Template Name | Description | Tile |
---|---|---|
TileSquarePeekImageAndText01 | Top: One square image, no text. Bottom: One header string in larger text on the first line, three strings of regular text on each of the next three lines. Text does not wrap. |
Header
Text field 1
Text field 2
Text field 3
|
TileSquarePeekImageAndText02 | Top: Square image, no text. Bottom: One header string in larger text on the first line, over one string of regular text wrapped over a maximum of three lines. |
Header
Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.
|
TileSquarePeekImageAndText03 | Top: Square image, no text. Bottom: Four strings of regular text on four lines. Text does not wrap. |
Text field 1
Text field 2
Text field 3
Text field 4
|
TileSquarePeekImageAndText04 | Top: Square image, no text. Bottom: One string of regular text wrapped over a maximum of four lines. |
Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.
|
Template Name | Description | Tile |
---|---|---|
Wide App Tile |
AppName
12
|
Template Name | Description | Tile |
---|---|---|
TileWideText01 | One header string in larger text on the first line, four strings of regular text on the next four lines. Text does not wrap. |
Header
Text field 1
Text field 2
Text field 3
Text field 4
|
TileWideText02 | One header string in larger text over eight short strings arranged in two columns of four lines each. Columns are of equal width. |
Header
Text field 1
Text field 2
Text field 3
Text field 4
Text field 5
Text field 6
Text field 7
Text field 8
|
TileWideText03 | One string of large text wrapped over a maximum of three lines. |
Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula
|
TileWideText04 | One string of regular text wrapped over a maximum of five lines. |
Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.
|
TileWideText05 | Five strings of regular text on five lines. Text does not wrap. |
Text field 1 Vivamus elementum semper nisi. Aenean vulputate eleifend tellus.
Text field 2 Vivamus elementum semper nisi. Aenean vulputate eleifend tellus.
Text field 3 Vivamus elementum semper nisi. Aenean vulputate eleifend tellus.
Text field 4 Vivamus elementum semper nisi. Aenean vulputate eleifend tellus.
Text field 5 Vivamus elementum semper nisi. Aenean vulputate eleifend tellus.
|
TileWideText06 | Ten short strings of regular text, arranged in two columns of five lines each. Columns are of equal width. |
Text field 1
Text field 2
Text field 3
Text field 4
Text field 5
Text field 6
Text field 7
Text field 8
|
TileWideText07 | One header string in larger text over eight short strings of regular text arranged in two columns of four lines each. The column widths are such that the first column acts as a label and the second column as the content. This template is similar to TileWideText10, but the first column is wider. |
Header
label 1
label 2
label 3
label 4
Vivamus elementum semper nisi
Vivamus elementum semper nisi
Vivamus elementum semper nisi
Vivamus elementum semper nisi
|
TileWideText08 | Ten short strings of regular text arranged in two columns of five lines each. The column widths are such that the first column acts as a label and the second column as the content. This template is similar to TileWideText11, but the first column is wider. |
label 1
label 2
label 3
label 4
label 5
Vivamus elementum semper nisi
Vivamus elementum semper nisi
Vivamus elementum semper nisi
Vivamus elementum semper nisi
Vivamus elementum semper nisi
|
TileWideText09 | One header string in larger text over one string of regular text wrapped over a maximum of four lines. |
Header
Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.
|
TileWideText10 | One header string in larger text over eight short strings of regular text arranged in two columns of four lines each. The column widths are such that the first column acts as a label and the second column as the content. This template is similar to TileWideText07, but the first column is narrower. |
Header
Viva
Viva
Viva
Viva
Vivamus elementum semper nisi
Vivamus elementum semper nisi
Vivamus elementum semper nisi
Vivamus elementum semper nisi
|
TileWideText11 | Ten short strings of regular text arranged in two columns of five lines each. The column widths are such that the first column acts as a label and the second column as the content. This template is similar to TileWideText08, but the first column is narrower. |
Viva
Viva
Viva
Viva
Vivamus elementum semper nisi
Vivamus elementum semper nisi
Vivamus elementum semper nisi
Vivamus elementum semper nisi
|
You can combine all the previous tile templates to make a big tile with size of 310 x 300, see some example below:
To build the big tile, simply use an element wrapper with tile widepeek
classes:
<a href="#" class="tile widepeek"> <div class="tile wide image collection"> ... </div> <div class="tile wide text"> ... </div> </a>
To apply the selection check, simply add the selected
class.
To apply a different background color to a tile, you can use the following predefined classes, or make the yours.
Class name | Example |
---|---|
bg-color-orange
|
Header
Text field 1
Text field 2
Text field 3
|
bg-color-purple
|
Header
Text field 1
Text field 2
Text field 3
|
bg-color-green
|
Header
Text field 1
Text field 2
Text field 3
|
bg-color-greenDark
|
Header
Text field 1
Text field 2
Text field 3
|
bg-color-blue
|
Header
Text field 1
Text field 2
Text field 3
|
bg-color-blueDark
|
Header
Text field 1
Text field 2
Text field 3
|
bg-color-red
|
Header
Text field 1
Text field 2
Text field 3
|
bg-color-yellow
|
Header
Text field 1
Text field 2
Text field 3
|
bg-color-pink
|
Header
Text field 1
Text field 2
Text field 3
|
bg-color-darken
|
Header
Text field 1
Text field 2
Text field 3
|
bg-color-gray
|
Header
Text field 1
Text field 2
Text field 3
|
bg-color-grayLight
|
Header
Text field 1
Text field 2
Text field 3
|