A guide to Echo External design.

This is intended to be used by developers to see the proper way to code / ultilize the Echo-X CSS.

Sections

Colors

Use helper classes / color-shift classes to divid top level sections by color.

.bg-white .bg-default .bg-gray-light .bg-gray .bg-gray-dark .bg-texture-dark .bg-primary .bg-info .bg-success .bg-warning .bg-danger

.bg-white h4

#ffffff

.bg-white p

.bg-texture-light h4

#dee4e4 URL

.bg-texture-light p

.bg-texture-info h4

#0033a1 URL

.bg-texture-info p

.bg-texture-dark h4

#343c41 URL

.bg-texture-dark p

.bg-default h4

#ffffff

.bg-default p

.bg-gray-lighter h4

#f7f7f7

.bg-gray-lighter p

.bg-gray-light h4

#e7edf0

.bg-gray-light p

.bg-gray-mid-light h4

#a9adaf

.bg-gray-lightish p

.bg-gray h4

#768287

.bg-gray p

.bg-gray-mid-dark h4

#505c61

.bg-gray-darkish p

.bg-gray-dark h4

#2b363b

.bg-gray-dark p

.bg-gray-darker h4

#141b1f

.bg-gray-darker p

.bg-primary h4

#26c1fb

.bg-primary p

.bg-info h4

#0033a1

.bg-info p

.bg-success h4

#3daf2c

.bg-success p

.bg-warning h4

#ffae00

.bg-warning p

.bg-danger h4

#eb004b

.bg-danger p

.bg-violet h4

#8e44ad

.bg-violet p

#51cdfc

.bg-primary-light

#1e9ac9

.bg-primary-dark

#335cb4

.bg-info-light

#002981

.bg-info-dark

#6ee277

.bg-success-light

#264f47

.bg-success-dark

#ffc924

.bg-warning-light

#f18300

.bg-warning-dark

#ff3960

.bg-danger-light

#bc003c

.bg-danger-dark

#a569bd

.bg-violet-light

#72368a

.bg-violet-dark

Padding

Use .rsvp (Responsive Vertical Padding) to create proper spacing between large sections. use helper classes such as .vpadding-0 .vpadding-20 .vpadding-40 .vpadding-60 as needed.

.rsvp

.vpadding-20

.vpadding-60

.vpadding-100

Highlighting

Add the .highlight class to any section to make it highlight on hover.

Or add .highlight to a top level class to make multipule sections highlight at once.

Grid

Extra grid sizes have been added .col-md-15 and .col-md-25

.col-md-1

.col-md-1

.col-md-1

.col-md-1

.col-md-1

.col-md-1

.col-md-1

.col-md-1

.col-md-1

.col-md-1

.col-md-1

.col-md-1

.col-md-15

.col-md-15

.col-md-15

.col-md-15

.col-md-15

.col-md-15

.col-md-15

.col-md-2

.col-md-2

.col-md-2

.col-md-2

.col-md-2

.col-md-2

.col-md-25

.col-md-25

.col-md-25

.col-md-25

.col-md-25

.col-md-3

.col-md-3

.col-md-3

.col-md-3

.col-md-4

.col-md-4

.col-md-4

.col-md-6

.col-md-6

.col-md-8

.col-md-4

.col-md-10

.col-md-2

.col-md-12

a quick note about color

You can now use the "Change Color" dropdown in the navigation to display the elements below in different section color options.

CSS

Typography

h1 small

.h2 small

h3 small

.h4 small
h5 small
.h6 small
.lead
.serif
b (bold)
strong
small
.small
em
i (italic)
del
s (strikethrough)
ins
u (underline)
code
var
samp
mark
kbd

.text-left

.text-center

.text-right

.text-justify

.text-lowercase .text-uppercase .text-capitalize

abbr .initialism

address strong
address
first.last@example.com

blockquote p

footer cite

blockquote.blockquote-reverse p

Someone famous in Source Title

