Documentation: Olin

Olin - Responsive HTML5 & CSS3 Template

Template Name:
Version:
Framework:
Author:
Website:
Demo:
Created:
Last Update:
Olin
1.3
Thomas, ThemeTrail
October 12th, 2013
December 3rd, 2013

Welcome to Olin! Thank you so much for purchasing this template.

This guide should answer all your questions about how to use and customize this template. Browse through this document using the sidebar on the left, or use your browser's search function (CTRL+F on Windows or CMD+F on a Mac).

Olin is built on the awesome and wildly adopted Twitter Bootstrap 3 framework. Which lets you easily create responsive, modern, and mobile friendly websites. If you are not already familiar with Bootstrap I highly encourage you to head over and learn about it on the official website getbootstrap.com

The latest version of this documentation can always be found online under: themetrail.com/olin/docs

Support

I am in the process of setting up a dedicated support forum for all ThemeTrail customers. Until it's launched I will handle all support tickets plain, simple and fast via email. Drop me a line with any questions you might have about this template.

As with every template this is a work-in-progress and will never be finished, perfect or 100% bug-free. When you discover a bug - breathe - than let me know. I will do my best as fast as possible to fix it.

In case you need any customization that goes beyond a few lines of code I have to somehow disappoint you, as I don't take on any clients.

[email protected]

Template Files

These are all files that are included with Olin:

Page Templates
Home index.html Homepage with slideshow, iconbox, portfolio, testimonials, blog widget
About about.html About page with skills bar, team profiles, testimonials, multislider.
Contact contact.html Google Maps (full width), contact form, contact details sidebar.
Coming Soon coming-soon.html Coming Soon page with timer and email form.
Coming Soon (Fullscreen Background Image) coming-soon-bg-image.html Coming Soon page with timer and email form. Plus full screen background image and overlay.
Pricing Tables pricing-tables.html Pure CSS3 Pricing tables with one to twelve columns, most-popular highlight and free trial box.
FAQ faq.html Collapsible frequently asked questions accordions with "Contact Us" sidebar.
404 404.html Error (Page Not Found) page with helpful links section and search form.
Portfolio Templates
Portfolio - Four Columns portfolio-four-columns.html Sortable four columns portfolio page.
Portfolio - Three Columns portfolio-three-columns.html Sortable three columns portfolio page.
Portfolio - Two Columns portfolio-two-columns.html Sortable two columns portfolio page.
Portfolio - One Column portfolio-one-column.html Sortable one column portfolio page.
Portfolio - Masonry Layout portfolio-masonry.html Portfolio with Masonry layout. Perfect for arranging images with different heights on the same page.
Single Project - Gallery single-project-gallery.html Single project page with lightbox gallery, description, collapsible project details boxes and a "More Projects" section.
Single Project - Slider single-project-slider.html Single project page with slideshow, description, collapsible project details boxes and a "More Projects" section.
Single Project - Full Width Slider single-project-slider-full-width.html Single project page with full width slideshow, description, project details tabs and a "More Projects" section.
Blog Templates
Blog - Home blog.html Blog homepage with demo articles and sidebar.
Blog Post - Slider blog-post-slider.html Blog post with slideshow, sidebar and comment section.
Blog Post - Gallery blog-post-gallery.html Blog post with gallery, sidebar and comment section.
Blog Post - Video blog-post-video.html Blog post with video, sidebar and comment section.
Demo Templates
Elements elements.html Page with all template elements.
FAQ faq.html Page with Frequently Asked Questions tabs and contact info sidebar.
Grid System grid-system.html Page that demonstrate the basic Bootstrap grid system.
Icons icons.html Page that lists all 361 FontAwesome 3.2 icons.
Typography typography.html Page with all typographic options.

HTML Layout Structure

As Olin is built on the Bootstrap 3 framework, simply use the official Bootstrap 3 classes to achieve your desired layout. Rather than me republishing the same information that has already been written down very well, head over to the official Bootstrap 3 - CSS Documentation to learn more.

HTML and PHP version

Olin comes in PHP and HTML file format. If you don't know anything about PHP or your webhosting package doesn't even run PHP, than use the HTML version html to get your site running. But for easier maintanance and faster development, PHP outperforms HTML by far. Don't be scared by PHP, you don't need to know much about it to use it with this template. Within Olin it's pretty much just another file extensing, that will make your programming life a lot easier. Read on..

The PHP version php within your download includes two extra files named header.php and footer.php where similar to other well known CMS such as WordPress the site's header anf footer section is stored. As the header and footer is the same on any template file the idea behind this practice is to only touch these two files when changing header or footer content. Otherwise you would have to change every single file, when updating the header and footer section of your template.

At the beginnig of every PHP template file we included header.php

<?php $page_title = "Home"; include("header.php"); ?>

The $page_title variable stores the page title. As every page will have a different title you have to enter a unique page title. Even if you care just very little about SEO, do it for any potential visitor, as this title will appear in any Google search where this very page comes up. So take a moment to think what to add here.

All stylesheets and the site navigation is stored within header.php

At the end of every PHP template file we included footer.php

<?php include("footer.php"); ?>

All scripts are added here. Right before the closing body tag. Plus the footer section itself with newsletter, social networks, about snippet, contact and copyright information.

Assets

In the same level as all template files you find the assets folder, where the template stylesheets /css and scripts /js are located.

