underoos 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +8 -0
- data/.rvmrc +1 -0
- data/Gemfile +5 -0
- data/Gemfile.lock +143 -0
- data/LICENSE +26 -0
- data/Procfile +1 -0
- data/README.md +13 -0
- data/Rakefile +12 -0
- data/app/assets/javascripts/styleguide.js +132 -0
- data/app/assets/javascripts/underoos.js +18 -0
- data/app/assets/stylesheets/base/_button-btn-mixin.sass +72 -0
- data/app/assets/stylesheets/base/_elements.sass +61 -0
- data/app/assets/stylesheets/base/_forms.sass +362 -0
- data/app/assets/stylesheets/base/_helpers.sass +54 -0
- data/app/assets/stylesheets/base/_normalize.sass +114 -0
- data/app/assets/stylesheets/base/_scaffold.sass +51 -0
- data/app/assets/stylesheets/base/_tables.sass +99 -0
- data/app/assets/stylesheets/base/_transitions.sass +17 -0
- data/app/assets/stylesheets/base/_typography.sass +185 -0
- data/app/assets/stylesheets/components/_accordions.sass +17 -0
- data/app/assets/stylesheets/components/_breadcrumbs.sass +22 -0
- data/app/assets/stylesheets/components/_button-groups.sass +46 -0
- data/app/assets/stylesheets/components/_carets.sass +24 -0
- data/app/assets/stylesheets/components/_carousels.sass +18 -0
- data/app/assets/stylesheets/components/_close.sass +25 -0
- data/app/assets/stylesheets/components/_decals.sass +27 -0
- data/app/assets/stylesheets/components/_dropdowns.sass +85 -0
- data/app/assets/stylesheets/components/_media.sass +33 -0
- data/app/assets/stylesheets/components/_modals.sass +28 -0
- data/app/assets/stylesheets/components/_nav-lists.sass +22 -0
- data/app/assets/stylesheets/components/_navbars.sass +105 -0
- data/app/assets/stylesheets/components/_notifications.sass +108 -0
- data/app/assets/stylesheets/components/_paddles.sass +34 -0
- data/app/assets/stylesheets/components/_pagination.sass +41 -0
- data/app/assets/stylesheets/components/_pills.sass +64 -0
- data/app/assets/stylesheets/components/_popovers.sass +55 -0
- data/app/assets/stylesheets/components/_progress-bars.sass +29 -0
- data/app/assets/stylesheets/components/_tabs.sass +93 -0
- data/app/assets/stylesheets/components/_tooltips.sass +46 -0
- data/app/assets/stylesheets/components/_wells.sass +16 -0
- data/app/assets/stylesheets/layouts/_containers.sass +15 -0
- data/app/assets/stylesheets/layouts/_print.sass +48 -0
- data/app/assets/stylesheets/layouts/_queries.sass +121 -0
- data/app/assets/stylesheets/layouts/_upgrades.sass +64 -0
- data/app/assets/stylesheets/mixins/_arrows.sass +40 -0
- data/app/assets/stylesheets/mixins/_clearfixins.sass +15 -0
- data/app/assets/stylesheets/mixins/_coloring.sass +6 -0
- data/app/assets/stylesheets/mixins/_columns.sass +19 -0
- data/app/assets/stylesheets/mixins/_conversions.sass +25 -0
- data/app/assets/stylesheets/mixins/_font-size.sass +6 -0
- data/app/assets/stylesheets/mixins/_image-tools.sass +13 -0
- data/app/assets/stylesheets/mixins/_ir.sass +9 -0
- data/app/assets/stylesheets/mixins/_mixins.sass +14 -0
- data/app/assets/stylesheets/mixins/_tab-focus.sass +7 -0
- data/app/assets/stylesheets/mixins/_timing-equations.sass +29 -0
- data/app/assets/stylesheets/mixins/_visibility.sass +43 -0
- data/app/assets/stylesheets/polyfills/_box-shadow.sass +7 -0
- data/app/assets/stylesheets/polyfills/_box-sizing.sass +8 -0
- data/app/assets/stylesheets/polyfills/_functions.sass +22 -0
- data/app/assets/stylesheets/polyfills/_inline-block.sass +8 -0
- data/app/assets/stylesheets/polyfills/_opacity.sass +6 -0
- data/app/assets/stylesheets/polyfills/_polyfills.sass +10 -0
- data/app/assets/stylesheets/polyfills/_transition.sass +9 -0
- data/app/assets/stylesheets/polyfills/_user-select.sass +8 -0
- data/app/assets/stylesheets/styleguide.sass +199 -0
- data/app/assets/stylesheets/themes/_default.sass +119 -0
- data/app/assets/stylesheets/underoos.sass +52 -0
- data/app/controllers/underoos/styleguides_controller.rb +79 -0
- data/app/views/shared/_upgrades.html.haml +12 -0
- data/app/views/underoos/styleguides/_assets.haml +42 -0
- data/app/views/underoos/styleguides/_components.haml +42 -0
- data/app/views/underoos/styleguides/_elements.haml +242 -0
- data/app/views/underoos/styleguides/_forms.haml +305 -0
- data/app/views/underoos/styleguides/_layouts.haml +76 -0
- data/app/views/underoos/styleguides/_palettes.haml +18 -0
- data/app/views/underoos/styleguides/_resources.haml +27 -0
- data/app/views/underoos/styleguides/_tables.haml +124 -0
- data/app/views/underoos/styleguides/_typography.haml +284 -0
- data/app/views/underoos/styleguides/_utilities.haml +270 -0
- data/app/views/underoos/styleguides/components/_accordions.haml +83 -0
- data/app/views/underoos/styleguides/components/_breadcrumbs.haml +42 -0
- data/app/views/underoos/styleguides/components/_button-groups.haml +162 -0
- data/app/views/underoos/styleguides/components/_carets.haml +28 -0
- data/app/views/underoos/styleguides/components/_close.haml +20 -0
- data/app/views/underoos/styleguides/components/_decals.haml +40 -0
- data/app/views/underoos/styleguides/components/_dropdowns.haml +189 -0
- data/app/views/underoos/styleguides/components/_media.haml +78 -0
- data/app/views/underoos/styleguides/components/_modals.haml +42 -0
- data/app/views/underoos/styleguides/components/_nav-lists.haml +52 -0
- data/app/views/underoos/styleguides/components/_navbars.haml +144 -0
- data/app/views/underoos/styleguides/components/_navs-showcase.haml +27 -0
- data/app/views/underoos/styleguides/components/_notifications.haml +169 -0
- data/app/views/underoos/styleguides/components/_paddles.haml +68 -0
- data/app/views/underoos/styleguides/components/_pagination.haml +64 -0
- data/app/views/underoos/styleguides/components/_popovers.haml +33 -0
- data/app/views/underoos/styleguides/components/_progress-bars.haml +72 -0
- data/app/views/underoos/styleguides/components/_tabs-pills.haml +241 -0
- data/app/views/underoos/styleguides/components/_tooltips.haml +37 -0
- data/app/views/underoos/styleguides/components/_wells.haml +29 -0
- data/app/views/underoos/styleguides/index.html.haml +259 -0
- data/app/views/underoos/styleguides/partials/_form-template.haml +171 -0
- data/app/views/underoos/styleguides/partials/_table-data.haml +33 -0
- data/app/views/underoos/styleguides/partials/_transitions.haml +136 -0
- data/config.ru +38 -0
- data/config/routes.rb +3 -0
- data/features/generator.feature +78 -0
- data/features/step_definitions/underoos_steps.rb +3 -0
- data/features/support/env.rb +9 -0
- data/lib/generators/underoos/assets_generator.rb +33 -0
- data/lib/underoos.rb +5 -0
- data/lib/underoos/engine.rb +8 -0
- data/lib/underoos/version.rb +3 -0
- data/public/apple-touch-icon-114x114-precomposed.png +0 -0
- data/public/apple-touch-icon-57x57-precomposed.png +0 -0
- data/public/apple-touch-icon-72x72-precomposed.png +0 -0
- data/public/apple-touch-icon-precomposed.png +0 -0
- data/public/apple-touch-icon.png +0 -0
- data/public/favicon.ico +0 -0
- data/script/javascripts +15 -0
- data/underoos.gemspec +29 -0
- data/vendor/assets/javascripts/bootstrap-alert.js +94 -0
- data/vendor/assets/javascripts/bootstrap-button.js +100 -0
- data/vendor/assets/javascripts/bootstrap-collapse.js +138 -0
- data/vendor/assets/javascripts/bootstrap-dropdown.js +92 -0
- data/vendor/assets/javascripts/bootstrap-modal.js +210 -0
- data/vendor/assets/javascripts/bootstrap-popover.js +95 -0
- data/vendor/assets/javascripts/bootstrap-scrollspy.js +125 -0
- data/vendor/assets/javascripts/bootstrap-tab.js +130 -0
- data/vendor/assets/javascripts/bootstrap-tooltip.js +270 -0
- data/vendor/assets/javascripts/bootstrap-transition.js +51 -0
- data/vendor/assets/javascripts/bootstrap-typeahead.js +271 -0
- data/vendor/assets/javascripts/prettify.js +28 -0
- metadata +246 -0
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
|
|
2
|
+
// pick a library
|
|
3
|
+
// @import compass
|
|
4
|
+
// @import bourbon
|
|
5
|
+
@import polyfills/polyfills
|
|
6
|
+
|
|
7
|
+
// import all underoos mixins
|
|
8
|
+
@import mixins/mixins
|
|
9
|
+
|
|
10
|
+
// configuration theme
|
|
11
|
+
@import themes/default
|
|
12
|
+
|
|
13
|
+
// base elements
|
|
14
|
+
@import base/normalize
|
|
15
|
+
@import base/scaffold
|
|
16
|
+
@import base/helpers
|
|
17
|
+
@import base/transitions
|
|
18
|
+
@import base/button-btn-mixin
|
|
19
|
+
@import base/typography
|
|
20
|
+
@import base/elements
|
|
21
|
+
@import base/tables
|
|
22
|
+
@import base/forms
|
|
23
|
+
|
|
24
|
+
// components
|
|
25
|
+
@import components/carets
|
|
26
|
+
@import components/close
|
|
27
|
+
@import components/decals
|
|
28
|
+
@import components/wells
|
|
29
|
+
@import components/dropdowns
|
|
30
|
+
@import components/tabs
|
|
31
|
+
@import components/pills
|
|
32
|
+
@import components/nav-lists
|
|
33
|
+
@import components/breadcrumbs
|
|
34
|
+
@import components/pagination
|
|
35
|
+
@import components/accordions
|
|
36
|
+
@import components/paddles
|
|
37
|
+
@import components/button-groups
|
|
38
|
+
@import components/navbars
|
|
39
|
+
@import components/tooltips
|
|
40
|
+
@import components/popovers
|
|
41
|
+
@import components/progress-bars
|
|
42
|
+
@import components/notifications
|
|
43
|
+
@import components/modals
|
|
44
|
+
@import components/carousels
|
|
45
|
+
@import components/media
|
|
46
|
+
|
|
47
|
+
// layouts
|
|
48
|
+
@import layouts/containers
|
|
49
|
+
@import layouts/upgrades
|
|
50
|
+
@import layouts/queries
|
|
51
|
+
@import layouts/print
|
|
52
|
+
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
|
|
2
|
+
module Underoos
|
|
3
|
+
class StyleguidesController < ActionController::Base
|
|
4
|
+
def index
|
|
5
|
+
@lorem = 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.'
|
|
6
|
+
@lorem_sm = 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation.'
|
|
7
|
+
@lorem_tiny = 'Lorem ipsum dolor sit amet.'
|
|
8
|
+
@images = Dir['public/images/**/*.{png,jpeg,jpg,gif}'].map {|f| f.sub('public','')}
|
|
9
|
+
|
|
10
|
+
# Palettes
|
|
11
|
+
@greys = [
|
|
12
|
+
{prop:'$black', hex:'#000'},
|
|
13
|
+
{prop:'$grey1', hex:'#111'},
|
|
14
|
+
{prop:'$grey2', hex:'#222'},
|
|
15
|
+
{prop:'$grey3', hex:'#333'},
|
|
16
|
+
{prop:'$grey4', hex:'#444'},
|
|
17
|
+
{prop:'$grey5', hex:'#555'},
|
|
18
|
+
{prop:'$grey6', hex:'#666'},
|
|
19
|
+
{prop:'$grey7', hex:'#777'},
|
|
20
|
+
{prop:'$grey8', hex:'#888'},
|
|
21
|
+
{prop:'$grey9', hex:'#999'},
|
|
22
|
+
{prop:'$greyA', hex:'#aaa'},
|
|
23
|
+
{prop:'$greyB', hex:'#bbb'},
|
|
24
|
+
{prop:'$greyC', hex:'#ccc'},
|
|
25
|
+
{prop:'$greyD', hex:'#ddd'},
|
|
26
|
+
{prop:'$greyE', hex:'#eee'},
|
|
27
|
+
{prop:'$white', hex:'#fff'},
|
|
28
|
+
{prop:'$off_grey', hex:'#eaeaea'},
|
|
29
|
+
{prop:'$off_white', hex:'#fafafa'}
|
|
30
|
+
]
|
|
31
|
+
@rainbow = [
|
|
32
|
+
{prop:'$magenta', hex:'#ff00ff'},
|
|
33
|
+
{prop:'$cyan', hex:'#00ffff'},
|
|
34
|
+
{prop:'$red', hex:'#b22222'},
|
|
35
|
+
{prop:'$orange', hex:'#f26522'},
|
|
36
|
+
{prop:'$yellow', hex:'#ffc40d'},
|
|
37
|
+
{prop:'$green', hex:'#46a546'},
|
|
38
|
+
{prop:'$blue', hex:'#268bd2'},
|
|
39
|
+
{prop:'$indigo', hex:'#4b0082'},
|
|
40
|
+
{prop:'$violet', hex:'#ee82ee'}
|
|
41
|
+
]
|
|
42
|
+
@status = [
|
|
43
|
+
{prop:'$standard', hex:'#f5f5f5'},
|
|
44
|
+
{prop:'$info', hex:'#999'},
|
|
45
|
+
{prop:'$important',hex:'#268bd2'},
|
|
46
|
+
{prop:'$success', hex:'#46a546'},
|
|
47
|
+
{prop:'$warning', hex:'#ffc40d'},
|
|
48
|
+
{prop:'$error', hex:'#b22222'},
|
|
49
|
+
{prop:'$danger', hex:'#b22222'}
|
|
50
|
+
]
|
|
51
|
+
@misc_colors = [
|
|
52
|
+
{prop:'$primary', hex:'#268bd2'},
|
|
53
|
+
{prop:'$disabled_color', hex:'#bbb'},
|
|
54
|
+
{prop:'$disabled_bg', hex:'#eee'},
|
|
55
|
+
{prop:'$disabled_border', hex:'#ddd'},
|
|
56
|
+
{prop:'$focus_color', hex:'#52a8ec'},
|
|
57
|
+
{prop:'$focus_border', hex:'rgba(82,168,236,0.8)'}
|
|
58
|
+
]
|
|
59
|
+
@components = [
|
|
60
|
+
{prop:'$component_normal', hex:'#666'},
|
|
61
|
+
{prop:'$component_active', hex:'#fff'},
|
|
62
|
+
{prop:'$component_bg', hex:'transparent'},
|
|
63
|
+
{prop:'$component_bg_active', hex:'#268bd2'},
|
|
64
|
+
{prop:'$component_bg_hover', hex:'#eee'},
|
|
65
|
+
{prop:'$component_border', hex:'#ccc'},
|
|
66
|
+
{prop:'$component_border_alt', hex:'#b3b3b3'}
|
|
67
|
+
]
|
|
68
|
+
# Stick all palette options into an array of objects for easier documentation
|
|
69
|
+
@palettes = [
|
|
70
|
+
{title:'Greyscale', colors: @greys },
|
|
71
|
+
{title:'mc roy g biv', colors: @rainbow },
|
|
72
|
+
{title:'Status', colors: @status },
|
|
73
|
+
{title:'Miscellaneous', colors: @misc_colors },
|
|
74
|
+
{title:'Components', colors: @components }
|
|
75
|
+
]
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
end
|
|
79
|
+
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
|
|
2
|
+
#upgrade_notifications
|
|
3
|
+
.upgrade-icon
|
|
4
|
+
%span !
|
|
5
|
+
.upgrade-notification
|
|
6
|
+
#lt_ie8.upgrade-container
|
|
7
|
+
%p Please upgrade to the <a href="http://windows.microsoft.com/en-US/internet-explorer/downloads/ie-9/worldwide-languages">latest version of Internet Explorer</a> or use one of the following browsers:
|
|
8
|
+
%br
|
|
9
|
+
%p <a href="http://www.google.com/chrome/">Google Chrome</a>, <a href="http://www.apple.com/safari/download/">Apple Safari</a>, or <a href="http://www.mozilla.org/en-US/firefox/new/">Mozilla Firefox</a>
|
|
10
|
+
#no_js.upgrade-container
|
|
11
|
+
%p For full functionality of this site it is necessary to enable <a href="http://www.enable-javascript.com/" target="_blank">JavaScript</a>.
|
|
12
|
+
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
|
|
2
|
+
#assets_icons.sg-spy-landing
|
|
3
|
+
.sg-subsection
|
|
4
|
+
%h3.sg-subheading Favicon & Touch icons
|
|
5
|
+
.sg-half.pull
|
|
6
|
+
%p Include these icons in the root directory of your project and there is no need for extra markup in the <code><head></code> of your html file.
|
|
7
|
+
%br
|
|
8
|
+
%ol
|
|
9
|
+
%li <samp>favicon.ico</samp> <code>[16x16]</code>
|
|
10
|
+
%li <samp>apple-touch-icon.png</samp> <code>[57x57]</code>
|
|
11
|
+
%li <samp>apple-touch-icon-precomposed.png</samp> <code>[57x57]</code>
|
|
12
|
+
%li <samp>apple-touch-icon-57x57-precomposed.png</samp>
|
|
13
|
+
%li <samp>apple-touch-icon-72x72-precomposed.png</samp>
|
|
14
|
+
%li <samp>apple-touch-icon-114x114-precomposed.png</samp>
|
|
15
|
+
%br
|
|
16
|
+
%p
|
|
17
|
+
%small
|
|
18
|
+
You can optionally include a <code>320x460</code> <code>startup.png</code> in your root directory as well. See the <a href="http://miniapps.co.uk/blog/post/ios-startup-images-using-css-media-queries/">post</a> by Alex Gibson for more information.
|
|
19
|
+
.sg-half.push
|
|
20
|
+
.well
|
|
21
|
+
%img(src='/favicon.ico' alt='favicon')
|
|
22
|
+
%img(src='/apple-touch-icon.png' alt='apple touch icon')
|
|
23
|
+
%img(src='/apple-touch-icon-precomposed.png' alt='apple touch icon')
|
|
24
|
+
%img(src='/apple-touch-icon-57x57-precomposed.png' alt='apple touch icon')
|
|
25
|
+
%img(src='/apple-touch-icon-72x72-precomposed.png' alt='apple touch icon')
|
|
26
|
+
%img(src='/apple-touch-icon-114x114-precomposed.png' alt='apple touch icon')
|
|
27
|
+
.notification.important.fade.in
|
|
28
|
+
%p <strong>Note!</strong> For more information on using icons, see <a href="http://mathiasbynens.be/notes/touch-icons">Mathias Bynens post</a>
|
|
29
|
+
|
|
30
|
+
#assets_gui.sg-spy-landing
|
|
31
|
+
.sg-subsection
|
|
32
|
+
%h3.sg-subheading UI elements
|
|
33
|
+
%p Sprites, icons, graphics, and other image assets used within the application.
|
|
34
|
+
.sg-subsection
|
|
35
|
+
.well
|
|
36
|
+
- @images.each do |image|
|
|
37
|
+
- base = "#{File.basename(image)}"
|
|
38
|
+
%p.sg-note(style="margin: 1.5em 0 1em 0;") #{image}
|
|
39
|
+
%img(src="#{image}" alt="#{base}")
|
|
40
|
+
.notification.important.fade.in
|
|
41
|
+
%p <strong>Note!</strong> Images are auto populated from <code>public/images/*</code>
|
|
42
|
+
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
|
|
2
|
+
#components_buttongroups.sg-spy-landing
|
|
3
|
+
= render :partial => 'underoos/styleguides/components/button-groups'
|
|
4
|
+
#components_dropdowns.sg-spy-landing
|
|
5
|
+
= render :partial => 'underoos/styleguides/components/dropdowns'
|
|
6
|
+
#components_tabs_pills.sg-spy-landing
|
|
7
|
+
= render :partial => 'underoos/styleguides/components/tabs-pills'
|
|
8
|
+
#components_nav_lists.sg-spy-landing
|
|
9
|
+
= render :partial => 'underoos/styleguides/components/nav-lists'
|
|
10
|
+
#components_breadcrumbs.sg-spy-landing
|
|
11
|
+
= render :partial => 'underoos/styleguides/components/breadcrumbs'
|
|
12
|
+
#components_pagination.sg-spy-landing
|
|
13
|
+
= render :partial => 'underoos/styleguides/components/pagination'
|
|
14
|
+
#components_navs_showcase.sg-spy-landing
|
|
15
|
+
= render :partial => 'underoos/styleguides/components/navs-showcase'
|
|
16
|
+
#components_accordions.sg-spy-landing
|
|
17
|
+
= render :partial => 'underoos/styleguides/components/accordions'
|
|
18
|
+
#components_navbars.sg-spy-landing
|
|
19
|
+
= render :partial => 'underoos/styleguides/components/navbars'
|
|
20
|
+
#components_paddles.sg-spy-landing
|
|
21
|
+
= render :partial => 'underoos/styleguides/components/paddles'
|
|
22
|
+
#components_modals.sg-spy-landing
|
|
23
|
+
= render :partial => 'underoos/styleguides/components/modals'
|
|
24
|
+
#components_notifications.sg-spy-landing
|
|
25
|
+
= render :partial => 'underoos/styleguides/components/notifications'
|
|
26
|
+
#components_decals.sg-spy-landing
|
|
27
|
+
= render :partial => 'underoos/styleguides/components/decals'
|
|
28
|
+
#components_tooltips.sg-spy-landing
|
|
29
|
+
= render :partial => 'underoos/styleguides/components/tooltips'
|
|
30
|
+
#components_popovers.sg-spy-landing
|
|
31
|
+
= render :partial => 'underoos/styleguides/components/popovers'
|
|
32
|
+
#components_progress_bars.sg-spy-landing
|
|
33
|
+
= render :partial => 'underoos/styleguides/components/progress-bars'
|
|
34
|
+
#components_carets.sg-spy-landing
|
|
35
|
+
= render :partial => 'underoos/styleguides/components/carets'
|
|
36
|
+
#components_close.sg-spy-landing
|
|
37
|
+
= render :partial => 'underoos/styleguides/components/close'
|
|
38
|
+
#components_wells.sg-spy-landing
|
|
39
|
+
= render :partial => 'underoos/styleguides/components/wells'
|
|
40
|
+
#components_media.sg-spy-landing
|
|
41
|
+
= render :partial => 'underoos/styleguides/components/media'
|
|
42
|
+
|
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
|
|
2
|
+
#elements_basenav.sg-spy-landing
|
|
3
|
+
.sg-subsection
|
|
4
|
+
%h3.sg-subheading Base nav <span>elements.sass</span>
|
|
5
|
+
.sg-half.pull
|
|
6
|
+
%p The base nav is generally the first class in the list for components like tabs, pills, breadcrumbs, pagination and navigation lists. Use this class as a building block for custom navigation systems.
|
|
7
|
+
%pre.prettyprint.html
|
|
8
|
+
= preserve do
|
|
9
|
+
:escaped
|
|
10
|
+
<nav>
|
|
11
|
+
<ol class="nav">
|
|
12
|
+
<li><a href="#">Nav 1</a></li>
|
|
13
|
+
<li><a href="#">Nav 2</a></li>
|
|
14
|
+
<li class="active"><a href="#">Active</a></li>
|
|
15
|
+
<li><a href="#">Nav 4</a></li>
|
|
16
|
+
</ul>
|
|
17
|
+
</nav>
|
|
18
|
+
%pre.prettyprint.haml.hidden
|
|
19
|
+
= preserve do
|
|
20
|
+
:escaped
|
|
21
|
+
%nav
|
|
22
|
+
%ol.nav
|
|
23
|
+
%li
|
|
24
|
+
%a(href="#") Nav 1
|
|
25
|
+
%li
|
|
26
|
+
%a(href="#") Nav 2
|
|
27
|
+
%li.active
|
|
28
|
+
%a(href="#") Active
|
|
29
|
+
%li
|
|
30
|
+
%a(href="#") Nav 4
|
|
31
|
+
.sg-half.push
|
|
32
|
+
.well
|
|
33
|
+
%nav
|
|
34
|
+
%ol.nav
|
|
35
|
+
%li
|
|
36
|
+
%a(href="#") Nav 1
|
|
37
|
+
%li
|
|
38
|
+
%a(href="#") Nav 2
|
|
39
|
+
%li.active
|
|
40
|
+
%a(href="#") Active
|
|
41
|
+
%li
|
|
42
|
+
%a(href="#") Nav 4
|
|
43
|
+
.well
|
|
44
|
+
%nav
|
|
45
|
+
%ol.nav.inline
|
|
46
|
+
%li
|
|
47
|
+
%a(href="#") Nav 1
|
|
48
|
+
%li
|
|
49
|
+
%a(href="#") Nav 2
|
|
50
|
+
%li.active
|
|
51
|
+
%a(href="#") Active
|
|
52
|
+
%li
|
|
53
|
+
%a(href="#") Nav 4
|
|
54
|
+
.sg-subsection
|
|
55
|
+
.sg-half.pull
|
|
56
|
+
.notification.warning.fade.in
|
|
57
|
+
%p <strong>Warning!</strong> All navigation components depend on this class being attached to the container element
|
|
58
|
+
.sg-half.push
|
|
59
|
+
.notification.important.fade.in
|
|
60
|
+
%p <strong>Note!</strong> For convenience, add the <code>inline</code> class to the <code>.nav</code> element to display the base nav as, well inline
|
|
61
|
+
|
|
62
|
+
#elements_buttons.sg-spy-landing
|
|
63
|
+
.sg-subsection
|
|
64
|
+
%h3.sg-subheading Buttons <span>elements.sass, button-btn-mixin.sass</span>
|
|
65
|
+
%table.box.banded.thead-decorate
|
|
66
|
+
%thead
|
|
67
|
+
%tr
|
|
68
|
+
%th Button
|
|
69
|
+
%th Class
|
|
70
|
+
%th Description
|
|
71
|
+
%tbody
|
|
72
|
+
%tr
|
|
73
|
+
%td <button class="btn">Default</button>
|
|
74
|
+
%td <code>.btn</code>
|
|
75
|
+
%td The default button is typically used in forms
|
|
76
|
+
%tr
|
|
77
|
+
%td <button class="btn info">Info</button>
|
|
78
|
+
%td <code>.btn.info</code>
|
|
79
|
+
%td The info button is an alternate to the default button
|
|
80
|
+
%tr
|
|
81
|
+
%td <button class="btn important">Important</button>
|
|
82
|
+
%td <code>.btn.important</code>
|
|
83
|
+
%td The important button is used to showcase a primary action
|
|
84
|
+
%tr
|
|
85
|
+
%td <button class="btn success">Success</button>
|
|
86
|
+
%td <code>.btn.success</code>
|
|
87
|
+
%td The success button indicates a successful or positive action
|
|
88
|
+
%tr
|
|
89
|
+
%td <button class="btn warning">Warning</button>
|
|
90
|
+
%td <code>.btn.warning</code>
|
|
91
|
+
%td The warning button indicates caution should be taken with this action
|
|
92
|
+
%tr
|
|
93
|
+
%td <button class="btn danger">Danger</button>
|
|
94
|
+
%td <code>.btn.danger</code>
|
|
95
|
+
%td The danger button indicates a dangerous or potentially negative action
|
|
96
|
+
%tr
|
|
97
|
+
%td <button class="btn primary">Primary</button>
|
|
98
|
+
%td <code>.btn.primary</code>
|
|
99
|
+
%td The primary button is based off of the CI settings within the application
|
|
100
|
+
.sg-subsection
|
|
101
|
+
.sg-half.pull
|
|
102
|
+
%h4 About these buttons
|
|
103
|
+
%p As a convention, buttons should only be used for actions while hyperlinks are to be used for objects. For instance, "Download" should be a button while "recent activity" should be a link.
|
|
104
|
+
%br
|
|
105
|
+
%p Button styles can be applied to anything with the <code>.btn</code> class. Typically you'll want to apply these to only <code><a></code> and <code><button></code> elements or <code>input</code> button elements.
|
|
106
|
+
.sg-half.push
|
|
107
|
+
%h4 The structure
|
|
108
|
+
%pre.prettyprint.html
|
|
109
|
+
= preserve do
|
|
110
|
+
:escaped
|
|
111
|
+
<button class="btn">Default</button>
|
|
112
|
+
<button class="btn important">Important</button>
|
|
113
|
+
|
|
114
|
+
<a class="btn">Default</a>
|
|
115
|
+
<a class="btn important">Important</a>
|
|
116
|
+
|
|
117
|
+
<input class="btn" type="submit" value="Submit"></input>
|
|
118
|
+
<input class="btn" type="reset" value="Reset"></input>
|
|
119
|
+
%pre.prettyprint.haml.hidden
|
|
120
|
+
= preserve do
|
|
121
|
+
:escaped
|
|
122
|
+
%button.btn Default
|
|
123
|
+
%button.btn.important Important
|
|
124
|
+
|
|
125
|
+
%a.btn Default
|
|
126
|
+
%a.btn.important Important
|
|
127
|
+
|
|
128
|
+
%input.btn(type="submit" value="Submit")
|
|
129
|
+
%input.btn(type="reset" value="Reset")
|
|
130
|
+
.sg-subsection(style="margin-top:2.5em")
|
|
131
|
+
.sg-half.pull
|
|
132
|
+
%h4 Links render different
|
|
133
|
+
%p <code>a</code> elements have <code>font-style:bold</code>
|
|
134
|
+
%br
|
|
135
|
+
.well
|
|
136
|
+
%button.btn(href="#") Button
|
|
137
|
+
%a.btn(href="#") Link
|
|
138
|
+
%button.btn.primary(href="#") Button
|
|
139
|
+
%a.btn.primary(href="#") Link
|
|
140
|
+
%input.submit.btn(name="submit" type="submit" value="Input Submit")
|
|
141
|
+
%input.reset.btn.primary(name="reset" type="reset" value="Input Reset")
|
|
142
|
+
|
|
143
|
+
%br
|
|
144
|
+
%h4 Sizing
|
|
145
|
+
%p Add either <code>.small</code> or <code>.large</code> class to change the size
|
|
146
|
+
%br
|
|
147
|
+
.well
|
|
148
|
+
%button.btn.small(href="#") Small
|
|
149
|
+
%button.btn.large(href="#") Large
|
|
150
|
+
%button.btn.primary.small(href="#") Small
|
|
151
|
+
%button.btn.primary.large(href="#") Large
|
|
152
|
+
|
|
153
|
+
.sg-half.push
|
|
154
|
+
%h4 Disabled states
|
|
155
|
+
%p Add the <code>.disabled</code> class or <code>:disabled</code> attribute
|
|
156
|
+
%br
|
|
157
|
+
.well
|
|
158
|
+
%button.btn(href="#" disabled) Button
|
|
159
|
+
%a.btn.disabled(href="#") Link
|
|
160
|
+
%button.btn.primary(href="#" disabled) Button
|
|
161
|
+
%a.btn.primary.disabled(href="#") Link
|
|
162
|
+
|
|
163
|
+
%br
|
|
164
|
+
%h4 Error states
|
|
165
|
+
%p Applied by adding the <code>.error</code> class
|
|
166
|
+
%br
|
|
167
|
+
.well
|
|
168
|
+
%button.btn.error(href="#") Button
|
|
169
|
+
%a.btn.error(href="#") Link
|
|
170
|
+
%button.btn.primary.error(href="#") Button
|
|
171
|
+
%a.btn.primary.error(href="#") Link
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
#elements_images.sg-spy-landing
|
|
176
|
+
.sg-subsection
|
|
177
|
+
%h3.sg-subheading Images <span>elements.sass</span>
|
|
178
|
+
.sg-half.pull
|
|
179
|
+
%h4 Standard image element
|
|
180
|
+
%p Images by default have the style setting of <code>max-width:100%</code> applied to allow scaling in a fluid grid.
|
|
181
|
+
%pre.prettyprint.html
|
|
182
|
+
= preserve do
|
|
183
|
+
:escaped
|
|
184
|
+
<img src="http://placehold.it/160x90" alt="image"/>
|
|
185
|
+
%pre.prettyprint.haml.hidden
|
|
186
|
+
= preserve do
|
|
187
|
+
:escaped
|
|
188
|
+
%img(src="http://placehold.it/160x90" alt="image")
|
|
189
|
+
.sg-half.push
|
|
190
|
+
.well
|
|
191
|
+
%img(src="http://placehold.it/160x90" alt="image")
|
|
192
|
+
.sg-subsection
|
|
193
|
+
.sg-half.pull
|
|
194
|
+
%h4 The figure element
|
|
195
|
+
%p The <code>figure</code> element represents self-contained content, frequently with a <code>figcaption</code>. Typically used with images, illustrations, diagrams, or code snippets, referenced in the main text.
|
|
196
|
+
%pre.prettyprint.html
|
|
197
|
+
= preserve do
|
|
198
|
+
:escaped
|
|
199
|
+
<figure>
|
|
200
|
+
<img src="http://placehold.it/160x90" alt="image"/>
|
|
201
|
+
<figcaption>caption</figcaption>
|
|
202
|
+
</figure>
|
|
203
|
+
%pre.prettyprint.haml.hidden
|
|
204
|
+
= preserve do
|
|
205
|
+
:escaped
|
|
206
|
+
%figure
|
|
207
|
+
%img(src="http://placehold.it/160x90" alt="image")
|
|
208
|
+
%figcaption>caption
|
|
209
|
+
.sg-half.push
|
|
210
|
+
%br
|
|
211
|
+
.well
|
|
212
|
+
%figure
|
|
213
|
+
%img(src="http://placehold.it/160x90" alt="image")
|
|
214
|
+
%figcaption <small>placehold.it</small>
|
|
215
|
+
|
|
216
|
+
|
|
217
|
+
#elements_video.sg-spy-landing
|
|
218
|
+
.sg-subsection
|
|
219
|
+
%h3.sg-subheading Video <span>elements.sass</span>
|
|
220
|
+
.sg-half.pull
|
|
221
|
+
%p Standard video, controls, and poster image utilizing the <code>video</code> tag. Nothing special is done to the <code>video</code> element, just make sure to include a poster image and the appropriate sources!
|
|
222
|
+
%pre.prettyprint.html
|
|
223
|
+
= preserve do
|
|
224
|
+
:escaped
|
|
225
|
+
<video controls="" poster="...">
|
|
226
|
+
<source src="video.mp4" type="video/mp4; codecs=\"...\"">
|
|
227
|
+
<source src="video.ogv" type="video/ogg; codecs=\"...\"">
|
|
228
|
+
</video>
|
|
229
|
+
%pre.prettyprint.haml.hidden
|
|
230
|
+
= preserve do
|
|
231
|
+
:escaped
|
|
232
|
+
%video(controls="" poster="...")
|
|
233
|
+
%source(src="video.mp4" type="video/mp4; codecs=\"...\"")
|
|
234
|
+
%source(src="video.ogv" type="video/ogg; codecs=\"...\"")
|
|
235
|
+
.notification.important.fade.in
|
|
236
|
+
%p <strong>Note!</strong> More information on the <a href="http://dochub.io/#html/video">video element</a>.
|
|
237
|
+
.sg-half.push
|
|
238
|
+
.well
|
|
239
|
+
%video(controls="" poster="http://placehold.it/320x180&text=Poster")
|
|
240
|
+
%source(src="/path/to/myvideo.mp4" type="video/mp4; codecs=\"avc1.42E01E, mp4a.40.2\"")
|
|
241
|
+
%source(src="/path/to/myvideo.ogv" type="video/ogg; codecs=\"theora, vorbis\"")
|
|
242
|
+
|