ul

  • li
  • List item
    • ul li
    • List item
  • List item

ol

  1. List item
  2. List item
    1. List item
    2. List item
  3. List item

ul.list-unstyled

  • List item
  • List item
    • List item
    • List item
  • List item

ul.list-inline

  • List item
  • List item
  • List item

dl

dt
dd
Term
Description
Description

dl.dl-horizontal

Term
Description
Long term will be truncated
Description
Description

Paragraphs

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer sed vulputate velit. Nulla eget elit a arcu cursus tincidunt. Integer consectetur, libero et malesuada eleifend, elit arcu dignissim odio, non mollis mauris orci sit amet nisi. Aliquam neque nisi, scelerisque vitae imperdiet eu, eleifend in turpis. Etiam ultricies tristique mi, quis feugiat purus viverra sit amet. Sed eget blandit nibh, rhoncus pellentesque ipsum. Mauris ut odio nisl.

In odio enim, pulvinar in consectetur ac, egestas eu leo. Suspendisse facilisis gravida magna vitae viverra. Ut felis nibh, facilisis at condimentum ut, congue et dolor. Mauris elementum, purus at consectetur viverra, orci metus ultricies leo, eget pharetra risus enim non neque. Phasellus urna nulla, cursus vitae accumsan id, imperdiet in mauris. Sed vitae nisi dui. Aenean euismod luctus porttitor. Maecenas magna odio, placerat nec posuere at, tempor non nisi.

Cras sed dictum magna, a mollis elit. Suspendisse a fringilla diam. Cras sollicitudin eros nibh, nec volutpat nunc vestibulum vel. Proin vitae suscipit nulla. Nullam facilisis dapibus odio, facilisis ullamcorper ipsum consectetur eu. Fusce sit amet suscipit orci, porttitor aliquam mauris. In hac habitasse platea dictumst.

Tables

table.table

thead tr th th Header Header
tbody tr td td Data Data
Data Data Data Data

.table-striped

Header Header
Data Data
Data Data

.table-bordered

Header Header
Data Data
Data Data

.table-hover

Header Header
Data Data
Data Data

.table-condensed

Header Header
Data Data
Data Data

div.table-responsive table.table

Header Header Header Header Header
td.active td.success td.info td.warning td.danger
tr.active td Applies the hover color to a particular row or cell
tr.success td Indicates a successful or positive action
tr.info td Indicates a neutral informative change or action
tr.warning td Indicates a warning that might need attention
tr.danger td Indicates a dangerous or potentially negative action

Forms

form

.help-block: Wrap labels and controls in .form-group for optimum spacing.

form.form-inline


form.form-horizontal



select.form-control[multiple]

p.form-control-static

Validation styles on form controls

Buttons

a

a.active a.disabled

Images

.img-rounded

.img-rounded

.img-circle

.img-circle

.img-thumbnail

.img-thumbnail

.img-responsive

.img-responsive

Helper classes

.text-muted .text-primary .text-success .text-info .text-warning .text-danger .text-violet

.text-gray-dark .text-primary-dark .text-success-dark .text-info-dark .text-warning-dark .text-danger-dark .text-violet-dark

.text-gray-light .text-primary-light .text-success-light .text-info-light .text-warning-light .text-danger-light .text-violet-light

.bg-primary .bg-success .bg-info .bg-warning .bg-danger .bg-violet

.border .border.border-primary .border.border-info .border.border-success .border.border-warning .border.border-danger

button.close →

.caret

.clearfix

.pull-left
.pull-right

.center-block: Set an element to display: block and center via margin.

.show and .hidden: Showing and hiding content.
.invisible: Toggle only the visibility of an element.

.sr-only: Hide an element to all devices except screen readers.

.text-hide: Replace an element's text content with a background image.

Components

Loading icon

div class="loading-icon-rotation" add .loading-icon-center to center it on the page.


Pings and Areas