Stylesheets (CSS Files)
CSS Animations animate.min.css Minified CSS Animations by Dan Eden (Usage: Slideshow)
BxSlider bxslider.css BxSlider by Steven Wanderski (Usage: Multislider)
Isotope isotope.css Styles for the portfolio layout plugin by David DeSandro (Usage: Portfolio)
Magnific Popup magnific-popup.css Styles for the lightbox plugin by Dmitry Semenov (Usage: Lightboxes)
Main Stylesheet styles.css Main stylesheet. Compiled from assets/less/styles.less with LESS.app. Don't make any changes to this file, as it will be overridden by future updates. Use custom.css (learn more)
Scripts (JS Files)
HTML5 shim html5shiv.js IE6-9 HTML5 elements support by Alexander Farkas
BxSlider jquery.bxslider.min.js BxSlider jQuery plugin by Steven Wanderski (Usage: Multislider)
Countdown jquery.countdown.min.js Countdown jQuery plugin by Edson Hilios (Usage: Coming Soon Pages)
FitText jquery.fittext.js Smooth Font Scaling jQuery plugin by Paravel (Usage: Slideshow Text)
FitVids jquery.fitvids.js Fluid video width embeds jQuery plugin by Chris Coyier & Paravel (Usage: Video Blog Post)
Isotope jquery.isotope.min.js Magic layouts jQuery plugin by David DeSandro (Usage: Portfolio)
Magnific Popup jquery.magnific-popup.min.js Lightbox jQuery plugin by Dmitry Semenov (Usage: Lightboxes)
LESS less.js LESS v1.3.3 by Alexis Sellier
Resond JS respond.min.js IE8 and under media queries support by Scott Jehl
Theme JS theme.js Contains all other custom and theme specific scripts

Styles (CSS)

Use all the official Bootstrap CSS Styles plus the following template specific styles to enhances the visual experience of your website.

  • Element Styles
    .gradient (Vertical background gradient from #fff to #eee)
    #sidebar (Wrap your .affix sidebar into this a #sidebar div)
    Vertical Margins:
    .section-small .section-base .section-large
    .margin-small .margin-base .margin-large
    .margin-top-small .margin-top-base .margin-top-large
    .margin-bottom-small .margin-bottom-base .margin-bottom-large
    Vertical Paddings:
    .padding-small .padding-base .padding-large
    .padding-top-small .padding-top-base .padding-top-large
    .padding-bottom-small .padding-bottom-base .padding-bottom-large
  • Typography Styles
    Handwritten Font:
    .handwritten (Google Font: 'Marck Script')
    .color (color: @color-primary | Default: #00a79d)
    .black (color: #000)
    .upper (text-transform: uppercase)
    .invert (background: Primary color; color: #fff)
    .list-icon (For lists with <i> icon font)
    .hr2 (Heading style with a fine vertical centered double line)
Predefined Color Schemes

You can choose between the following 15 predefined color schemes.

  • blue.css
  • blue2.css
  • blue3.css
  • brown.css
  • default.css
  • gray.css
  • green.css
  • green2.css
  • orange.css
  • purple.css
  • purple2.css
  • red.css
  • red2.css
  • red3.css
  • yellow.css

Default color scheme tag in the template head section:

<link href="assets/css/default.css" rel="stylesheet">

Replace default.css with the color scheme of your choice. To load the orange color scheme you would change the link tag to:

<link href="assets/css/orange.css" rel="stylesheet">

Don't modify the predefined color schemes, as they will be overriden by future updates. Simply create your own color scheme by duplicating an exisiting color scheme from assets/colors/. Than change the colors as you like and update the color scheme link tag path.

Need some color inspiration? Try https://kuler.adobe.com/

Custom CSS

Don't make any changes to styles.css as it is the main CSS stylesheet; it will be overridden by future updates. Go to assets/css/ and create a CSS file named custom.css. There is already a stylesheet link tag in your template's header (line 32) that links to assets/css/custom.css. If you don't add any custom styles, you can delete this line of code.

LESS

Olins styles are written in LESS, than compiled to CSS. LESS extends CSS with dynamic behavior such as variables, mixins, operations and functions. It can save you precious development time and helps to maintain your styles more easily. Only use LESS files in development, not for live websites. Therefor compile to CSS. LESS files are located in assets/less/

Same as with the main CSS file: Don't make any changes to styles.less as it is the main LESS stylesheet; it will be overridden by future updates. Create a new LESS file or duplicate styles.less and name it custom.less. Compile to CSS into the standard CSS folder assets/css/ as custom.css There is already a stylesheet link tag in your template's header (line 32) that links to assets/css/custom.css. If you don't add any custom styles, you can delete this line of code.

Even if you are new to LESS, give it a try, it's really dead simple to learn.

The following piece of code is necessary to get LESS running. It is already included in the template header line 38-40, but comment out. Remove the comments to enable LESS including error notifications.

<link href="assets/less/styles.less" rel="stylesheet/less" />
<script>less = { env: 'development' };</script>
<script src="assets/js/less.js"></script>

Typography

H1 Heading

H2 Heading

H3 Heading

H4 Heading

H5 Heading
H6 Heading

Paragraphs

This is a .lead paragraph, which has a font size of 18px. Standard font size is 13px. Lorem ipsum dolor sit amet, consectetur adipisicing elit. Qui, odit, explicabo mollitia adipisci facere veniam esse eius tenetur deserunt earum recusandae temporibus aspernatur architecto impedit nostrum tempora quaerat ea labore hic similique molestiae in vitae officiis non rerum dolorem nisi corporis illo ducimus at pariatur exercitationem reprehenderit totam a magni?

<p class="lead">This is a <code>.lead</code> paragraph, which has a font size of 18px.</p>

This is a standard parapgraph with a font size of 13px. Lorem ipsum dolor sit amet, consectetur adipisicing elit. Laborum, accusantium cumque error dolorem non impedit nisi magni maxime provident. Pariatur, magni tenetur at vitae perspiciatis! Molestiae, aut, quidem consequatur beatae quasi nesciunt quod quas neque reiciendis facere temporibus vitae provident deleniti autem obcaecati porro laudantium quaerat eaque ipsa enim expedita.


Inverted Text

To invert an element add .invert like so: I'm an inverted text.

<span class="invert">I'm an inverted text.</span>

<h5 class="page-header">Underlined H5 Heading</h5>
Left aligned H5 Heading with fine double line
<h5 class="hr2">Left aligned H5 Heading with fine double line</h5>
Centered H5 Heading with fine double line
<h5 class="hr2 text-center">Centered H5 Heading with fine double line</h5>
Right aligned H5 Heading with fine double line
<h5 class="hr2 text-right">Right aligned H5 Heading with fine double line</h5>

Handwritten

Beautiful handwritten font Marck Script.

Beautiful handwritten font Marck Script.

More free webfonts can be found over here: http://www.google.com/fonts/


Blockquote

I'm a blockquote. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.

John Doe in "Notes from John Doe"
<blockquote>
  <p><strong>I'm a blockquote.</strong> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p>
  <small>John Doe in <cite title="Source Title">"Notes from John Doe"</cite></small>
</blockquote>

Unordered list

  • Unorder list item
  • Unordered list item
  • Unordered sub list
    • Unordered sub list item
    • Unordered sub list item
    • Unordered sub list item
  • Unordered list item
  • Unordered list item
  • Unordered list item
  • Unorder list item
  • Unordered list item
  • Unordered sub list
    • Unordered sub list item
    • Unordered sub list item
    • Unordered sub list item
  • Unordered list item
  • Unordered list item
  • Unordered list item

Ordered list

  1. Ordered list item
  2. Ordered list item
  3. Ordered sub list
    • Ordered sub list item
    • Ordered sub list item
    • Ordered sub list item
  4. Ordered list item
  5. Ordered list item
  6. Ordered list item
  1. Ordered list item
  2. Ordered list item
  3. Ordered sub list
    • Ordered sub list item
    • Ordered sub list item
    • Ordered sub list item
  4. Ordered list item
  5. Ordered list item
  6. Ordered list item

Unstyled list

  • Unstyled list item
  • Unstyled list item
  • Unstyled sub list
    • Unstyled sub list item
    • Unstyled sub list item
    • Unstyled sub list item
  • Unstyled list item
  • Unstyled list item
  • Unstyled list item
  • Unstyled list item
  • Unstyled list item
  • Unstyled sub list
    • Unstyled sub list item
    • Unstyled sub list item
    • Unstyled sub list item
  • Unstyled list item
  • Unstyled list item
  • Unstyled list item

Icon list

  • Icon list item
  • Icon list item
  • Icon sub list
    • Icon sub list item with color
    • Icon sub list item with color
    • Icon sub list item with color
  • Icon list item
  • Icon list item
  • Icon list item
  • Icon list item
  • Icon list item
  • Icon sub list
    • Icon sub list item with color
    • Icon sub list item with color
    • Icon sub list item with color
  • Icon list item
  • Icon list item
  • Icon list item
Preformatted text

Preformatted text goes here. Can also include code: I am a code element

<pre>Preformatted text goes here. Can also include code: <code>I am a code element</code></pre>
Code

I am a code element

<code>I am a code element</code>

Icons

This template uses the FontAwesome 3.2 Icon Font with a total of 361 icons. Not Bootstrap's standard Icon Font Glyphicons with 180 icons. If you prefer to use Glyphicons you can do so, as it's included with your download under assets/fonts. This guide describes how to use the FontAwesome Icon Font with this template.

Icon Fonts have a lot of advantages over graphic icons. They are Infinite Scalable. Fully CSS Cutomizable: Size, Color, Shadow etc. Perfect for Retina Displays. Screen Reader Compatible. IE7 Support.

Instead of a pixel-based icon such as a GIF or PNG graphic via:

<img src="images/icon-star.png" alt="" />

You can easily insert icons like the star below by adding a class of .icon-star to your <i> element:

<i class="icon-star"></i>

Which will output:

Change color, size, opacity, background etc. as you would do with any other font. As the name implies an Icon Font stores icons, where a normal font stores characters. All .icon-* icon font elements are inline elements by default.

Example Bolt Icon Font Style

.icon-bolt {
	display: inline-block;
	width: 30px;
	height: 30px;
	font-size: 20px;
	line-height: 30px;
	text-align: center;
	color: #f90;
	border-radius: 50%;
	background-color: #eee;
}
How To Create your Own Icon Font

If you need some more customization I highly recommend to check out http://icomoon.io/app/. Where you can create your very own Icon Font by cherry-picking every single icon out of multiple Icon Fonts such as the great Entypo, Iconic and many more.

Social Network Icons

Wrap your social network icons into .social-networks to show them with background color.

<span class="social-networks">
	<a href=""><i class="icon-twitter"></i></a>
	<a href=""><i class="icon-dribbble"></i></a>
	<a href=""><i class="icon-google-plus"></i></a>
</span>

Wrap your social network icons into .social-networks-transparent to show them with background color on hover.

<span class="social-networks-transparent">
	<a href=""><i class="icon-twitter"></i></a>
	<a href=""><i class="icon-dribbble"></i></a>
	<a href=""><i class="icon-google-plus"></i></a>
</span>

Iconbox

Use the .iconbox wrapper to create a multi-column iconbox with .header and .content. Place the icon right before of your heading.

Title 1

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deserunt, provident.

Title 2

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deserunt, provident.

Title 3

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deserunt, provident.

<div class="iconbox">
	<div class="row">
		<div class="col-lg-4">
			<i class="icon-cogs icon-2x"></i>
			<h5 class="header">Title 1</h5>
			<p class="content">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deserunt, provident.</p>
		</div>
		<div class="col-lg-4">
			<i class="icon-magic icon-2x"magic></i>
			<h5 class="header">Title 2</h5>
			<p class="content">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deserunt, provident.</p>
		</div>
		<div class="col-lg-4">
			<i class="icon-bullhorn icon-2x"></i>
			<h5 class="header">Title 3</h5>
			<p class="content">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deserunt, provident.</p>
		</div>
	</div>
</div>

Standard Components

Olin includes all Bootstrap components. What follows is a short explanation of each component plus the source code.

Buttons

Buttons are pure CSS3 with background gradients and fallbacks. In six styles (+ disabled state), four sizes, groupable and much more. Add .btn and one of the six button styles (.btn-default, .btn-primary etc.) to apply the preconfigured button styles.

<button type="button" class="btn btn-default">Default</button>
<button type="button" class="btn btn-primary">Primary</button>
<button type="button" class="btn btn-success">Success</button>
<button type="button" class="btn btn-info">Info</button>
<button type="button" class="btn btn-warning">Warning</button>
<button type="button" class="btn btn-danger">Danger</button>
<button type="button" class="btn btn-danger" disabled="disabled">Disabled button</button>
Buttons Sizes

For additional button sizes add .btn-xs, .btn-sm or .btn-lg to your buttons.

<button type="button" class="btn btn-default btn-lg">Large button</button>
<button type="button" class="btn btn-default">Default button</button>
<button type="button" class="btn btn-default btn-sm">Small button</button>
<button type="button" class="btn btn-default btn-xs">Extra small button</button>
Button Group

Wrap your .btn buttons in a .btn-group container.

<div class="btn-group">
  <button type="button" class="btn btn-default">Left</button>
  <button type="button" class="btn btn-default">Middle</button>
  <button type="button" class="btn btn-default">Right</button>
</div>

Labels

Default Primary Success Info Warning Danger

<span class="label label-default">Default</span>
<span class="label label-primary">Primary</span>
<span class="label label-success">Success</span>
<span class="label label-info">Info</span>
<span class="label label-warning">Warning</span>
<span class="label label-danger">Danger</span>

Badges

12

<span class="badge">12</span>
<button type="button" class="btn btn-default">Button with badge <span class="badge">99</span></button>

Tabs

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Vel, voluptates, cum, atque, minima soluta architecto quisquam assumenda saepe ea ad maiores nulla sapiente impedit aspernatur provident nesciunt asperiores. Quis, fugit nisi soluta facilis rerum fugiat pariatur consectetur beatae ipsa. Ex optio cum eligendi rerum adipisci. Aperiam explicabo fugiat vero saepe?

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Impedit, autem, tenetur, earum suscipit repellendus est iusto reprehenderit iure rem eveniet totam culpa ipsa libero odio ratione similique quasi laudantium officia. Expedita, provident ex quod vitae eos asperiores facilis modi. Neque, accusamus, asperiores odit distinctio maxime fugiat vitae! Sunt, sint, cum rerum exercitationem itaque officiis dolorum odio amet ratione suscipit nemo doloremque officia provident iure repudiandae nam veniam voluptates temporibus vitae fugit nostrum dicta omnis eaque.

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Fugiat, laborum, eius, quasi, labore asperiores sint vitae accusamus dicta ad quidem alias officia iusto magnam dolorum neque aut repudiandae officiis error quos possimus deserunt in expedita adipisci perspiciatis incidunt quia eos animi sit debitis distinctio. Sunt et quod unde obcaecati doloribus.

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint, id nulla quo consequuntur unde dolores facilis inventore vel natus aut provident deserunt in enim at voluptatum architecto quos dolor corrupti earum error officia repudiandae alias quis! Accusamus, hic maiores eius.

<ul class="nav nav-tabs tab-header">
  <li class="active"><a href="#home" data-toggle="tab"><i class="icon-home"></i> Home</a></li>
  <li><a href="#profile" data-toggle="tab"><i class="icon-user"></i> Profile</a></li>
  <li><a href="#messages" data-toggle="tab"><i class="icon-envelope"></i> Messages</a></li>
  <li><a href="#settings" data-toggle="tab"><i class="icon-gears"></i> Settings</a></li>
</ul>

<div class="tab-content">
  <div class="tab-pane active" id="home">
	  <!-- Tab 1 content -->
  </div>
  <div class="tab-pane" id="profile">
	  <!-- Tab 2 content -->
  </div>
  <div class="tab-pane" id="messages">
	  <!-- Tab 3 content -->
  </div>
  <div class="tab-pane" id="settings">
	  <!-- Tab 4 content -->
  </div>
</div>

Accordion
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident.
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo.
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et.
<div class="panel-group" id="accordion">
  <div class="panel panel-default">
    <div class="panel-heading">
      <h4 class="panel-title"><a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion" href="#collapseOne">Collapsible Group Item #1</a></h4>
    </div>
    <div id="collapseOne" class="panel-collapse collapse in">
      <div class="panel-body">
        ..
      </div>
    </div>
  </div>
  <div class="panel panel-default">
    <div class="panel-heading">
      <h4 class="panel-title"><a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion" href="#collapseTwo">Collapsible Group Item #2</a></h4>
    </div>
    <div id="collapseTwo" class="panel-collapse collapse">
      <div class="panel-body">
        ..
      </div>
    </div>
  </div>
  <div class="panel panel-default">
    <div class="panel-heading">
      <h4 class="panel-title"><a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion" href="#collapseThree">Collapsible Group Item #3</a></h4>
    </div>
    <div id="collapseThree" class="panel-collapse collapse">
      <div class="panel-body">
        ..
      </div>
    </div>
  </div>
</div>

Images
<img src=".." alt="" class="img-rounded">
<img src=".." alt="" class="img-circle">
<img src=".." alt="" class="img-thumbnail">

Custom Content

Thumbnail label

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Reiciendis, officiis, omnis rerum qui tempora cum suscipit eum quidem dolorum laboriosam nisi repellendus nobis maxime voluptas.

Button

<div class="thumbnail">
  <img src=".." alt="" />
  <div class="caption">
    <h4>Thumbnail label</h4>
    <p>
      ..
    </p>
    <p><a href="" class="btn btn-default">Button</a></p>
  </div>
</div>

Well

The Perfect Highlighter

Well with inset box shadow and light gray background.

Add a little note..

<div class="well">
	<div class="row">
  	<div class="col-md-9">
  		<h3>The Perfect Highlighter</h3>
  		<p>Well with inset box shadow and light gray background.</p>
  	</div>
  	<div class="col-md-3">
	  	<button class="btn btn-lg btn-default btn-block">Sign Up</button>
	  	<p class="text-center text-muted"><small>Add a little note..</small></p>
  	</div>
	</div>
</div>

Well with background gradient

For a background gradient add .gradient to your well. Same with Jumbotron or any other element.

<div class="well gradient">
	<h3>Well with background gradient</h3>
	<p class="lead">..</p>
</div>

Jumbotron

Big News

Got something big to announce?

Learn more

<div class="jumbotron text-center gradient">
  <h1>Big News</h1>
  <p>Got something big to announce?</p>
  <p><a class="btn btn-primary btn-lg">Learn more</a></p>
</div>

Pagination
<ul class="pagination">
  <li><a href=""><i class="icon-angle-left"></i></a></li>
  <li><a href="">1</a></li>
  <li><a href="">2</a></li>
  <li><a href="">3</a></li>
  <li><a href="">4</a></li>
  <li><a href="">5</a></li>
  <li><a href=""><i class="icon-angle-right"></i></a></li>
</ul>

Pager
<ul class="pager" style="text-align:left">
<li><a href=""><i class="icon-angle-left"></i> Previous</a></li>
<li><a href="">Next <i class="icon-angle-right"></i></a></li>
</ul>

Alerts with close button
Success! Hi, I'm a dismissable alert for success messages.
Info! Hi, I'm a dismissable alert for info messages.
Warning! Hi, I'm a dismissable alert for warning messages.
Danger! Hi, I'm a dismissable alert for danger messages.
<div class="alert alert-success alert-dismissable">
	<button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
	<strong>Success!</strong> Hi, I'm a dismissable alert for success messages.
</div>
<div class="alert alert-info alert-dismissable">
	<button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
	<strong>Info!</strong> Hi, I'm a dismissable alert for info messages.
</div>
<div class="alert alert-warning alert-dismissable">
	<button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
	<strong>Warning!</strong> Hi, I'm a dismissable alert for warning messages.
</div>
<div class="alert alert-danger alert-dismissable">
	<button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
	<strong>Danger!</strong> Hi, I'm a dismissable alert for danger messages.
</div>

Progress Bars
40% Complete
<div class="progress">
  <div class="progress-bar" role="progressbar" aria-valuenow="40" aria-valuemin="0" aria-valuemax="100" style="width: 40%;">
    <span class="sr-only">40% Complete</span>
  </div>
</div>
60% Complete (success)
<div class="progress progress-striped">
  <div class="progress-bar" role="progressbar" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100" style="width: 60%">
    <span class="sr-only">60% Complete (success)</span>
  </div>
</div>
80% Complete
<div class="progress progress-striped active">
  <div class="progress-bar"  role="progressbar" aria-valuenow="80" aria-valuemin="0" aria-valuemax="100" style="width: 80%">
    <span class="sr-only">80% Complete</span>
  </div>
</div>
40% Complete (success)
30% Complete (warning)
30% Complete (danger)
<div class="progress">
  <div class="progress-bar progress-bar-success" style="width: 40%">
    <span class="sr-only">40% Complete (success)</span>
  </div>
  <div class="progress-bar progress-bar-warning" style="width: 30%">
    <span class="sr-only">30% Complete (warning)</span>
  </div>
  <div class="progress-bar progress-bar-danger" style="width: 30%">
    <span class="sr-only">30% Complete (danger)</span>
  </div>
</div>

Tooltip

Add the data-toggle="tooltip" and title=".." attribute to the element you want the tooltip to apply to. The title attribute holds your tooltip's text.

Example: http://getbootstrap.com/javascript/#tooltips

<a href="http://getbootstrap.com/javascript/#tooltips" data-toggle="tooltip" title="Bootstrap Documentation: Tooltip" target="_blank">http://getbootstrap.com/javascript/#tooltips</a>

Popovers

Add small overlays of content, like those on the iPad, to any element for housing secondary information.

"On Hover" Example - class="popover":
http://getbootstrap.com/javascript/#popovers

<a href="http://getbootstrap.com/javascript/#popovers" data-toggle="popover-hover" data-original-title="Bootstrap Documentation: Popovers" data-content="Learn more about the popover." target="_blank">http://getbootstrap.com/javascript/#popovers</a>

"On Click"" Example - class="popover":
Click to toggle the popover

<a class="btn btn-default" data-toggle="popover" data-original-title="Custom Popover Title" data-content="<p>Here goes your custom popover body. <strong>HTML</strong> allowed. A button for example:</p><button type='button' class='btn btn-primary btn-sm'>more</button>" target="_blank">Click to toggle the popover</a>

Forms

Create beautiful forms without any extra markup. Either with labels & form controls, like the example below, or even more minimal by adding a placeholder text to your inputs, instead of labels.

Hint: Screen readers will have trouble with your forms if you don't include a label for every input. For these inline forms, you can hide the labels using the .sr-only class.

* required
<form action="" role="form">
	<div class="row">
		<div class="form-group col-md-6">
			<label for="name">Name</label>
			<input type="text" id="name" placeholder="" class="form-control" />
		</div>
		<div class="form-group col-md-6">
			<label for="email">Email <span class="text-warning">*</span></label>
			<input type="text" id="email" placeholder="" class="form-control" />
		</div>
	</div>
	<div class="form-group">
		<label for="subject">Subject</label>
		<input type="text" id="message" class="form-control" placeholder="" />
	</div>
	<div class="form-group">
		<label for="message">Message <span class="text-warning">*</span></label>
		<textarea name="message" id="message" cols="30" rows="10" class="form-control" placeholder=""></textarea>
	</div>
	<button type="submit" class="btn btn-primary">Submit</button>
	<small class="pull-right text-muted">* required</small>
</form>

Affix

The sidebar on the left is a live demo of the Affix plugin. Simply wrap your .nav into a #sidebar + .affix container and add your menu items using li elements.

<div id="sidebar" class="affix" role="complementary">
	<ul class="nav">
		<li><a href="#intro">Intro</a></li>
		<li><a href="#support">Support</a></li>
		<li><a href="#files">Template Files</a></li>
		<li><a href="#html">HTML Layout Structure</a></li>
		<li><a href="#styles">Styles (CSS)</a></li>
		<li><a href="#typography">Typography</a></li>
		<li><a href="#icons">Icons</a></li>
		<li><a href="#components">Standard Components</a></li>
		<li>
			<a href="#additional">Additional Components</a>
			<ul class="nav">
				<li><a href="#pricing-tables">Pricing Tables</a></li>
				<li><a href="#countdown">Countdown</a></li>
				<li><a href="#bxslider">BxSlider</a></li>
				<li><a href="#lightbox">Lightbox</a></li>
				<li><a href="#portfolio">Portfolio</a></li>
			</ul>
		</li>
	</ul>
</div>

Modal

Modals are streamlined, but flexible, dialog prompts with the minimum required functionality and smart defaults.

Example Modal

<a data-toggle="modal" href="#demomodal" class="btn btn-primary btn-lg">Example Modal</a>


<div class="modal fade" id="demomodal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
  <div class="modal-dialog">

    <div class="modal-content">

      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
        <h4 class="modal-title">Modal Title</h4>
      </div>

      <div class="modal-body">..</div>

    </div>

  </div>
</div>
Slideshow - Bootstrap Carousel

Olin comes with a modified version of Bootstrap's carousel plugin. The slideshow text and controls (Icon Font) scale smoothly according to your device width. Kudos to the FitText.js plugin.

Basic slideshow markup:

<div id="carousel" class="carousel slide">
	<!-- Wrapper for slides -->
	<div class="carousel-inner">
		<!-- Slide 1 container -->
		<div class="item active">
			<img src="..." alt="...">
			<div class="carousel-caption">
				...
			</div>
	  </div>
	</div>
</div>

The .carousel holds all slides (.item ). Captions can be added with a .carousel-caption element. Don't forget to add a class of .active to the .item where your slideshow should start from, otherwise no slideshow will be visible at all.

Custom Slideshow Elements and Styles

You can place just about any optional element into your .item slides. I added a helper container named .carousel-content, which you simply place into your .item slides. Use it to insert pre-formatted slide content such as a header with .carousel-header and a body .carousel-body. I recommend to always use these three elements when placing text into your slides, as the FitText.js plugin, which will scale your slideshow text properly on all devices needs this classes to do it's magic.

Example: Slide with Background Image, Header and Body Text

<div class="item">
	<img src="..." alt="..." />
	<div class="carousel-content">
		<div class="container">
			<h1 class="carousel-header">Slide title</h1>
			<div class="carousel-body">
				<p>Slide body text</p>
			</div>
		</div>
	</div>
</div>
Controls

Copy the following code and paste it after your .carousel-inner container to add slider controls. They appear on hover.


<a class="left carousel-control" href="#carouseldemo" data-slide="prev">
  <i class="icon-angle-left"></i>
</a>
<a class="right carousel-control" href="#carouseldemo" data-slide="next">
  <i class="icon-angle-right"></i>
</a>
Indicators

Place the following code after the .carousel-inner container to display indicators. One li element for every slide. Apply .active to the indicator that you want to select by default. data-target has to be your slider's ID. Your first indicator gets a data-slide-to of "0". Next slide "1" and so on. Pointing to whatever slide a certain indicator should should target.


<ol class="carousel-indicators">
  <li data-target="#carouseldemo" data-slide-to="0" class="active"></li>
  <li data-target="#carouseldemo" data-slide-to="1"></li>
</ol>
Interval

Go to assets/js/themes.js (line 6) to change the slide interval. Default is set to "8000" (that's 8000ms = 8sec).

CSS Animations

The fancy animations (Fade, Bounce, Flip, Flash etc.) are pure CSS and possible using the animate.css jquery plugin.

You can animate every single one of your slide elements. By default slideshow content has no animation.

Random animations: Add .random to apply a random CSS animation plus a random delay to every one of your effects between 1/4sec to 1sec. Rather than starting all effects at the same time.

Example: Slide with randomly animated Header and Body Text

<div class="item">
	<img src="..." alt="..." />
	<div class="carousel-content">
		<div class="container">
			<h1 class="carousel-header random">Slide title</h1>
			<div class="carousel-body random">
				<p>Slide body text</p>
			</div>
		</div>
	</div>
</div>

Custom animations: You can also assign animations and delays to your slideshow elements manually by adding .animated + "CSS animation" + "delay" to your elements.

Example: Slider with custom CSS animations for Header and Body Text

<div class="item">
	<img src="..." alt="..." />
	<div class="carousel-content">
		<div class="container">
			<h1 class="carousel-header animated fadeInDown delay050s">Slide title</h1>
			<div class="carousel-body animated bounceIn delay150s">
				<p>Slide body text</p>
			</div>
		</div>
	</div>
</div>

CSS animation effects (all 61):

  • Attention seekers: .flash .bounce .shake .tada .swing .wobble .pulse
  • Flippers: .flip .flipInX .flipOutX .flipInY .flipOuY
  • Fading entrances: .fadeIn .fadeInUp .fadeInDown .fadeInLeft .fadeInRight .fadeInUpBig .fadeInDownBig .fadeInLeftBig .fadeInRightBig
  • Fading exits: .fadeOut .fadeOutUp .fadeOutDown .fadeOutLeft .fadeOutRight .fadeOutUpBig .fadeOutDownBig .fadeOutLeftBig .fadeOutRightBig
  • Sliders: .slideIn .slideInLeft .slideInRight .slideOutUp .slideOutLeft .slideOutRight
  • Bouncing entrances: .bounceIn .bounceInDown .bounceInUp .bounceInLeft .bounceInRight
  • Bouncing exits: .bounceOut .bounceOutDown .bounceOutUp .bounceOutLeft .bounceOutRight
  • Rotate entrances: .rotateIn .rotateInDownLeft .rotateInDownRight .rotateInUpLeft .rotateInUpRight
  • Rotate exits: .rotateOut .rotateOutDownLeft .rotateOutDownRight .rotateOutUpLeft .rotateOutUpRight
  • Lightspeed: .lightSpeedIn .lightSpeedOut
  • Specials: .hinge .rollIn .rollOut

Delays (0.25sec to 5sec):

  • .delay025s = 0.25sec delay
  • .delay050s = 0.50sec delay
  • .delay075s = 0.75sec delay
  • .delay1s = 1sec delay
  • .delay125s = 1.25sec delay
  • .delay155s = 1.50sec delay
  • .delay175s = 1.75sec delay
  • .delay2s = 2sec delay
  • .delay250s = 2.50sec delay
  • .delay3s = 3sec delay
  • .delay3s = 4sec delay
  • .delay5s = 5sec delay
Slider Text Styles

There are four pre-made slider text styles:

  • .dark 30% opaque black background color + light font color
  • .light 50% opaque white background color + dark font color
  • .gray Gray background color + light font color
  • .color Primary color background + light font color
Complete slideshow example

Source code from the complete slideshow above

<div id="carouseldemo" class="carousel slide">

	<!-- Wrapper for slides -->
	<div class="carousel-inner">

		<!-- Slide 1 -->
		<div class="item active">
			<img src="" alt="" />
			<div class="carousel-content">
				<div class="container">
					<div class="carousel-header random color">Slide title (.random)</div><br />
					<div class="carousel-body random gray">Slide body text (.random)</div>
				</div>
			</div>
			<div class="carousel-caption random">
				<div class="container">
					<div class="carousel-header">Slide Caption</div>
					<div class="carousel-body">Some caption text</div>
				</div>
			</div>
		</div>
		<!-- Slide 2 -->
		<div class="item">
			<img src="" alt="" />
			<div class="carousel-content">
				<div class="container">
					<div class="carousel-header animated fadeIn delay050s">Slide title (.animated .fadeIn .delay050s)</div><br />
					<div class="carousel-body animated bounceIn delay1s">Slide body text (.animated .bounceIn .delay1s)</div>
				</div>
			</div>
			<div class="carousel-caption animated bounceInUp delay150s">
				<div class="container">
					<div class="carousel-header">Slide Caption (.animated bounceInUp delay150s)</div>
				</div>
			</div>
		</div>

</div>

<!-- Controls -->
<a class="left carousel-control" href="#carouseldemo" data-slide="prev">
	<i class="icon-angle-left"></i>
</a>
<a class="right carousel-control" href="#carouseldemo" data-slide="next">
	<i class="icon-angle-right"></i>
</a>

<!-- Indicators -->
<ol class="carousel-indicators">
	<li data-target="#carouseldemo" data-slide-to="0" class="active"></li>
	<li data-target="#carouseldemo" data-slide-to="1"></li>
</ol>

</div>
Favicon

To add a favicon replace the default favicon.png with your own. You can use PNG, GIF or ICO files. I recommend a PNG graphic with a dimension of 32x32 or 64x64 pixel. If you don't want to use a PNG you have to update the favicon's file name in the head section line 6:

<link rel="icon" href="favicon.png">

Additional Components

Twitter Bootstrap comes with many great plugins, but Olin as a multipurpose corporate template needs a little bit more juice. That's why it got even more functionality with the help of the following great plugins.

Pricing Tables

Creating fancy predefined and easy to customize pricing tables is a breeze. First we create the .pricing-table container, which will store all pricing options. In our example below we have three pricing options. Each option is wrapped into an .box element. Wrap each .box into the appropriate Bootstrap grid. In our example we use .col-md-4 to create a three column pricing table. The box itself stores the .pricing-header, .price-tag, an unordered list with all the pricing option features and a .btn button. That is the basic markup for any pricing table.

Add a class of .popular to the .box element, where you want a "Most Popular" badge to appear.

Personal

$ 19 /month
  • 1 user
  • Custom CSS
  • 5GB storage
  • Email support
Order Now

Enterprise

$ 79 /month
  • Unlimited user
  • Custom CSS
  • Unlimited storage
  • 24x7 phone support
Order Now
<div class="pricing-table">
  <div class="col-md-4">
  	<div class="box">
	  	<h3 class="pricing-header">Personal</h3>
	  	<div class="price-tag">$ 19 <small>/month</small></div>
	  	<ul>
	  		<li>1 user</li>
	  		<li>Custom CSS</li>
	  		<li>5GB storage</li>
	  		<li>Email support</li>
	  	</ul>
	  	<a href="" class="btn btn-primary">Order Now</a>
  	</div>
  </div>
  <div class="col-md-4">
  	<div class="box popular">
  		<div class="pricing-popular">Most Popular</div>
	  	<h3 class="pricing-header">Team</h3>
	  	<div class="price-tag">$ 49 <small>/month</small></div>
	  	<ul>
	  		<li>5 user</li>
	  		<li>Custom CSS</li>
	  		<li><strong>Unlimited</strong> storage</li>
	  		<li><strong>24x7 phone support</strong></li>
	  	</ul>
	  	<a href="" class="btn btn-primary btn-lg">Order Now</a>
  	</div>
  </div>
  <div class="col-md-4">
  	<div class="box">
	  	<h3 class="pricing-header">Enterprise</h3>
	  	<div class="price-tag">$ 79 <small>/month</small></div>
	  	<ul>
	  		<li><strong>Unlimited</strong> user</li>
	  		<li>Custom CSS</li>
	  		<li><strong>Unlimited</strong> storage</li>
	  		<li>24x7 phone support</li>
	  	</ul>
	  	<a href="" class="btn btn-primary">Order Now</a>
  	</div>
  </div>
</div>

Countdown

A simple, sleek countdown for "Coming Soon" or Product Launch Pages can be added with the following piece of code. When the set date is reached the countdown font color will become red.

Days
Hours
Minutes
Seconds
<div class="countdown">
  <div>
	  <span id="days" class="date-number"></span>
		<span class="date-unit">Days</span>
  </div>
  <div>
	  <span id="hours" class="date-number"></span>
		<span class="date-unit">Hours</span>
  </div>
  <div>
	  <span id="minutes" class="date-number"></span>
		<span class="date-unit">Minutes</span>
  </div>
  <div>
	  <span id="seconds" class="date-number"></span>
		<span class="date-unit">Seconds</span>
  </div>
  <!-- USAGE: To set the countdown go to the "The Final Countdown" script right before the closing </body> tag and change the date (format: YYYY/MM/DD hh:mm:ss)  -->
</div>

For more examples check out Olins "Coming Soon" pages: coming-soon.html and coming-soon-bg-image.html

Testimonials

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Hic, magni unde doloribus ex soluta adipisci vel iste ea et dolorum!

Britney Brixton
SaveTheWorld

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Hic, magni unde doloribus ex soluta adipisci vel iste ea et dolorum!

Hubert Hughes
KreativeFolks

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Hic, magni unde doloribus ex soluta adipisci vel iste ea et dolorum!

Jodie Jameson
Women21

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Hic, magni unde doloribus ex soluta adipisci vel iste ea et dolorum!

Britney Brixton
SaveTheWorld

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Hic, magni unde doloribus ex soluta adipisci vel iste ea et dolorum!

Hubert Hughes
KreativeFolks

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Hic, magni unde doloribus ex soluta adipisci vel iste ea et dolorum!

Jodie Jameson
Women21

For the standard slideshow Olin is using Bootstrap's default carousel. To display multiple slides at once we utilize BxSlider. The example below shows five slides at once, hence a class of .bxslider5. You can choose to display two to eight slides. A list with the class of .bxlisder8 will display eight slides. Same naming convention for any other number of slides from 2 to 8.

<ul class="bxslider5">
	
  • </ul>

    To showcase all kinds of media such as single images, galleries, videos, Google Maps, Ajax content and forms in a professional style Olin runs a highly customized version of the ultra fast, light and responsive Magnific Popup by Dmitry Semenov.

    Image Gallery

    Wrap your linked images into a container of .gallery to add lightbox behavior. When your .gallery contains more than one image your lightbox becomes automatically browseable.

    The title attribute holds the content for your image's caption. Can be any valid HTML.

    <div class="gallery">
      <div class="row">
    	  <div class="col-sm-4">
    			<a href="" title="<h3>Easily browse through a gallery with your keyboard (left & right), close with ESC</h3>">
    				<img src="" alt="" />
    			</a>
    		</div>
    	  <div class="col-sm-4">
    	  	<a href="" title="Use the <code>title</code> attribute to add a caption like this one. ">
    	  		<img src="" alt="" />
    	  	</a>
    	  </div>
    	  <div class="col-sm-4">
    	  	<a href="" title="HTML content works as well, see: <button class='btn btn-primary'><i class='icon-heart'></i> .. I'm a lovely button</button>">
    	  		<img src="" alt="" />
    	  	</a>
    	  </div>
      </div>
    </div>
    
    iFrame - Google Maps or videos such as YouTube, Vimeo etc.
    Open YouTube video
    Open YouTube video
    Open Vimeo video
    Open Vimeo video
    Open Google Map
    Open Google Map

    Isotope, the single best jQuery layout plugin on the market is already built-in right into Olin. I spent the money on it, so you don't have to. Copy, paste and enjoy.

    Let's create the sorting part first to make your portfolio sortable. You can skip this part, if you don't want to add this function as it's not required for Isotope to do its magic.

    
    

    We will host our filters in an unordered .portfolio-filter list. Use the data-filter attribute to name your filters. Don't forget to prepend a dot for each filter name, like so: .filter1

    Filter naming convention: http://isotope.metafizzy.co/docs/filtering.html#creating_interactive_buttons

    Now we have to create the actual portfolio and add some items to it. For simplicity the example below only contains one item.

    <ul class="portfolio">
    	
  • Random Project #1

    Here goes your project's description.

  • </ul>

    1. Create an unordered list with a class of .portfolio. That is our portfolio container. By default it displays a four cloumns portfolio. Add a class of .columns2 or .columns2 to display a three or two columns portfolio.
    2. Each li element contains the data of a single project. Add the project's filter as a class to the li element.
      The project in our example above has two filters: filter1 and filter2. If someone select "Filter 3" this project will nicely fade out.
    3. Add your project thumbnail within the li element. That's it.
    4. Optional: Add the "Type of Project" label that resides at the bottom left corner of your project thumbnail (<span class="type">..</span>). Any text you want, doesn't have to be the filter(s) name.
    5. Optional: Add a layer with additional information about your project on top of the project thumbnail, which will appear on hover. Therefor create a .portfolio-item-content container which includes a .header and a .body

    As you can see our portfolio handles images with different heights really nicely. This is called a Masonry Layout, and enabled by default.

    Portfolio Columns

    You can create any number of columns within your portfolio, but as a best practice and a truly great viewing experience I recommend to stick to one to four columns. By default your portfolio is set to four columns.

    To display three columns add a class of .columns3 to your <ul class="portfolio"></ul>. For two columns add a class of .columns2 to your portfolio.

    <ul class="portfolio columns2"> /* Will Show a Two Columns Portfolio */
    	
  • Random Project #1

    Here goes your project's description.

  • </ul>

    Contact

    Files: contact.html / contact.php

    Olin has a custom, fully functional AJAX contact form (since v1.3), that validates and sends without a page refresh. All you need do to is to enter the recipient's email address to which all contact emails should be send to. Therefor open contactform.php and replace the default email address "[email protected]" with your own.

    $to = '[email protected]'; // Recipient's email address
    

    Google Maps

    Insert the Google Maps link with your own address into the src attribute of the iframe. Therefor go to https://maps.google.com/ type in your address, hit enter, click on the link button in the upper left corner. Copy the iframe link of the second input box into your text / code editor. Now copy and paste the link of the iframe src attribute into your template's iframe src attribute.

    To hide the Google Maps address popup add &iwloc=near at the very end of your Google Maps link.

    The contact section in your footer works exactly the same. Only difference is the anchor's class of .lightbox-iframe which will trigger the Magnific Lightbox Plugin to open Google Maps in a lightbox popup window.