Use .ping to indicate general location on a map. Use varients to change color .ping-default .ping-primary .ping-success .ping-info .ping-warning .ping-success. Optionally use .breath to make the center glow.

Ping sizes .ping-lg .ping-sm .ping-xs

Create Areas with .area and .area-default .area-primary .area-success .area-info .area-warning .area-success

Notches

New .notch class, use with .notch-bottom, .notch-primary, and etc.

.rsvp.notch.notch-bottom

.bg-primary.notch.notch-primary.notch-top

.vpadding-80.bg-success.notch.notch-success.notch-right

.vpadding-100.bg-gray-dark.notch.notch-gray-dark.notch-left

Chevrons

New ul.chevrons class, use with .chevron .chevron-active .chevron-complete and .chevron-disabled

  • .chevron
  • .chevron.chevron-active
  • .chevron.chevron-disabled
  • .chevron.chevron-disabled

Scroll Prompt

Use this set of classes to prompt users to scroll down longer pages. Note: it only comes in white.

Icons

Better icons that fit what we do. Created with IcoMoon.

.icon-echo-logo

.echo-mark

.echo-mark-striped

.echo-spiral

.icon-package1

.icon-package2

.icon-package3

.icon-package4

.icon-package5

.icon-package6

.icon-package7

.icon-package8

.icon-package9

.icon-package10

.icon-weight

.icon-find-barcode

.icon-unbrella

.icon-fragile

.icon-pallet

.icon-truck1

.icon-truck2

.icon-truck3

.icon-truck4

.icon-boat

.icon-plane

.icon-container-ship

.icon-headphone

.icon-headphone-guy

.icon-headphone-girl

.icon-hold-gesture1

.icon-hold-gesture2

.icon-tap-gesture1

.icon-tap-gesture2

.icon-pull-gesture

.icon-push-gesture

.icon-unfold-less

.icon-unfold-more

.icon-home

.icon-pencil

.icon-image

.icon-camera

.icon-music

.icon-play

.icon-folder-open

.icon-tag

.icon-cart

.icon-pin

.icon-pin2

.icon-map

.icon-map2

.icon-clock

.icon-clock2

.icon-calendar

.icon-spinner

.icon-search

.icon-zoomin

.icon-zoomout

.icon-lock

.icon-unlocked

.icon-cog

.icon-wand

.icon-trophy

.icon-road

.icon-lightning

.icon-switch

.icon-list

.icon-list2

.icon-numbered-list

.icon-menu

.icon-tree

.icon-cloud

.icon-cloud-download

.icon-cloud-upload

.icon-earth

.icon-link

.icon-attachment

.icon-bookmark

.icon-contrast

.icon-star

.icon-heart

.icon-thumbs-up

.icon-thumbs-down

.icon-info

.icon-close

.icon-checkmark

.icon-minus

.icon-plus

.icon-play2

.icon-pause

.icon-stop

.icon-backward

.icon-forward

.icon-first

.icon-last

.icon-previous

.icon-next

.icon-volume-high

.icon-volume-mute

.icon-loop

.icon-crop

.icon-scissors

.icon-bold

.icon-underline

.icon-italic

.icon-pilcrow

.icon-paragraph-left

.icon-paragraph-center

.icon-paragraph-right

.icon-paragraph-justify

.icon-indent-increase

.icon-indent-decrease

.icon-newtab

.icon-embed

.icon-code

.icon-clipboard-check

.icon-24hour

.icon-chronometer

.icon-compass

.icon-international-pin

.icon-send

.icon-clipboard

.icon-arrow-prev

.icon-arrow-next

.icon-more-horiz

.icon-more-vert

.icon-file

.icon-profile

.icon-file2

.icon-file3

.icon-file4

.icon-copy

.icon-copy2

.icon-libreoffice

.icon-file-pdf

.icon-file-openoffice

.icon-file-word

.icon-file-excel

.icon-file-zip

.icon-file-powerpoint

.icon-file-xml

.icon-file-css

.icon-calculate

.icon-share

.icon-googleplus

.icon-facebook

.icon-twitter

.icon-feed

.icon-vimeo

.icon-github

.icon-linkedin

.icon-pinterest

.icon-paypal

.icon-apple

.icon-android

.icon-windows8

.icon-chrome

.icon-firefox

.icon-IE

.icon-opera

.icon-safari

.icon-laptop

.icon-mouse

.icon-phone-android

.icon-phone-iphone

.icon-tablet-android

.icon-tablet-mac

.icon-desktop

.icon-watch

Button groups

.btn-group


.btn-toolbar .btn-group


 

.btn-group.btn-group-justified

#1 #2 #3

.btn-group.dropup

Input groups

.input-group

.input-group-addon

.input-group-lg

Addon Addon

.input-group-sm

Addon Addon

Labels & Badges

.label.label-default .label.label-primary .label.label-success .label.label-info .label.label-warning .label.label-danger

.badge.badge-white .badge.badge-primary .badge.badge-success .badge.badge-info .badge.badge-warning .badge.badge-danger

Jumbotron

.jumbotron

Heading

Paragraph

Button

Thumbnails with Captions

.thumbnail

thumbnail

.caption h3

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer sed vulputate velit. Nulla eget elit a arcu cursus tincidunt.

Button

.thumbnail.thumbnail-rotate

thumbnail

Caption

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer sed vulputate velit. Nulla eget elit a arcu cursus tincidunt.

Button

.thumbnail.thumbnail-zoom-in

thumbnail

Caption

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer sed vulputate velit. Nulla eget elit a arcu cursus tincidunt.

Button

.thumbnail.thumbnail-bullseye

Caption

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer sed vulputate velit. Nulla eget elit a arcu cursus tincidunt.

Button

thumbnail

Alerts

.alert.alert-dismissible
.alert.alert-default a.alert-link
.alert.alert-primary a.alert-link
.alert.alert-success a.alert-link
.alert.alert-info a.alert-link
.alert.alert-warning a.alert-link
.alert.alert-danger a.alert-link

Progress bars

Styles for pace.js are also included already

.progress

.progress-bar
.progress-bar
.progress-bar
.progress-bar
.progress-bar

With bootstrap label

60%

.progress .progress-bar.progress-bar-striped

25% Complete (success)
25% Complete
25% Complete (warning)
25% Complete (danger)

.progress.active .progress-bar.progress-bar-striped

With .progress-bar-label

.progress-bar-label60%

With .progress-lg

50%

With .progress-sm

With .progress-xs

Media object

.media
.media-object

.media-body h4.media-heading

← a.pull-left img.media-object

.media
.media-object

.media-body h4.media-heading

← a.pull-left.media-middle img.media-object
.media-object

.media .media-body h4.media-heading

← a.pull-left img.media-object

ul.media-list
  • .media-object

    li.media .media-body h4.media-heading

    ← a.pull-left.media-bottom img.media-object
    .media-object

    .media .media-body h4.media-heading

    ← a.pull-left img.media-object
  • li.media .media-body h4.media-heading

    a.media-right img.media-object →
    .media-object

Panels

.panel.panel-default

.panel-heading
.panel-body

.panel.panel-primary

.panel-heading
.panel-body

.panel.panel-success

.panel-heading
.panel-body

.panel.panel-info

.panel-heading
.panel-body

.panel.panel-warning (with table)

.panel-heading
Header Header Header
Data Data Data
Data Data Data

.panel.panel-danger (with list group)

.panel-heading
  • List item
  • List item
  • List item

Wells

.well.well-lg
.well
.well.well-sm

Clockface

.clockface

FRI 08/07/15
16:30
CT
.clock-face-date
.clock-face-time
.clock-face-zone

Javascript

Incremental Slider

jquery.ui slider with exstention for incremental labels

$(function() { $('#mySlider').labeledslider({ min: 0, max: 100, step: 20, tickArray: [0, 20, 40, 60, 80, 100], tickLabels: { 0:'7d', 20:'15d', 40:'30d', 60:'60d', 80:'90d', 100:'365d' } }); });

Sortable Drag & Drop List

jQuery.ui sortable list

  • Content #1

  • Content #2

  • Content #3

function swapUp(eventObject){ var curr = $(eventObject).closest('.ui-sortable-handle').attr('id'); var prev = $("#"+curr).prev().attr('id'); // swap $("#"+prev).insertAfter("#"+curr); } function swapDown(eventObject){ var curr = $(eventObject).closest('.ui-sortable-handle').attr('id'); var next = $("#"+curr).next().attr('id'); // Swap $("#"+next).insertBefore("#"+curr); } $(function() { $( "#sortable" ).sortable({ placeholder: "ui-sortable-dropzone", forcePlaceholderSize: true }); $('.swap-down').click(function (e) { e.preventDefault(); swapDown(this); }); $('.swap-up').click(function (e) { e.preventDefault(); swapUp(this); }); });

Modals

Via data attributes: data-toggle="modal" data-target="#modal" Launch modal

Via Javascript: $('#modal').modal() Launch modal

.modal .modal-dialog .modal-content

Options: backdrop: true|false|'static' keyboard: true|false show: true|false remote: false|path

Methods: .modal('toggle') .modal('show') .modal('hide')

Events: show.bs.modal shown.bs.modal hide.bs.modal hidden.bs.modal loaded.bs.modal

Dropdowns

Via data attributes: data-toggle="dropdown"


Via Javascript: $('.dropdown-toggle').dropdown()(data-toggle="dropdown" still required)

Methods: .dropdown('toggle')

Events: show.bs.dropdown shown.bs.dropdown hide.bs.dropdown hidden.bs.dropdown

Tabs

Via data attributes: data-toggle="tab"

Content #1: .table-content .tab-pane.active

Content #2: .table-content .tab-pane

Via Javascript: $(this).tab('show')

Content #1: .table-content .tab-pane.fade.in.active

Content #2: .table-content .tab-pane.fade

Events: show.bs.tab shown.bs.tab

Tooltips

Usage: $('[data-toggle="tooltip"]').tooltip()

You must initialize them yourself

Options: animation: true|false html: false|true selector: false|string
title: ''|function container: false|string
placement: top|location|auto|function
trigger: hover focus|click|manual
delay: 0|{show:500, hide:100}

Methods: .tooltip('show') .tooltip('hide') .tooltip('toggle') .tooltip('destroy')

Events: show.bs.tooltip shown.bs.tooltip hide.bs.tooltip hidden.bs.tooltip

Popovers

Usage: $('[data-toggle="popover"]').popover()

Popover

You must initialize them yourself


Options: animation: true|false html: false|true selector: false|string
title: ''|function content: ''|function container: false|string
placement: right|location|auto|function
trigger: click|hover|focus|manual
delay: 0|{show:500, hide:100}

Methods: .popover('show') .popover('hide') .popover('toggle') .popover('destroy')

Events: show.bs.popover shown.bs.popover hide.bs.popover hidden.bs.popover

Alerts

Via data attributes (close button): data-dismiss="alert"

.alert.alert-danger.fade.in

Via Javascript: $('.alert').alert()

Methods: .alert('close')

Events: close.bs.alert closed.bs.alert

Buttons

Stateful button: data-loading-text="Loading..." data-complete-text="Completed"


Single toggle:

Checkbox: data-toggle="buttons"

Radio: data-toggle="buttons"

Methods: .button('toggle') .button('loading') .button('reset') .button(string)

Collapse

Via data attributes: data-toggle="collapse"

Via Javascript: $(".collapse").collapse()

Options: parent: false|selector toggle: true|false

Methods: .collapse('toggle') .collapse('show') .collapse('hide')

Events: show.bs.collapse shown.bs.collapse hide.bs.collapse hidden.bs.collapse

Created by Gerren Rabideau, age 33.