554 Commits
Author SHA1 Message Date
Jacob Thornton f92759b36d update 1.4 docs 2011-11-03 17:39:50 -07:00
Jacob Thornton 2187703144 rebuild 2011-11-03 17:08:12 -07:00
Jacob Thornton 9defc21218 Merge branch 'master' of https://github.com/twitter/bootstrap into dev 2011-11-03 17:06:13 -07:00
Jacob Thornton 869f11305a update 1.3 to 1.4 stuffs 2011-11-03 17:03:03 -07:00
Jacob Thornton 1b4b97d530 rebuild css, add preserve-3d for faster animations, fix whitespace in mixins.less 2011-11-03 14:45:53 -07:00
Jacob Thornton f285048b34 Merge pull request #525 from mchung/patch-1
Fixed typo in Makefile
2011-11-02 10:13:58 -07:00
Marc Chung 09743c8996 Fixed typo in Makefile 2011-11-02 00:38:44 -07:00
Mark Otto d811808494 fix tipsies, modals, and popovers from overlaying topbar 2011-11-02 00:04:43 -07:00
Mark Otto 0e91eddb66 fix pagination inconsistencies 2011-11-01 23:57:48 -07:00
Mark Otto 5c86074fa9 Merge branch 'kriansa-patch1' into dev
Conflicts:
	bootstrap.css
2011-10-31 23:28:05 -07:00
Mark Otto 602919aae8 tweak alignment for IE7 and chrome 2011-10-31 23:27:20 -07:00
Mark Otto f4ba190821 Merge branch 'patch1' of https://github.com/kriansa/bootstrap into kriansa-patch1 2011-10-31 23:22:55 -07:00
Mark Otto a21363a749 Merge branch 'dev' of github.com:twitter/bootstrap into dev
Conflicts:
	bootstrap.css
2011-10-31 23:22:13 -07:00
Mark Otto 98007b8394 remove fixed height from select elements for IE7 2011-10-31 23:18:36 -07:00
Jacob Thornton 8f726dc6ef issue #240 - firefox drop css transition events :{o 2011-10-31 22:44:42 -07:00
Jacob Thornton 169b4b5dcb add template option and make title an optional attribute for popover 2011-10-29 19:59:51 -07:00
Jacob Thornton 640fd15464 allow the use of data attributes to define popover options 2011-10-29 19:27:02 -07:00
Jacob Thornton ea50e8aeee add active class to css for buttons, write new spec for button, "use strict" 2011-10-29 18:49:35 -07:00
Jacob Thornton e8b66a9626 star work on bootstrap-buttons.js 2011-10-29 17:58:58 -07:00
Jacob Thornton 9a30b8c05d Merge branch 'master' of github.com:twitter/bootstrap into dev
Conflicts:
	bootstrap.css
	bootstrap.min.css
	lib/forms.less
2011-10-29 17:08:35 -07:00
Mark Otto 61937a803b adding resizable class and mixin 2011-10-28 18:57:37 -07:00
Chris Aniszczyk d3b8a96589 Update README.md 2011-10-28 08:57:58 -07:00
Chris Aniszczyk 9f0b79da7e Update LICENSE 2011-10-28 08:57:09 -07:00
Mark Otto 15e0068979 remove background color from html tag 2011-10-27 23:45:48 -07:00
Kriansa c9b7118a47 Fixed a bug that wasn't working as expected on Linux 2011-10-27 12:36:28 -02:00
Mark Otto 58bbc754b6 Merge branch 'patch1' of https://github.com/kriansa/bootstrap into kriansa-patch1 2011-10-26 21:29:23 -07:00
Mark Otto 646870135b fix vertical position of dropdown menu in .tabs 2011-10-26 21:28:43 -07:00
Mark Otto 5736ba549c fix prettyify and update the table styles to include a condensed flavor 2011-10-26 21:22:05 -07:00
kriansa 3045ce4692 Aligned close buttons to the middle of alert message 2011-10-27 01:29:34 -02:00
Jacob Thornton 0810b7bcf4 Merge pull request #462 from southpolesteve/master
Use proper span classes for three column layout in hero example
2011-10-22 11:23:48 -07:00
Steve Faulkner 7002a01978 Use proper classes for three column layout 2011-10-21 14:00:39 -05:00
Mark Otto 41ada302ec tweaking prettify styles to introduce dark theme 2011-10-21 00:37:01 -07:00
Mark Otto d28f3d86f6 move javascript to le footer 2011-10-21 00:12:47 -07:00
Mark Otto 12d7fc82f3 fix the popover background color to work in ie7 2011-10-20 09:13:22 -07:00
Mark Otto b62475a22e updated fluid example to not use floated sidebar and instead use position absolute; not ideal, but it works in most cases 2011-10-19 23:50:41 -07:00
Mark Otto 35793d98e7 update docs to streamline the tables section, remove redundant css for tables to simplify borders 2011-10-19 23:11:22 -07:00
Mark Otto 6ad0559e0f remove redundant styles from inline forms 2011-10-19 22:26:14 -07:00
Mark Otto 958e55f6a4 update docs copy to include mention of info alert messages 2011-10-19 22:22:44 -07:00
Mark Otto 740e64a2c9 remove new tab stuff since it breaks backwards compatability 2011-10-11 23:49:43 -07:00
Mark Otto e2a0ce2062 adding new tabble stuff, still a huge work in progress 2011-10-11 23:46:42 -07:00
Mark Otto 12af75eef4 updated pills to include vertical (stacked) variation in patterns and documentation 2011-10-11 21:49:37 -07:00
Mark Otto 70b1a6b562 Merge pull request #408 from tinyfly/grid-input-size-fix
adjust width calculations for formColumns to fix issue #404
2011-10-10 19:44:06 -07:00
Mark Otto b8a4921b57 fixing form input width sizing, removing unused CSS 2011-10-10 19:38:24 -07:00
Jeff Adams 12cb0822e8 adjust width calculations for formColumns to fix issue #404 2011-10-10 14:32:59 -05:00
Mark Otto 1b19799d70 cleanup tabs and pills to prep css for new stuff 2011-10-09 23:02:34 -07:00
Mark Otto 770e7647d1 start adding examples to docs for alternate tabs and pills 2011-10-09 22:55:12 -07:00
Mark Otto a05be0cba3 small tweak to dropdowns for autocomplete if you implement dropdowns that way 2011-10-09 22:44:45 -07:00
Mark Otto 0c1c236414 improve text color and borders for legibility 2011-10-09 22:38:48 -07:00
Mark Otto b74776281d new form state styles with lighter footprint 2011-10-09 22:32:19 -07:00
Mark Otto 831f279011 add extra states to the form examples 2011-10-09 22:02:40 -07:00
Mark Otto 8f0671adfb remove bottom margin from form in modals for temp fix" 2011-10-09 20:57:38 -07:00
Mark Otto 13cc27a6b4 modal was not centered correctly 2011-10-08 09:21:25 -07:00
Mark Otto eddc59c634 remove select from docs form sizes 2011-10-08 00:27:52 -07:00
Mark Otto 464c2d5295 remove select from the new form grid sizes and let them inherit the default grid ones 2011-10-08 00:26:57 -07:00
Mark Otto 0692530efc add better handling to the tables so that the thead and tbody first row can have rounded corners where applicable 2011-10-08 00:19:01 -07:00
Mark Otto aa3a8af2d0 place popovers and twipsies above modals for use there 2011-10-08 00:16:21 -07:00
Mark Otto 7b665affd7 fix problems with scope in tables when using th in tbody 2011-10-08 00:14:38 -07:00
Mark Otto e025de9a83 bring hover state back to the .brand element in the topbar to fix a bug 2011-10-07 23:56:14 -07:00
Mark Otto 970c51dd99 update docs to simplify first table example and introduce nested documentation 2011-10-07 23:54:50 -07:00
Mark Otto 9991f3faa1 resolve problem with nested tables having double borders 2011-10-07 23:53:32 -07:00
Mark Otto c85e93cd90 Merge pull request #381 from smaboshe/docs
Docs
2011-10-07 23:27:19 -07:00
Silumesii Maboshe df773debab .gitignore update. 2011-10-07 06:02:02 +02:00
Silumesii Maboshe b7d4be584a For consistency, updated rendered 'pre' in docs to '<pre>' in the 'Presenting code' section. 2011-10-07 05:59:34 +02:00
Silumesii Maboshe 527521b502 Updated rendered '>html<' in docs to '<html>' in the 'Presenting code' section. 2011-10-07 05:56:45 +02:00
Jacob Thornton 356227ef50 pass more args to placement function 2011-10-04 22:56:23 -07:00
Jacob Thornton a2c263493a add dropdown tab selection support 2011-10-04 22:11:44 -07:00
Jacob Thornton 100954eeda remake 2011-10-04 21:26:29 -07:00
Jacob Thornton 607795e37a Merge branch 'master' of github.com:twitter/bootstrap 2011-10-04 21:25:41 -07:00
Jacob Thornton d7e3bf722d add selector option to alerts, update modal settings strategy 2011-10-04 21:24:59 -07:00
Mark Otto d74dee5e0f fixing multi select on chromium ubuntu by setting background color explicitly 2011-10-04 01:16:07 -07:00
Mark Otto 088a9efa4c merging master which has the label fix 2011-10-04 00:58:12 -07:00
Mark Otto 5cae222022 Merge branch 'master' into dev 2011-10-04 00:57:37 -07:00
Mark Otto 3c31d8a258 more small changes to compiled css to try things out 2011-10-03 23:50:14 -07:00
Mark Otto 45c9b489ee scope the label back to the form element 2011-10-03 22:44:35 -07:00
Mark Otto 1b245ffdf8 make links in error messages not be blue, but instead match the text color and be bold: 2011-10-03 22:36:51 -07:00
Mark Otto c843e202b5 make it so that checkboxes and radio options-list can have wrapping labels; needs to be cross browser tested yet 2011-10-03 22:27:15 -07:00
Mark Otto a968d300b4 overhaul the grid CSS to make it more durable for tables and forms to use the same sizing methods; need to see about improving this in the future 2011-10-03 22:14:50 -07:00
Mark Otto 948c59ddb3 resolve issue with form fields and errors causing no space between fields with consecutive errors; needs more work, but will address later 2011-10-03 21:43:53 -07:00
Mark Otto 0caa484aeb fix the popover bug in the app example by making the custom css more specific for .content 2011-10-03 21:36:51 -07:00
Mark Otto 2edf16c034 Merge pull request #346 from alepee/master
Add a white-space: nowrap; for .label elements.
2011-10-03 21:32:26 -07:00
Jacob Thornton b41175f030 Merge pull request #362 from purcell/safe-dropdown-initialization
Add jquery.ready hook after defining plugin, to avoid breakage with modernizr/yepnope
2011-10-03 11:46:42 -07:00
Steve Purcell bdbb1c92aa Add jquery.ready hook after defining plugin, to avoid breakage when used with modernizr/yepnope
See https://gist.github.com/1258742 for an example, which results in the error

"TypeError: Object has no method 'dropdown' at bootstrap-dropdown.js line 31"

It looks like in these circumstances, the functions hooked into
jquery.ready get run immediately, and so applying the dropdown
behavior to specific elements before defining the 'dropdown' method
causes breakage.
2011-10-03 10:05:43 +01:00
Jacob Thornton 7e01ff8a15 Merge branch 'master' of github.com:twitter/bootstrap 2011-10-02 23:00:47 -07:00
Jacob Thornton 823b063c56 preboot.less > variables.less in docs 2011-10-02 23:00:11 -07:00
Jacob Thornton 5f52c5cfc3 Merge pull request #361 from samuelcarlton/patch-1
Fixed comment to show appropriate file name.
2011-10-02 22:44:33 -07:00
Jacob Thornton 0b625d0cb5 Merge branch 'master' of github.com:twitter/bootstrap 2011-10-02 22:33:02 -07:00
Jacob Thornton f8be7a8052 remove options check in modal.js 2011-10-02 22:26:26 -07:00
Sam Carlton 6fb0eb8833 Fixed comment to show appropriate file name. 2011-10-02 20:12:50 -05:00
Antoine Lépée a61a624e1d white-space: nowrap; for .label
Add white-space: nowrap; for .label elements.
2011-09-30 14:19:56 +02:00
Jacob Thornton fda10a609c Merge pull request #329 from lmjabreu/master
make tabs plugin play well with nested tabs
2011-09-29 23:42:58 -07:00
Jacob Thornton b2b8a78971 wait for transition to end before triggering shown event 2011-09-29 23:38:11 -07:00
Jacob Thornton 2715a1e09e whitespace 2011-09-29 23:32:10 -07:00
Jacob Thornton 7a153ac817 Merge branch 'fix_hide_before_show_bug' of https://github.com/aaronj1335/bootstrap into aaronj1335-fix_hide_before_show_bug 2011-09-29 23:31:26 -07:00
Jacob Thornton a0c3250b97 add note about making sure to include boostrap-twipsy before popover script 2011-09-29 23:24:34 -07:00
Jacob Thornton fb749eee5e show should be fals for modal default 2011-09-29 23:12:27 -07:00
Jacob Thornton 87d9343a30 @dmyers settings fix #255 2011-09-29 23:09:53 -07:00
Jacob Thornton d2de00f1df Merge branch 'kasperp-tab-event' 2011-09-29 23:01:06 -07:00
Jacob Thornton a0bf8b67ff change event to use target and relatedTarget (which more closely resembles actual event api) 2011-09-29 23:00:10 -07:00
Jacob Thornton b827303511 changed event should be change event 2011-09-29 22:21:55 -07:00
Jacob Thornton 24b05fe94a Merge branch 'tab-event' of https://github.com/kasperp/bootstrap into kasperp-tab-event 2011-09-29 22:18:08 -07:00
Jacob Thornton 28c770bf67 Merge pull request #332 from pamelafox/patch-2
JS Docs Typo
2011-09-29 11:28:37 -07:00
Pamela Fox 1be7e09b97 Think the option is supposed to be 'keyboard' in the docs, not 'closeOnEsc'. 2011-09-28 14:56:54 -07:00
Luis Abreu 9a2440aafa tweaked bootstrap-tabs plugin active tab selector to allow for nested tabs 2011-09-28 22:08:26 +01:00
Aaron Stacy 616f136371 return this 2011-09-23 16:09:18 -05:00
Aaron Stacy 1066ec4a79 updated if statement form 2011-09-23 13:38:08 -05:00
Aaron Stacy d541eceb51 added bug fix for hide-before-show bug
this commit fixes a bug where .modal('hide') is called on a modal object before
.modal('show').  this can be viewed here:

    http://jsfiddle.net/aaronj1335/7hH89/8/

(notice the JS exception that is thrown)
2011-09-23 08:46:08 -05:00
Jacob Thornton 68605bdd51 add semicolon to end of file while i think about better solution... 2011-09-22 13:13:55 -07:00
Jacob Thornton 46958b2b67 Merge branch 'master' of github.com:twitter/bootstrap 2011-09-22 12:55:34 -07:00
Jacob Thornton 41983bbe67 update table to support header and arrows 2011-09-22 12:54:57 -07:00
Jacob Thornton 323de40e80 Merge pull request #278 from adamnbowen/patch-1
Fixes typos of "bootstrap"
2011-09-21 10:59:58 -07:00
Adam Bowen 7c637bc51c Fixes typos of "bootstrap" 2011-09-21 10:38:08 -03:00
Jacob Thornton 6ec1abc53c Merge branch 'master' of github.com:twitter/bootstrap 2011-09-20 14:50:50 -07:00
Jacob Thornton f2e15402c8 fix reflow typo - should be $element not $backdrop 2011-09-20 14:50:14 -07:00
Jacob Thornton a7134dbf43 Merge pull request #268 from workwithnano/patch-1
Typo fix: "you're" to "your".
2011-09-20 10:46:26 -07:00
Nano bc6e4b8ed2 Typo fix: "you're" to "your". 2011-09-20 14:09:28 -03:00
Jacob Thornton 01ab4caa5b Merge branch 'master' of github.com:twitter/bootstrap 2011-09-19 20:14:33 -07:00
Jacob Thornton 0c6a2acd7e remove var O_O 2011-09-19 20:13:51 -07:00
Jacob Thornton 75cbf0d251 Merge pull request #259 from jacobfike/master
fixes #258, clicking a tab remove .active class from all elements on the page
2011-09-19 13:07:28 -07:00
Jacob Fike 9b61f71835 fixes #258, clicking a tab remove .active class from all elements on the page 2011-09-19 11:54:20 -07:00
Jacob Thornton fc6effae51 listen to document for ie 2011-09-18 21:13:56 -07:00
Jacob Thornton ac8001190a force reflow instead of relying on eventloop (firefox)
listen to window for escape press
2011-09-18 21:03:52 -07:00
Jacob Thornton ba6f4f03da lemme smang it giiiirl 2011-09-18 19:05:21 -07:00
Jacob Thornton 89c5eb4491 Merge pull request #241 from asmega/javascript_docs_favicon
fixing locations of favicon + apple icons
2011-09-18 13:45:12 -07:00
asmega 159ccc9de3 fixing locations of favicon + apple icons 2011-09-18 16:10:36 +01:00
Kasper Bøgebjerg Pedersen e16de59260 Added changed event to bootstrap-tabs.js 2011-09-18 10:15:24 +02:00
Jacob Thornton 3eafbe5c89 change version in makefile to 1.3 2011-09-17 18:25:40 -07:00
Jacob Thornton 39a16811eb Merge pull request #233 from cheeaun/patch-1
Documentation typo/error on scrollSpy.
2011-09-17 18:20:56 -07:00
Lim Chee Aun 7da0e5cc0c Documentation typo/error on scrollSpy. 2011-09-18 08:35:34 +08:00
Jacob Thornton 7b614cfa01 allow backdrop option to accept "static" option 2011-09-17 14:20:51 -07:00
Nick Veys 2cb233319d Adding flag to prevent backdrop click hiding modal 2011-09-17 15:08:16 -05:00
Mark Otto 732ff9ed1c fix fluid example 2011-09-16 14:07:18 -07:00
Mark Otto 08d017592b Fix spelling mistake in pre on js page (/ul instead of /div). 2011-09-16 13:01:49 -07:00
Jacob Thornton f03f7da08b fix readme link spacing 2011-09-16 12:30:30 -07:00
Jacob Thornton cd556cfacd remake for version 1.3 2011-09-16 11:24:45 -07:00
Jacob Thornton c7c5ce8dcd Merge branch 'master' of github.com:twitter/bootstrap into 1.3-wip
Conflicts:
	Makefile
	README.md
	bootstrap.css
	bootstrap.min.css
	lib/bootstrap.less
	lib/scaffolding.less
2011-09-16 11:24:07 -07:00
Jacob Thornton aa43239088 Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-16 11:09:46 -07:00
Jacob Thornton f0d5caf054 check for jquery/ender on window 2011-09-16 11:09:26 -07:00
Mark Otto e8d9eb264c update alert message for ie7 to adjust dismiss icon, update example pages to clean up a few things from testing 2011-09-16 10:51:44 -07:00
Mark Otto 29033316e4 Merge pull request #219 from caniszczyk/1.3-wip
Merge in pull request to clarify docs licensing as CC BY 3.0
2011-09-16 10:37:52 -07:00
Chris Aniszczyk 08b6c47ad7 Clarify documentation license to be CC BY 3.0
Signed-off-by: Chris Aniszczyk <zx@twitter.com>
2011-09-16 10:30:47 -07:00
Mark Otto 597590c15d add active class back to tabs 2011-09-16 10:15:45 -07:00
Mark Otto e663cfb43f fix tabs jitter bug when there is no active class 2011-09-16 10:14:35 -07:00
Mark Otto c579e4d550 expanding comment in application.js 2011-09-16 09:55:12 -07:00
Mark Otto 8ff18a9ffc fixing conflict and recompiling 2011-09-16 09:47:36 -07:00
Mark Otto b188c0da8b updated table styles a bit and floated the fluid columns to clear the row dropping problem we were having 2011-09-16 09:41:58 -07:00
Jacob Thornton d1b594db7a $(document).ready instead of $(function() {}) for ender support 2011-09-15 23:16:06 -07:00
Jacob Thornton 472632ba51 mv 1.3.0 file names to plane bootstrap.css for submodulers 2011-09-15 23:09:56 -07:00
Jacob Thornton 5675d8f00a remove table border seperate for ie 2011-09-15 22:40:50 -07:00
Jacob Thornton 39aca918d0 move clearfix logic back onto clearfix class for ie7 2011-09-15 22:36:32 -07:00
Jacob Thornton 68f89d109f little fixes for ie 7 2011-09-15 22:27:41 -07:00
Jacob Thornton 8896497ea8 update attributes for js and make tooltips reposition on resize 2011-09-15 21:19:39 -07:00
Mark Otto dcf6a051e7 allow multi-select lists in forms 2011-09-14 08:58:20 -07:00
Mark Otto 32a690af98 apply clearfix to appended input pattern to clear the floats 2011-09-13 22:23:08 -07:00
Mark Otto 01d9cd88e8 updated browsers image 2011-09-13 20:24:30 -07:00
Mark Otto 2af3eb6ce2 fix tab-content and pre funkiness, convert p in tab content to div 2011-09-13 14:47:18 -07:00
Mark Otto 121b62d54e updates to docs to include more example html, include links to javascript docs where necessary 2011-09-13 10:08:24 -07:00
Mark Otto 35bc3ae8d2 remove theming section from docs 2011-09-13 09:44:43 -07:00
Mark Otto 1d50fa77e4 adding quick and dirty favicons and touch icons for iOS 2011-09-13 09:35:43 -07:00
Mark Otto bc2ae90e3a Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-12 22:19:44 -07:00
Mark Otto 5249483850 comment out box-shadow on masthead and footer in docs.css because Opera sucks at inset box-shadow :" 2011-09-12 22:19:28 -07:00
Jacob Thornton e34bc6e294 Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-12 21:06:53 -07:00
Jacob Thornton 5ee11ec8bd fix docs for opera 2011-09-12 21:06:29 -07:00
Mark Otto 206334ba70 remove theme.less and split preboot.less to mixins.less and variables.less to isolate customization from function 2011-09-12 20:07:26 -07:00
Mark Otto 2978934bd5 remove adaptive, recomment theme.less to avoid comments in compiled 2011-09-12 19:40:48 -07:00
Mark Otto 218976a7d8 resolve conflict 2011-09-12 19:00:59 -07:00
Mark Otto 3f64aaf82b fix topbar link with button bug 2011-09-12 19:00:44 -07:00
Mark Otto 427a001c47 Link Twitter account in readme 2011-09-12 14:33:39 -07:00
Mark Otto a218475ffc Edited README.md via GitHub 2011-09-12 14:33:00 -07:00
Jacob Thornton 4c5320b18f Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip
Conflicts:
	bootstrap-1.3.0.css
2011-09-12 14:29:29 -07:00
Jacob Thornton 997c2cd6a0 make file shouldn't say file built successfully if error occurs 2011-09-12 14:28:26 -07:00
Mark Otto 8f5f35e6db Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-12 13:32:58 -07:00
Mark Otto 7af4a4cfa1 really make modals cover topbars and not cover the modal itself 2011-09-12 13:32:46 -07:00
Mark Otto bc41c58472 make modals cover topbars 2011-09-12 13:31:58 -07:00
Jacob Thornton ad87e11f03 add version number to js comments 2011-09-12 11:15:32 -07:00
Jacob Thornton 7396cb8c51 Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-12 11:14:35 -07:00
Jacob Thornton 1645b57efe prevent default for hover click 2011-09-12 11:14:09 -07:00
Mark Otto b729ade54f quick fix for .clearfix with unqualified selector in forms.less 2011-09-12 09:25:57 -07:00
Mark Otto 72ce695cfd add links 2011-09-12 09:24:54 -07:00
Mark Otto 6a5fb52bb1 Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-12 08:58:46 -07:00
Jacob Thornton 89465f8ce1 few more js doc wording changes 2011-09-12 00:03:24 -07:00
Jacob Thornton cc05bce597 docs coppyy 2011-09-11 23:56:44 -07:00
Jacob Thornton 44e2c73668 data-attribute="x" annndddd... now all js with ie7+ support 2011-09-11 23:48:43 -07:00
Jacob Thornton fcf816a236 index to use data attr for scrollspy initilizing 2011-09-11 23:36:59 -07:00
Jacob Thornton 02d668fd2e data-attributes need values to be picked up by jquery in ie8 and below :/ 2011-09-11 23:29:34 -07:00
Jacob Thornton dcf9aabc44 get all spec passing again 2011-09-11 22:58:51 -07:00
Mark Otto 0c46ade4d0 Merge pull request #194 from samsoffes/patch-1
Add pretty code coloring to readme
2011-09-11 22:15:49 -07:00
Mark Otto 88f2f848b3 change modal buttons back to be primary first 2011-09-11 22:02:26 -07:00
Sam Soffes 86bb0733a2 Add pretty code coloring to readme 2011-09-11 21:56:54 -07:00
Mark Otto c73533ac73 fix problem with error styles in forms that clashed with alert-messages by qualifying the .error with .clearfix 2011-09-11 21:43:23 -07:00
Mark Otto 0afba3867d Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-11 21:13:09 -07:00
Mark Otto b77e3e2f30 theme.less file cleanup; fixing blockquotes in wells 2011-09-11 21:12:55 -07:00
Jacob Thornton f8aaec5260 Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-11 21:04:01 -07:00
Jacob Thornton 200f5817ba method invocation jqueryui style 2011-09-11 21:03:17 -07:00
Mark Otto c876835a02 update preboot comments about color scheme 2011-09-11 20:47:35 -07:00
Mark Otto 96e59eed20 update theme.less todos and darken link hover color more 2011-09-11 20:46:40 -07:00
Mark Otto af2223efb1 remove border from dropdowns in topbar to prevent it from looking 1px off 2011-09-11 20:38:45 -07:00
Mark Otto b7c9a639d6 Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-11 20:17:49 -07:00
Mark Otto bd3448cf78 make input prepend styles look a bit better 2011-09-11 20:17:34 -07:00
Jacob Thornton e255b4f51d Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-11 20:09:20 -07:00
Jacob Thornton 173be3f1e8 change hella js... broke all the tests. i <3 wip 2011-09-11 20:08:43 -07:00
Mark Otto 2674210ff0 move the .brand from the parent to the a tag in the topbar; fix the moving text in IE7 2011-09-11 20:00:45 -07:00
Mark Otto 6bc867ed5c change template diagrams to be .media-grid 2011-09-11 19:53:48 -07:00
Mark Otto 53812bc2d8 remove qualifying tags in .span selectors for built in grid so that we can use .span-n classes in form styles 2011-09-11 18:44:25 -07:00
Mark Otto f3f60b21a6 oops, double commit last time; apply fixes to make select elements line up in IE7 with their labels, but no height fix 2011-09-11 18:09:01 -07:00
Mark Otto 18a5ef83ef fix legends in ie7 2011-09-11 18:01:29 -07:00
Mark Otto 3ad034ea96 fix legends in ie7 2011-09-11 17:36:15 -07:00
Mark Otto 1ae603fda0 make the less compile docs text now have widows, fix broken table markup 2011-09-10 23:05:30 -07:00
Mark Otto 62edafa1a4 Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-10 22:55:59 -07:00
Jacob Thornton d9cbcfc20d wait for window load event before positioning images, doi 2011-09-10 22:54:47 -07:00
Mark Otto 0c656e29fc updated styles for the media grids 2011-09-10 22:50:59 -07:00
Jacob Thornton b781f6ca59 Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-10 22:49:05 -07:00
Jacob Thornton a5964b07b1 add static sizes for images so tooltips get right size on load 2011-09-10 22:48:39 -07:00
Mark Otto d0f7637a7d adding more media sizes 2011-09-10 22:47:38 -07:00
Jacob Thornton 68865002af Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-10 22:44:22 -07:00
Jacob Thornton 2655117747 add some notes on installing from command line and from makefile 2011-09-10 22:43:52 -07:00
Mark Otto 3755ee158f Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-10 22:31:55 -07:00
Mark Otto 40693f2618 adding media grid styles 2011-09-10 22:31:43 -07:00
Jacob Thornton 709789d16d clicking open dropdown shoud close it 2011-09-10 22:28:17 -07:00
Jacob Thornton 7e5b304dbf add liscense to js files 2011-09-10 22:24:31 -07:00
Jacob Thornton c40e0de3c1 Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip
Conflicts:
	docs/index.html
2011-09-10 22:17:37 -07:00
Jacob Thornton 64176caa97 add bootstrap-scrollspy 2011-09-10 22:14:57 -07:00
Mark Otto 536fe2c743 add footer to js docs 2011-09-10 21:54:11 -07:00
Mark Otto 8130b113bb add stubbed out table for how to compile less 2011-09-10 21:50:12 -07:00
Mark Otto 6a74a313a8 tweak css for topbar to bring back z-index fix; update javascript markup and some heading text 2011-09-10 21:10:18 -07:00
Mark Otto 3407ed948d resolved conflict 2011-09-10 21:06:09 -07:00
Mark Otto 00b7dff359 overhaul docs CSS since it was scalable, converted docs mastheads and footers to classes and HTML5 elements, add masthead to js docs page but make it slate so it looks cool and stands out 2011-09-10 21:05:23 -07:00
Jacob Thornton a71d5d8e99 add the dhg flavor back 2011-09-10 19:01:16 -07:00
Jacob Thornton 235246d6fc not feeling the slide in 2011-09-10 18:26:37 -07:00
Jacob Thornton 9c76070cbd rework the transitions for the modal a bit 2011-09-10 18:13:37 -07:00
Jacob Thornton 57a8672b77 Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-10 16:51:03 -07:00
Jacob Thornton 23d2fed905 tooltip 1 word 2011-09-10 16:50:42 -07:00
Mark Otto 0914027609 spelling mistake 2011-09-10 15:32:06 -07:00
Mark Otto f556da42fc zebra stripe that shit 2011-09-10 15:30:42 -07:00
Mark Otto a95a0ed71c conflict 2011-09-10 15:29:53 -07:00
Mark Otto 99ede580cf adding code and .label sections to type section 2011-09-10 15:29:38 -07:00
Jacob Thornton a8d4475827 adds twipsy js to regular index for positioning 2011-09-10 14:52:45 -07:00
Jacob Thornton 39fc13093e Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-10 14:04:51 -07:00
Jacob Thornton 5f65df9e2d add some more events to alerts and modal and update docs 2011-09-10 14:04:22 -07:00
Mark Otto 6d99ae5659 Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-10 13:18:24 -07:00
Mark Otto e5b4a1ced5 adding .brand to topbar for alternative to using an h3 for wordmark; spelling mistakes fixed 2011-09-10 13:18:10 -07:00
Jacob Thornton 5bc455d370 Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-10 13:17:43 -07:00
Jacob Thornton 1041977d0a finish up rounding out tests for all js plugins 2011-09-10 13:17:08 -07:00
Mark Otto c797cb61a6 conflict 2011-09-10 13:04:17 -07:00
Mark Otto 5b16150159 trying to solve firefox active outline, make .input less specific 2011-09-10 13:00:07 -07:00
Jacob Thornton 48aa209348 more tests, more js goodness 2011-09-10 12:49:21 -07:00
Jacob Thornton 79d5f90713 Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip
Conflicts:
	bootstrap-1.3.0.css
2011-09-09 22:48:57 -07:00
Jacob Thornton 5f4e30ed1d move js plugins to root dir, begin writing tests, and change modal plugin to be more boss like 2011-09-09 22:47:49 -07:00
Mark Otto 0b43bc9bb9 adding docs for customizing the grid 2011-09-09 21:50:41 -07:00
Mark Otto a0c3d48342 fix the stacked form legend style 2011-09-09 21:43:19 -07:00
Mark Otto a40690a17c fix the grid before 1.3.0 drops soon 2011-09-09 20:48:45 -07:00
Mark Otto c56e229ed7 start updating the grid docs for customizing it 2011-09-09 20:47:38 -07:00
Mark Otto dad058326e add version # to docs 2011-09-09 16:00:59 -07:00
Mark Otto 53135839f5 adding nested columns to the grid section 2011-09-09 10:04:07 -07:00
Mark Otto df3ca4d94a Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-09 00:03:01 -07:00
Mark Otto 1d4e345ec1 bug fixing 2011-09-09 00:02:47 -07:00
Jacob Thornton b086d94253 remove aria-control stuff 2011-09-09 00:00:03 -07:00
Mark Otto 3a99b98ad9 make dropdown menus appear above other elements on the page with a z-index 2011-09-08 23:08:38 -07:00
Mark Otto 1a8fb2dbf7 resolve conflict 2011-09-08 23:02:13 -07:00
Mark Otto ba08055a7b update the modals and alert-messages to use the same .close styles, save for some positioning in the modal after knocking down the modal padding 2011-09-08 23:01:28 -07:00
Jacob Thornton 5960711d0f some more js love - update the docs with tabs/pills plugin 2011-09-08 20:21:03 -07:00
Jacob Thornton 346122a0c7 Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-08 19:13:26 -07:00
Jacob Thornton 8d2f14d8d0 tabssss 2011-09-08 19:13:08 -07:00
Mark Otto c474f996a9 tweaks to table styles to make them use @basefont and @baseline 2011-09-08 10:47:05 -07:00
Mark Otto 1c03a07591 bump css to 1.3.0, update makefile to reflect that, update form css to prepend form to the .clearfix to prevent some bullshit, small tweaks elsewhere 2011-09-08 10:36:56 -07:00
Mark Otto 1af96b9a58 what up breadcrumbs, we added you 2011-09-08 09:43:37 -07:00
Mark Otto f6d20a8939 remove active state from dropdown 2011-09-06 23:32:20 -07:00
Mark Otto daf903f847 Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-06 23:30:45 -07:00
Mark Otto d640c3b14b update diagrams to use smaller border radius, add new container-app example 2011-09-06 23:30:21 -07:00
Jacob Thornton fb8987148a move javascript from examples into docs 2011-09-06 23:20:56 -07:00
Mark Otto d0882c580d first pass at enabling active states in dropdowns in topbar and fixing the bug of having an active class on parent dropdown 2011-09-06 21:54:00 -07:00
Mark Otto dfbb591953 addng docs for the themes stuff and examples 2011-09-04 14:02:56 -07:00
Jacob Thornton 43b01d1b80 Merge pull request #149 from yury/version_var
use VERSION var in build script
2011-09-03 23:12:36 -07:00
Mark Otto 7882f0f64b adding temp theme file to help with customization; still needs work 2011-09-03 22:53:21 -07:00
yury fe8cb55cc1 use @VERSION var in build script 2011-09-03 20:10:42 +04:00
Mark Otto 0b70eb630e Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-02 23:35:44 -07:00
Mark Otto bfa5ce70d4 updated address examples 2011-09-02 23:35:28 -07:00
Mark Otto df8eccbfe1 adding support for and example ul in block-messages 2011-09-02 23:28:01 -07:00
Jacob Thornton cf23dc4f24 Merge branch '1.3-wip' of github.com:twitter/bootstrap into 1.3-wip 2011-09-02 23:16:06 -07:00
Jacob Thornton 2883888a57 adds small js section to docs index 2011-09-02 23:15:38 -07:00
Mark Otto 168551cd4f adding link support to regular text in the topbar 2011-09-02 23:09:59 -07:00
Mark Otto 4dbd2334bd updated hero example, added fluid example, resolved issue with tabs and fluid nav 2011-09-02 23:01:38 -07:00
Mark Otto 6d118411e1 resolve conflict 2011-09-02 22:09:49 -07:00
Mark Otto 1625341391 fix repeated margin-left 2011-09-02 22:09:12 -07:00
Mark Otto 5c3f0e32e6 updated container mixin to be fixed-container instead so we can keep the .container in scaffolding while removing the repeated code 2011-09-02 22:08:38 -07:00
Mark Otto d5e42cf81a tweak readonly, disabled, and uneditable form elements 2011-09-02 21:54:11 -07:00
Jacob Thornton 3c9c85b1ed Merge branch 'js-examples' into 1.3-wip
Conflicts:
	bootstrap-1.2.0.css
2011-09-02 21:06:49 -07:00
Jacob Thornton 41242b5ce6 more js chagnes 2011-09-02 21:06:20 -07:00
Jacob Thornton 0e13f8dca1 Merge branch 'master' of github.com:twitter/bootstrap into js-examples
Conflicts:
	bootstrap-1.2.0.css
	bootstrap-1.2.0.min.css
	lib/patterns.less
	lib/scaffolding.less
2011-09-02 21:04:25 -07:00
Mark Otto c4481b54a8 improve CSS properties for centering content, the container, and fluid container so as to not override properties where possible 2011-09-02 21:00:01 -07:00
Jacob Thornton 2589c0ac4e welcome to 1.2.0 2011-09-02 15:07:12 -07:00
Mark Otto 298e1b59bb fix broken checkbox in ie7 2011-09-02 12:46:47 -07:00
Mark Otto 2f4c84bba9 remove rounded corners on buttons from IE9 so gradients don't bleed out 2011-09-02 12:35:41 -07:00
Mark Otto cb244d5d51 fix docs.css spacing, add gradient support for ie9 back 2011-09-02 12:31:14 -07:00
Mark Otto e0722fcb1b cleanup docs and fix gradient in masthead 2011-09-02 12:24:28 -07:00
Mark Otto 8c1e60c638 add reset filter to preboot for turning off gradients in IE when necessary; make :disabled [disabled] for crossbrowser usage 2011-09-02 12:19:43 -07:00
Mark Otto ac57331323 resolve 2011-09-02 12:02:36 -07:00
Mark Otto b9a53b1468 button tweaks 2011-09-02 12:02:20 -07:00
Jacob Thornton 60409660d7 \9 for 8 or less ie 2011-09-02 12:01:41 -07:00
Mark Otto 6638f87f50 resolve conflicts 2011-09-02 11:54:17 -07:00
Mark Otto 62f8916407 update the file input to undo the damage of the generic input selector 2011-09-02 11:53:58 -07:00
Jacob Thornton db43777ddf Merge branch '1.2-wip' of github.com:twitter/bootstrap into 1.2-wip
Conflicts:
	bootstrap-1.2.0.css
	bootstrap-1.2.0.min.css
2011-09-02 11:49:41 -07:00
Jacob Thornton 3f242bc70c Merge branch 'master' of github.com:twitter/bootstrap into 1.2-wip
Conflicts:
	bootstrap-1.2.0.css
2011-09-02 11:49:03 -07:00
Mark Otto a4dc2c8955 merge in master after merging a pull request, add comment 2011-09-02 09:52:33 -07:00
Mark Otto f29c8abcbb Merge pull request #138 from pthrasher/master
Fix for popover issue from #136
2011-09-02 09:51:32 -07:00
pthrasher 55698b303d ran make build 2011-09-02 12:48:32 -04:00
Mark Otto b18633ee14 cleanup and tweaks 2011-09-02 09:48:31 -07:00
pthrasher 5960afc349 incorporated idea from @markdotto in #138 2011-09-02 12:45:03 -04:00
Mark Otto 3f22925144 remove fixed width from topbar form to allow for applying classes to resize it 2011-09-02 09:35:26 -07:00
pthrasher ce1d1c2146 ran make build, issues #136 and #138 2011-09-02 11:19:05 -04:00
pthrasher e6ffd3a86f Fix for issue #136. Now nests fine in both layouts. 2011-09-02 10:43:26 -04:00
Mark Otto db830140ee add old dropdown support to tabs dropdowns 2011-09-02 01:03:16 -07:00
Mark Otto 411e324340 fix dropdown bug, remove second topbar from docs now 2011-09-02 00:58:07 -07:00
Mark Otto 46e4fb3133 remove active state from buttons by moving the :active before :disabled 2011-09-02 00:56:03 -07:00
Mark Otto 251882892f resolve conflicts 2011-09-02 00:52:22 -07:00
Mark Otto fa94b264fa add temp second topbar to nav section, fix it's compatibility issues 2011-09-02 00:50:05 -07:00
Jacob Thornton 2a5d829c4a add doc styles back to topbar-inner 2011-09-02 00:47:06 -07:00
Jacob Thornton 813c55489f fix for dropdown 2011-09-02 00:42:22 -07:00
Jacob Thornton 75afad4325 remake 2011-09-02 00:32:57 -07:00
Jacob Thornton ec82b613d3 Merge branch '1.2-wip' of github.com:twitter/bootstrap into 1.2-wip
Conflicts:
	bootstrap-1.2.0.css
	bootstrap-1.2.0.min.css
	lib/patterns.less
2011-09-02 00:32:09 -07:00
Jacob Thornton 462287e25e div > ul ftw 2011-09-02 00:31:19 -07:00
Mark Otto 5ef4519ca8 move comment so less compiles 2011-09-02 00:29:54 -07:00
Mark Otto 1b06f3e84e resolve conflict 2011-09-02 00:29:27 -07:00
Mark Otto 479e0ccd6b add backwards compatability for dropdowns in topbar 2011-09-02 00:28:54 -07:00
Jacob Thornton c098225cd5 this works O_O 2011-09-02 00:26:58 -07:00
Jacob Thornton 3f1706f5f6 > seems to work O_O 2011-09-02 00:21:55 -07:00
Jacob Thornton 0ed544a82e backwards compat for old nav o_O 2011-09-02 00:17:13 -07:00
Mark Otto 02abdd6037 remove inset shadow from disabled buttons 2011-09-02 00:02:44 -07:00
Jacob Thornton 0159524413 Merge branch '1.2-wip' of github.com:twitter/bootstrap into 1.2-wip
Conflicts:
	bootstrap-1.2.0.css
2011-09-01 22:54:59 -07:00
Jacob Thornton 72da5dd54d for html5 style all inputs -- then unstyle checkbox, radio, button, reset, submit 2011-09-01 22:53:24 -07:00
Mark Otto 0cb6804b69 merging in remote and recompiling 2011-08-31 16:27:28 -07:00
Mark Otto 6258832776 spelling mistakes and undo of one comment 2011-08-31 16:26:47 -07:00
Jacob Thornton f6a4dd95b6 try daves background thing again... 2011-08-31 10:55:53 -07:00
Jacob Thornton 90d174a34d Merge branch 'master' of github.com:twitter/bootstrap into 1.2-wip
Conflicts:
	README.md
	bootstrap-1.2.0.css
2011-08-30 23:37:46 -07:00
Jacob Thornton 4fb1c5bd4b rename all 1.1.1 stuff -> 1.2.0 and remove templates dir and fluid.html 2011-08-30 23:34:19 -07:00
Jacob Thornton 588cb1c06d revert dhg mdo suggestion for fixing ie 2011-08-30 23:25:37 -07:00
Jacob Thornton 49e343c464 ie7 background toggle open 2011-08-30 23:08:34 -07:00
Jacob Thornton 2ed869c2ee remove * hack for ie7 + remove -1 margin bug for ie7 2011-08-30 23:03:01 -07:00
Mark Otto 44b18f4911 Merge pull request #126 from DHS/fix-select-labels
Fixed duplicate element ids in documentation
2011-08-30 18:26:11 -07:00
Mark Otto 89b5fd949b Merge pull request #125 from DHS/readme-spelling
Fixed readme spelling mistake, closes #123
2011-08-30 18:25:32 -07:00
Mark Otto ed1139e838 change type of comment 2011-08-30 08:27:55 -07:00
David Haywood Smith 55022228bc Fixed duplicate element ids
Also updated labels where required
2011-08-30 11:47:40 +01:00
David Haywood Smith a16dfb735a Fixed readme spelling mistake, closes #123 2011-08-30 11:19:46 +01:00
Jacob Thornton afec7859cc fix background color for ie7 -- negative margin bug still there though ;_; 2011-08-29 22:43:40 -07:00
Jacob Thornton efd6fd609c fix open ui for ie 7 2011-08-29 22:36:05 -07:00
Jacob Thornton fc0471a450 lulz nbsp 2011-08-29 22:34:13 -07:00
Jacob Thornton e8f1ae0073 btn's need &nbps; seperating them for ie7 2011-08-29 21:52:45 -07:00
Mark Otto d42a00c19d remove repeated table reset 2011-08-29 21:42:44 -07:00
Mark Otto 7070d44aed adding more grid docs 2011-08-29 21:41:32 -07:00
Jacob Thornton 589204803b remove duplicate defined btn class O_O 2011-08-29 21:41:12 -07:00
Mark Otto f17fc367f7 le merging conflicts 2011-08-29 21:26:53 -07:00
Mark Otto 654cc5ad3f resolving deltas between that epic css selector specifity pull request and latest changes here 2011-08-29 21:24:00 -07:00
Jacob Thornton b4a84e1e7d window -> body for ie 2011-08-28 17:52:55 -07:00
Jacob Thornton 7b041f8419 move removeClass up 2011-08-28 17:52:00 -07:00
Jacob Thornton 58cc70531a drop top position a bit 2011-08-28 17:50:14 -07:00
Jacob Thornton 484ed088fc blah 2011-08-28 17:45:57 -07:00
Jacob Thornton ebff554430 remake with opacity thin 2011-08-28 17:42:09 -07:00
Jacob Thornton 9059a72bf8 try using tricker opacity thingy 2011-08-28 17:40:25 -07:00
Jacob Thornton d8d6e40097 listen to delegation for ie 2011-08-28 17:32:31 -07:00
Jacob Thornton f1d17223b8 wrap for domready 2011-08-28 16:47:38 -07:00
Jacob Thornton a0cb72f9ae change window to 'body' 2011-08-28 16:36:44 -07:00
Jacob Thornton 1a5f8205ff alpha for ie 2011-08-28 16:23:57 -07:00
Jacob Thornton 0b1d2cc03c change backdrop for ie 2011-08-28 14:06:37 -07:00
Jacob Thornton c263504709 add google code prettify 2011-08-28 13:30:04 -07:00
Jacob Thornton ed96f181c8 add topbar dropdown js 2011-08-27 21:46:50 -07:00
Jacob Thornton e91353f362 blahsdfasldflaskdfj 2011-08-27 18:09:03 -07:00
Jacob Thornton a00b849a51 rebuild and change data-attr to have priority over options 2011-08-27 18:05:10 -07:00
Jacob Thornton e05d39d4cc make generic fade animation css class 2011-08-27 18:03:01 -07:00
Jacob Thornton 2ee7c20692 adds popover js 2011-08-27 17:22:49 -07:00
Mark Otto 650251228b redefine the grid to use attribute selectors with css regex, make previously fixed grid values use variables we use elsewhere 2011-08-27 15:30:18 -07:00
Jacob Thornton 038a9809c4 remake 2011-08-27 13:06:01 -07:00
Jacob Thornton 11721f376d add boostrap-twipsy and bootstrap-alerts 2011-08-27 13:03:06 -07:00
Mark Otto 315af8e18b Edited readme to include the versioning approach we'll be striving to use 2011-08-27 00:49:48 -07:00
Jacob Thornton b68b53dca2 rename escape method 2011-08-27 00:42:20 -07:00
Jacob Thornton 1cbda504a0 clean up show logic 2011-08-27 00:28:58 -07:00
Jacob Thornton db706a2596 white space junk 2011-08-27 00:19:05 -07:00
Jacob Thornton 52c624079e sometimes i get emotional about semicolons 2011-08-27 00:07:42 -07:00
Jacob Thornton 24c4ca0391 display none for inactive modals 2011-08-27 00:03:11 -07:00
Jacob Thornton c26eb016fb starting up bootstrap-js... 2011-08-26 23:57:35 -07:00
Mark Otto b552281558 make dropdowns in the topbar black again 2011-08-26 23:18:39 -07:00
Mark Otto 4f67e135dc adding dropdowns to tabs by refactoring the shizzzz out of them 2011-08-26 20:38:23 -07:00
Jacob Thornton df8b65445c small typo in offset generation 2011-08-26 19:31:50 -07:00
Mark Otto b9c9f1d8d6 Merge remote branch 'origin/master' into 1.2-wip 2011-08-26 16:08:03 -07:00
Jacob Thornton 842683b6df make and publish 1.1.1 2011-08-26 15:21:39 -07:00
Jacob Thornton a63fb4d234 Merge branch '1.1.1-wip' 2011-08-26 15:21:20 -07:00
Jacob Thornton 273659c8e7 update everything to 1.1.1 2011-08-26 11:13:47 -07:00
Jacob Thornton 5193619ab0 clean up redundant google prettify code 2011-08-26 10:53:21 -07:00
Mark Otto fc1118c87c bump less version number in docs 2011-08-26 10:09:57 -07:00
Mark Otto fd844c6d5d Merge pull request #89 from karthikv/clean-up
Made JavaScript Unobtrusive and Removed Unused Class
2011-08-26 09:54:08 -07:00
Mark Otto ebfe465b28 Merge pull request #94 from weslly/master
fixed background-color for disabled links in pagination
2011-08-26 09:53:22 -07:00
Weslly Honorato 9e0a526a66 fixed background-color for disabled links in pagination ('none' isn't a valid value for background-color property http://www.w3.org/TR/CSS2/colors.html#propdef-background-color) 2011-08-26 13:30:38 -03:00
Karthik Viswanathan 0a34a6d4b2 Made JavaScript unobtrusive by factoring out prettyPrint() to application.js. Also removed unused class from hero demo. 2011-08-26 00:00:05 -07:00
Mark Otto 0fcda16209 be more specific in gradient mixin 2011-08-25 23:31:16 -07:00
Mark Otto 74a18b341c updated le docs to include note about topbar and padding on box (issue #86) and add snippet about @basefont and @baseline to type section 2011-08-25 23:25:21 -07:00
Mark Otto ab77d7abd3 spacing 2011-08-25 23:19:01 -07:00
Mark Otto c715584428 pull table class from docs again 2011-08-25 23:18:15 -07:00
Mark Otto 8c2df3ac3a resolve conflicts in merging in other branch 2011-08-25 23:12:29 -07:00
Mark Otto dd4bb95c2d updated docs for b/i tags based on issue #62 2011-08-25 23:10:18 -07:00
Mark Otto 0758f64045 updated classnames in the docs for the alerts, updated colors on error and info alerts/buttons 2011-08-25 22:52:21 -07:00
Mark Otto cf47ef0b2e Merge pull request #87 from igorbozato/patch-1
.sidebar and .content in fluid layouts don't need to be divs
2011-08-25 22:44:31 -07:00
Igor Bozato 9a00619d6e .sidebar and .content in fluid layouts don't need to be divs 2011-08-26 03:17:38 -03:00
Mark Otto 7d821f18ac resolve issue #87 in this branch 2011-08-25 22:44:23 -07:00
Mark Otto ce615d016a merged in my pending changes from 1.2-wip branch, resolve diffs as best as i could, update docs and alerts to use original classes, updated docs to include smaller section for layouts 2011-08-25 22:41:45 -07:00
Mark Otto a5e6265726 remove common-table class in the docs 2011-08-25 15:53:25 -07:00
Jacob Thornton 04b8e667d0 clean up btn selectors a bit 2011-08-25 13:52:04 -07:00
Jacob Thornton 0e9d7c1c4d update alert and button styling aproach 2011-08-25 13:31:46 -07:00
Mark Otto 50f484eed6 big update to change the alerts, normal and block level, to have simpler css and new colors independent of the base color scheme 2011-08-25 02:00:07 -07:00
Mark Otto 2d99e3f8a6 base import of normalize into the reset css, tweaks to selector specificity across the board 2011-08-25 00:13:40 -07:00
Jacob Thornton 8368cfd523 add opera to browser support 2011-08-24 19:55:11 -07:00
Jacob Thornton 0739583a46 optimize btn for outputted code + line-height: normal for firefox with adjusted padding 2011-08-24 15:55:08 -07:00
Jacob Thornton 7d7156bff9 optimized grid system from @necolas 2011-08-23 20:16:39 -07:00
Jacob Thornton 38999118ac Merge pull request #71 from DHS/fix-select-labels
Fixed empty for fields on select labels in documentation
2011-08-23 19:52:27 -07:00
David Haywood Smith 70bac36a22 Fixed empty for fields on select labels
Also added id fields to selects where needed
2011-08-24 00:05:07 +01:00
Jacob Thornton 0bfce13983 add delete button + give .btn cursor:pointer 2011-08-22 23:53:02 -07:00
Jacob Thornton 411b90e4ff comment out button method with // so less doesn't compile it into source 2011-08-22 22:02:31 -07:00
Jacob Thornton 40aba9ca1d append checkbox to password input #36 2011-08-22 21:51:17 -07:00
Jacob Thornton 899c6f8d12 remake 2011-08-22 21:47:34 -07:00
Jacob Thornton 8a27d281a9 goodbye -ms-filter. 2011-08-22 21:31:30 -07:00
Jacob Thornton 9a91614882 remove templates 2011-08-22 13:14:54 -07:00
Jacob Thornton 2575547b15 rename examples dir 2011-08-22 13:12:37 -07:00
Mark Otto d324a24268 adding first template to the repo for a generic website page 2011-08-22 12:50:30 -07:00
Mark Otto 16064bed2d Bugfix and copy changes 2011-08-22 12:34:55 -07:00
Jacob Thornton 112f7eff8a remake 2011-08-22 11:29:01 -07:00
Jacob Thornton 8497d935ad Merge branch 'master' of github.com:twitter/bootstrap 2011-08-22 11:27:21 -07:00
Jacob Thornton 621f358dc0 fix copy for ie in docs 2011-08-22 11:26:04 -07:00
Mark Otto ee6402b6c8 Merge pull request #51 from Tigraine/master
Fixed syntax error in patterns.less
2011-08-22 09:35:09 -07:00
Mark Otto ebec320395 Merge pull request #58 from sankage/master
fixed #10: color-stop() function removed, @colorStop fixed for moz to be unitless
2011-08-22 09:34:39 -07:00
sankage 6145fd2931 changed @colorStop to be unitless 2011-08-22 18:19:39 -03:00
sankage e45dbf52de fixed color-stop for opera, ie10, w3c, new webkit 2011-08-22 18:01:11 -03:00
Daniel Hoelbling 96ec9ee083 Fixed a syntax error preventing less compilation with dotless 2011-08-22 09:36:35 +02:00
Jacob Thornton fef3672ad3 update copy for browser support 2011-08-21 22:48:01 -07:00
Jacob Thornton 3ef86aa703 v1.1.0 2011-08-21 22:30:39 -07:00
Jacob Thornton 109027433d finish cleaning up ie 7-8 support 2011-08-21 22:26:54 -07:00
Jacob Thornton f408f5c29b update few things for ie 2011-08-21 22:13:35 -07:00
Jacob Thornton b62b15c5e3 link docs to correct css 2011-08-21 22:05:49 -07:00
Jacob Thornton 25e21bab96 fix crappy merge 2011-08-21 22:05:07 -07:00
Jacob Thornton e11c49cc48 Merge branch 'master' of github.com:twitter/bootstrap
Conflicts:
	bootstrap-1.0.0.css
	bootstrap-1.0.0.min.css
	docs/index.html
2011-08-21 21:42:56 -07:00
Jacob Thornton b54dc13535 Merge branch 'misc_css_fixes'
Conflicts:
	bootstrap-1.0.0.css
	lib/patterns.less
2011-08-21 21:42:10 -07:00
Jacob Thornton 985ee6455a remake 2011-08-21 21:30:41 -07:00
Jacob Thornton b39a9a680d go with greyed out next 2011-08-21 21:30:19 -07:00
Jacob Thornton dd92f4e6e2 hide overflow for ie 7 2011-08-21 21:26:15 -07:00
Jacob Thornton d8d12e20b4 fix border for popover ie6-7 2011-08-21 21:20:51 -07:00
Jacob Thornton d90136b585 remove ie8 hack 2011-08-21 21:18:36 -07:00
Jacob Thornton 8ebdf4483f ie-6/7 hack for border colors 2011-08-21 21:09:54 -07:00
Jacob Thornton 1db73edc5f fix conflict 2011-08-21 21:06:09 -07:00
Jacob Thornton 17f9aca698 1 more space for disabled 2011-08-21 20:57:09 -07:00
Mark Otto f169c99f72 more tweaks to resolve some missed conflicts 2011-08-21 20:56:06 -07:00
Jacob Thornton c6b162f6ca nonbreaking spaces for ie7 after buttons :/ 2011-08-21 20:53:54 -07:00
Mark Otto 0df17f06d8 re-add div to error class 2011-08-21 20:53:52 -07:00
Mark Otto 5668723db2 resolve conflicts again and rebuild 2011-08-21 20:51:25 -07:00
Mark Otto 23ec21d049 resolve conflicts 2011-08-21 20:51:13 -07:00
Mark Otto a98d2cccb8 merge in master, resolve conflicts 2011-08-21 20:47:24 -07:00
Mark Otto 5cc933cccc upated compiled 2011-08-21 20:44:10 -07:00
Jacob Thornton 6fff171b55 remake with latest 2011-08-21 20:43:05 -07:00
Jacob Thornton 2f6f9ec6e0 Merge branch 'misc_css_fixes' of github.com:twitter/bootstrap into misc_css_fixes
Conflicts:
	lib/forms.less
2011-08-21 20:42:54 -07:00
Jacob Thornton 0e92acd9ff more little ie6-7 hacks :/ 2011-08-21 20:41:34 -07:00
Mark Otto b59b82b032 updated to resolve conflicts 2011-08-21 20:38:57 -07:00
Mark Otto 34a19915f4 resolve conflicts 2011-08-21 20:33:54 -07:00
Mark Otto 027538e66d fix topbar dropdown active and hover states 2011-08-21 20:30:58 -07:00
Mark Otto f630615d26 remove tags from form selectors 2011-08-21 20:27:19 -07:00
Jacob Thornton 842ad01fce fix color for alert blocks in ie6-7 2011-08-21 20:21:59 -07:00
Mark Otto 59aea3bafd give popovers and modals border colors you can see in IE8 and down 2011-08-21 20:17:10 -07:00
Mark Otto 12efeccdf7 tweak pagination styles to include better border and box shadow 2011-08-21 20:12:18 -07:00
Mark Otto c705521e08 rebuild and updated tables to remove tags from selectors 2011-08-21 20:07:15 -07:00
Mark Otto 80e0e9c413 updated list html, tweaks to patterns 2011-08-21 20:03:12 -07:00
Jacob Thornton 60fc4eb7b9 touch up less 2011-08-21 19:59:43 -07:00
Jacob Thornton f17b2633ad fix btn borders ie7/ie8 2011-08-21 19:56:43 -07:00
Jacob Thornton c3143b4729 Fix for alert box gradients in IE7/8 2011-08-21 19:49:31 -07:00
Jacob Thornton 48c3c6f1b6 make topbar .fill wrap 2011-08-21 18:14:53 -07:00
Jacob Thornton e1e4ceee3f fix disabled button for ie 8 and below 2011-08-21 18:07:47 -07:00
Mark Otto 2aeed35f24 pull filter gradients out completely because IE can't render them correctly in half of all instances and they are performance problems with them; tweak alert message styles, particularly close button; 2011-08-21 17:30:45 -07:00
Mark Otto 254e70550e remove 60px top margin on body and tweak a few other things 2011-08-21 17:06:37 -07:00
Jacob Thornton 22dbf9d8e4 fix up the modals for ie8 2011-08-21 13:36:06 -07:00
Jacob Thornton 0ca33aa1ba darken shadow for ie 2011-08-21 13:27:17 -07:00
Jacob Thornton 7c45f6cc7f define button border size for ie 2011-08-21 13:26:01 -07:00
Jacob Thornton 96af4f6acf add "shadows" for ie buttons 2011-08-21 13:22:39 -07:00
Jacob Thornton de494200fc remake 2011-08-21 13:04:36 -07:00
Jacob Thornton d019c677ad no gradients on alerts for <= ie8 2011-08-21 13:04:09 -07:00
Jacob Thornton f8e9c6cf4e ie hack 2011-08-21 12:48:29 -07:00
Jacob Thornton 8ec7566f8b rgba breaks whole def 2011-08-21 12:42:43 -07:00
Jacob Thornton 7e67ddf788 another attempt at getting ie border thign working 2011-08-21 12:40:47 -07:00
Jacob Thornton 5b505aaf97 remake junk 2011-08-21 12:35:42 -07:00
Jacob Thornton d671d566e1 more ie border junk 2011-08-21 12:35:14 -07:00
Jacob Thornton 971336c808 don't display right border for ie 2011-08-21 12:31:55 -07:00
Jacob Thornton 6fa7186155 remake with border fix 2011-08-21 12:27:28 -07:00
Jacob Thornton 2435b6417a give pagination nav borders in ie 2011-08-21 12:26:51 -07:00
Jacob Thornton b18e76f990 introduce .fill class to top-nav for overflow bug 2011-08-21 12:19:01 -07:00
Jacob Thornton 1d96417201 try only -ms-filter 2011-08-21 12:06:22 -07:00
Jacob Thornton c9f6e18f4a remake 2011-08-21 12:03:20 -07:00
Jacob Thornton bb94457b4b blah 2011-08-21 12:01:27 -07:00
Jacob Thornton 5c1d364740 remake 2011-08-21 12:00:10 -07:00
Jacob Thornton d97fb89480 just disable filter 2011-08-21 11:59:50 -07:00
Jacob Thornton 612e5c3c9e add # to color 2011-08-21 11:57:25 -07:00
Jacob Thornton 0e8e30bf1d ie8 dropdown tweaks 2011-08-21 11:56:16 -07:00
Jacob Thornton 2203ba3df1 ie Xp 2011-08-21 11:53:06 -07:00
Jacob Thornton 3d73e674dd more debugging of ie nav display issues 2011-08-21 11:45:24 -07:00
Jacob Thornton 1fc4491cd6 simplify drop down logic - fix color of search hover for ie 2011-08-21 11:22:33 -07:00
Mark Otto 6db39d0ec3 fix error styles a bit on stacked form fields 2011-08-20 23:56:32 -07:00
Mark Otto 79bdb80543 fix bg-clip property's old value, move from padding to padding-box 2011-08-20 23:47:23 -07:00
Mark Otto 4512cc5652 updated compiled and minified, fix bug where links didn't inherit font weight 2011-08-20 23:45:01 -07:00
Mark Otto e179f0acb3 more spacing and commenting 2011-08-20 23:38:00 -07:00
Mark Otto c7c3356101 more spacing tweaks 2011-08-20 23:32:37 -07:00
Mark Otto aaf9f752c4 docs spacing, spare divs in a few places, updating css spacing 2011-08-20 23:25:22 -07:00
sankage f824009e20 mozilla doesn't support color-stop() function in gradients 2011-08-21 02:16:04 -03:00
Mark Otto 14b77f3a21 remove rogue ul 2011-08-20 21:25:21 -07:00
Mark Otto ffd851d93a fixing conflict to merge in copy changes 2011-08-20 21:14:57 -07:00
Mark Otto 5a2d1abfbf Merge pull request #30 from sankage/master
color-stop() not supported in mozilla gradients
2011-08-20 21:06:01 -07:00
Mark Otto 2fcb67777a merging in misc fixes to docs and css from other branch 2011-08-20 20:19:03 -07:00
Mark Otto a3caafb97e updated compiled css 2011-08-20 19:00:56 -07:00
Mark Otto 72899a4ee8 updated docs to fix inconsistent display of code elements, update scaffolding to fix padding issue on fluid containers, add placeholder hero unit in patterns for future use, continue to refactor some rgba to hex values 2011-08-20 18:58:12 -07:00
Matthew Pennell 7852619e32 Fix broken quotes and bizarre update of HTML5 to 6. 2011-08-20 23:16:15 +02:00
Matthew Pennell 52e9f7eb6e Corrected semantic definitions of strong, em and b in Typography section. 2011-08-20 23:08:58 +02:00
Jacob Thornton fa2bde0520 Merge pull request #21 from dliuzzi/patch-1
Fixed a couple of missing parentheses.
2011-08-20 13:54:40 -07:00
Daniel Liuzzi 536529c255 Fixed a couple of missing parentheses. 2011-08-21 06:27:06 +03:00
sankage ee6f3077c0 serif font stack would default to sans-serif 2011-08-20 07:12:39 -03:00
Mark Otto 261a473a72 adding more details on browser support, adding snippet of about text, changed p tags to have half the bottom margin 2011-08-20 01:51:06 -07:00
Mark Otto 4a567fcb10 updated docs and docs css to not use rgba colors on the layout modules so IE can see that shiz 2011-08-20 01:11:48 -07:00
Jacob Thornton 9b0235dd7c Merge pull request #16 from sankage/master
Serif font stack defaults to sans-serif font
2011-08-20 00:20:59 -07:00
Mark Otto 4f2b0d8aa4 fix topbar in docs as well 2011-08-19 22:32:14 -07:00
Mark Otto fc3324f88b fix spacing and confusion in example h1 heading with small tag 2011-08-19 22:31:03 -07:00
Mark Otto 66fea662e4 fix typo 2011-08-19 22:29:10 -07:00
Mark Otto 3f388ef07a updates to the topbar markup and css to remove the logo classname and simplify the selectors for it 2011-08-19 22:28:22 -07:00
Mark Otto 6dcfe94bab remove the cite tag from blockquote since we pulled it from the docs 2011-08-19 22:15:57 -07:00
Jacob Thornton f1a6972281 fix drag knob in firefox #7 2011-08-19 20:37:12 -07:00
Jacob Thornton 73f1bcf717 Simpler clearfix #2 http://nicolasgallagher.com/micro-clearfix-hack/ 2011-08-19 20:20:48 -07:00
Jacob Thornton b342c4cca3 Simplification for table header generated-content arrow #9 2011-08-19 19:52:07 -07:00
Jacob Thornton 630b874dbd small or cite tag for Blockquotes 2011-08-19 19:38:44 -07:00
Jacob Thornton 962acdc0d8 Merge pull request #12 from rafBM/master
Give docs page some ellipsis and apostrophe love
2011-08-19 19:20:11 -07:00
Rafaël Blais Masson d2515876f1 Lovely ellipses and apostrophes. 2011-08-19 21:01:23 -04:00
Jacob Thornton 4d0a80bdef Merge branch 'master' of github.com:twitter/bootstrap 2011-08-19 14:24:26 -07:00
Jacob Thornton 581f2563b0 remove type attr from docs 2011-08-19 14:23:41 -07:00
Mark Otto 0af179fdf6 Oops, adding rel=stylesheet back to docs page 2011-08-19 13:20:07 -07:00
Mark Otto e8c3b4e5c7 update docs for correct usage of address, emphasis, and more 2011-08-19 13:19:07 -07:00
Jacob Thornton 15ad86b713 Merge branch 'master' of github.com:twitter/bootstrap 2011-08-19 12:15:15 -07:00
Jacob Thornton 19bbc01f2e add rel="stylesheet" to doc text 2011-08-19 12:14:43 -07:00
Mark Otto a3b09530fb Merge pull request #1 from nimbupani/patch-2
adding o/ms gradient and unprefixed one
2011-08-19 11:56:31 -07:00
Divya Manian 36b41f2e7a adding o/ms gradient and unprefixed one 2011-08-19 12:53:19 -07:00
Jacob Thornton 1a805151da clean up readme 2011-08-19 11:25:19 -07:00
Chris Aniszczyk 3ad9febe04 Edited README.md via GitHub 2011-08-18 16:58:49 -07:00
Chris Aniszczyk 9de97057ec Cleaned up README.md - modified mailing list and google group 2011-08-18 16:58:22 -07:00
Jacob Thornton 088b81f7cd update readme with info about makefile for devs 2011-08-18 14:45:07 -07:00
Mark Otto ae02a8a300 Merge branch 'master' of http://git.local.twitter.com/bootstrap 2011-08-18 11:39:22 -07:00
Mark Otto bd1d389751 tweaks around names and such 2011-08-18 11:37:47 -07:00
Jacob Thornton 6d57f8a3db add google group 2011-08-18 11:37:18 -07:00
Jacob Thornton f376de1319 fix local docs link + remove whitespace in gitignore 2011-08-18 11:27:45 -07:00
Chris Aniszczyk b80d118c50 Edited LICENSE via GitHub 2011-08-18 09:55:49 -07:00
Mark Otto 799a14d1cb capitalize Less instead of using all caps 2011-08-17 22:40:50 -07:00
Mark Otto 8ba5a29456 capitalize github properly, fix url for compiled css 2011-08-17 22:38:14 -07:00
Mark Otto 68007404a8 Merge branch 'master' of http://git.local.twitter.com/bootstrap 2011-08-17 22:26:25 -07:00
Mark Otto 5c687ee393 remove ds stores 2011-08-17 22:26:22 -07:00
Jacob Thornton 07837a1c47 update docs with gh-pages 2011-08-17 11:31:20 -07:00
Jacob Thornton 9ec3bdd2d8 fix doc link in readme 2011-08-16 23:15:45 -07:00
Jacob Thornton f53ddcc6fe add link to docs 2011-08-16 23:14:09 -07:00
Jacob Thornton 7ecfc99a14 remove ds_store add an ugly gitignore file. boo. 2011-08-16 23:07:35 -07:00
Jacob Thornton 6d0b083b7d update whitspace and comment styles 2011-08-16 22:58:01 -07:00
57 changed files with 11447 additions and 4620 deletions
Vendored
BIN
View File
Binary file not shown.
+3
View File
@@ -0,0 +1,3 @@
*~
.DS_Store
thumbs.db
+150 -162
View File
@@ -1,188 +1,176 @@
Copyright 2011 Twitter, Inc.
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this work except in compliance with the License.
You may obtain a copy of the License below, or at:
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
http://www.apache.org/licenses/LICENSE-2.0
1. Definitions.
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
1. Definitions.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
+6 -5
View File
@@ -1,13 +1,14 @@
VERSION=1.4.0
DATE=$(shell DATE)
BOOTSTRAP = ./bootstrap-1.0.0.css
BOOTSTRAP_MIN = ./bootstrap-1.0.0.min.css
BOOTSTRAP = ./bootstrap.css
BOOTSTRAP_MIN = ./bootstrap.min.css
BOOTSTRAP_LESS = ./lib/bootstrap.less
LESS_COMPESSOR ?= `which lessc`
LESS_COMPRESSOR ?= `which lessc`
WATCHR ?= `which watchr`
build:
@@if test ! -z ${LESS_COMPESSOR}; then \
sed 's/@DATE/'"${DATE}"'/' ${BOOTSTRAP_LESS} >${BOOTSTRAP_LESS}.tmp; \
@@if test ! -z ${LESS_COMPRESSOR}; then \
sed -e 's/@VERSION/'"v${VERSION}"'/' -e 's/@DATE/'"${DATE}"'/' <${BOOTSTRAP_LESS} >${BOOTSTRAP_LESS}.tmp; \
lessc ${BOOTSTRAP_LESS}.tmp > ${BOOTSTRAP}; \
lessc ${BOOTSTRAP_LESS}.tmp > ${BOOTSTRAP_MIN} --compress; \
rm -f ${BOOTSTRAP_LESS}.tmp; \
+65 -19
View File
@@ -3,6 +3,8 @@ TWITTER BOOTSTRAP
Bootstrap is Twitter's toolkit for kickstarting CSS for websites, apps, and more. It includes base CSS styles for typography, forms, buttons, tables, grids, navigation, alerts, and more.
To get started -- checkout http://twitter.github.com/bootstrap!
Usage
-----
@@ -11,23 +13,77 @@ You can use Twitter Bootstrap in one of two ways: just drop the compiled CSS int
Here's what the LESS version looks like:
<link rel="stylesheet/less" type="text/css" href="lib/bootstrap.less">
<script src="less.js" type="text/javascript"></script>
``` html
<link rel="stylesheet/less" type="text/css" href="lib/bootstrap.less">
<script src="less.js" type="text/javascript"></script>
```
Or if you prefer, the standard css way:
<link rel="stylesheet" type="text/css" href="bootstrap-1.0.0.css">
``` html
<link rel="stylesheet" type="text/css" href="bootstrap.css">
```
For more info, refer to the docs!
Reporting bugs
--------------
Versioning
----------
Please create an issue here on github! :P
For transparency and insight into our release cycle, and for striving to maintain backwards compatibility, Bootstrap will be maintained under the Semantic Versioning guidelines as much as possible.
Releases will be numbered with the follow format:
`<major>.<minor>.<patch>`
And constructed with the following guidelines:
* Breaking backwards compatibility bumps the major
* New additions without breaking backwards compatibility bumps the minor
* Bug fixes and misc changes bump the patch
For more information on SemVer, please visit http://semver.org/.
AUTHORS
Bug tracker
-----------
Have a bug? Please create an issue here on GitHub!
https://github.com/twitter/bootstrap/issues
Twitter account
---------------
Keep up to date on announcements and more by following Bootstrap on Twitter, <a href="http://twitter.com/TwBootstrap">@TwBootstrap</a>.
Mailing list
------------
Have a question? Ask on our mailing list!
twitter-bootstrap@googlegroups.com
http://groups.google.com/group/twitter-bootstrap
Developers
----------
We have included a makefile with convenience methods for working with the bootstrap library.
+ **build** - `make build`
This will run the less compiler on the bootstrap lib and generate a bootstrap.css and bootstrap.min.css file.
The lessc compiler is required for this command to run.
+ **watch** - `make watch`
This is a convenience method for watching your less files and automatically building them whenever you save.
Watchr is required for this command to run.
Authors
-------
**Mark Otto**
@@ -41,19 +97,9 @@ AUTHORS
+ http://github.com/fat
Copyright and License
License
---------------------
Copyright 2011 Twitter, Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this work except in compliance with the License.
You may obtain a copy of the License in the LICENSE file, or at:
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Licensed under the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0
-1784
View File
File diff suppressed because it is too large Load Diff
-215
View File
@@ -1,215 +0,0 @@
html,body{margin:0;padding:0;}
h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,cite,code,del,dfn,em,img,q,s,samp,small,strike,strong,sub,sup,tt,var,dd,dl,dt,li,ol,ul,fieldset,form,label,legend,button,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;border:0;font-weight:normal;font-style:normal;font-size:100%;line-height:1;font-family:inherit;}
table{border-collapse:collapse;border-spacing:0;}
ol,ul{list-style:none;}
q:before,q:after,blockquote:before,blockquote:after{content:"";}
header,section,footer,article,aside{display:block;}
.clearfix{zoom:1;}.clearfix:after{display:block;visibility:hidden;height:0;clear:both;content:".";}
.center-block{display:block;margin:0 auto;}
.container{width:940px;margin:0 auto;zoom:1;}.container:after{display:block;visibility:hidden;height:0;clear:both;content:".";}
.row{zoom:1;}.row:after{display:block;visibility:hidden;height:0;clear:both;content:".";}
.row .span1{float:left;width:40px;margin-left:20px;}.row .span1:first-child{margin-left:0;}
.row .span2{float:left;width:100px;margin-left:20px;}.row .span2:first-child{margin-left:0;}
.row .span3{float:left;width:160px;margin-left:20px;}.row .span3:first-child{margin-left:0;}
.row .span4{float:left;width:220px;margin-left:20px;}.row .span4:first-child{margin-left:0;}
.row .span5{float:left;width:280px;margin-left:20px;}.row .span5:first-child{margin-left:0;}
.row .span6{float:left;width:340px;margin-left:20px;}.row .span6:first-child{margin-left:0;}
.row .span7{float:left;width:400px;margin-left:20px;}.row .span7:first-child{margin-left:0;}
.row .span8{float:left;width:460px;margin-left:20px;}.row .span8:first-child{margin-left:0;}
.row .span9{float:left;width:520px;margin-left:20px;}.row .span9:first-child{margin-left:0;}
.row .span10{float:left;width:580px;margin-left:20px;}.row .span10:first-child{margin-left:0;}
.row .span11{float:left;width:640px;margin-left:20px;}.row .span11:first-child{margin-left:0;}
.row .span12{float:left;width:700px;margin-left:20px;}.row .span12:first-child{margin-left:0;}
.row .span13{float:left;width:760px;margin-left:20px;}.row .span13:first-child{margin-left:0;}
.row .span14{float:left;width:820px;margin-left:20px;}.row .span14:first-child{margin-left:0;}
.row .span15{float:left;width:880px;margin-left:20px;}.row .span15:first-child{margin-left:0;}
.row .span16{float:left;width:940px;margin-left:20px;}.row .span16:first-child{margin-left:0;}
.row .offset1{margin-left:80px !important;}.row .offset1:first-child{margin-left:60px !important;}
.row .offset2{margin-left:140px !important;}.row .offset2:first-child{margin-left:120px !important;}
.row .offset3{margin-left:200px !important;}.row .offset3:first-child{margin-left:180px !important;}
.row .offset4{margin-left:260px !important;}.row .offset4:first-child{margin-left:240px !important;}
.row .offset5{margin-left:320px !important;}.row .offset5:first-child{margin-left:300px !important;}
.row .offset6{margin-left:380px !important;}.row .offset6:first-child{margin-left:360px !important;}
.row .offset7{margin-left:440px !important;}.row .offset7:first-child{margin-left:420px !important;}
.row .offset8{margin-left:500px !important;}.row .offset8:first-child{margin-left:480px !important;}
.row .offset9{margin-left:500px !important;}.row .offset9:first-child{margin-left:480px !important;}
.row .offset10{margin-left:620px !important;}.row .offset10:first-child{margin-left:600px !important;}
.row .offset11{margin-left:680px !important;}.row .offset11:first-child{margin-left:660px !important;}
.row .offset12{margin-left:740px !important;}.row .offset12:first-child{margin-left:720px !important;}
html,body{background-color:#fff;}
body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:18px;color:#808080;text-rendering:optimizeLegibility;}
div.container{width:940px;margin:0 auto;}
div.container-fluid{padding:20px;zoom:1;}div.container-fluid:after{display:block;visibility:hidden;height:0;clear:both;content:".";}
div.container-fluid div.sidebar{float:left;width:220px;}
div.container-fluid div.content{min-width:700px;max-width:1180px;margin-left:240px;}
a{color:#0069d6;text-decoration:none;line-height:inherit;}a:hover{color:#0050a3;text-decoration:underline;}
.btn{display:inline-block;background-color:#e6e6e6;background-repeat:no-repeat;background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(0.25, #ffffff), to(#e6e6e6));background-image:-webkit-linear-gradient(#ffffff, color-stop(0.25, #ffffff), #e6e6e6);background-image:-moz-linear-gradient(#ffffff, color-stop(#ffffff, 0.25), #e6e6e6);padding:4px 14px;text-shadow:0 1px 1px rgba(255, 255, 255, 0.75);color:#333333;font-size:13px;line-height:18px;border:1px solid rgba(0, 0, 0, 0.1);border-bottom-color:rgba(0, 0, 0, 0.25);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2),0 1px 2px rgba(0, 0, 0, 0.05);-moz-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2),0 1px 2px rgba(0, 0, 0, 0.05);box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2),0 1px 2px rgba(0, 0, 0, 0.05);-webkit-transition:0.1s linear all;-moz-transition:0.1s linear all;transition:0.1s linear all;}.btn:hover{background-position:0 -15px;color:#333333;text-decoration:none;}
.btn.primary{background-color:#0064cd;background-repeat:repeat-x;background-image:-khtml-gradient(linear, left top, left bottom, from(#049cdb), to(#0064cd));background-image:-moz-linear-gradient(#049cdb, #0064cd);background-image:-ms-linear-gradient(#049cdb, #0064cd);background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #049cdb), color-stop(100%, #0064cd));background-image:-webkit-linear-gradient(#049cdb, #0064cd);background-image:-o-linear-gradient(#049cdb, #0064cd);-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr='#049cdb', endColorstr='#0064cd', GradientType=0)";filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#049cdb', endColorstr='#0064cd', GradientType=0);background-image:linear-gradient(#049cdb, #0064cd);color:#fff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);}.btn.primary:hover{color:#fff;}
.btn.large{font-size:16px;line-height:28px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;}
.btn.small{padding-right:9px;padding-left:9px;font-size:11px;}
.btn:disabled,.btn.disabled{background-image:none;filter:alpha(opacity=65);-khtml-opacity:0.65;-moz-opacity:0.65;opacity:0.65;cursor:default;}
.btn:active{-webkit-box-shadow:inset 0 3px 7px rgba(0, 0, 0, 0.1),0 1px 2px rgba(0, 0, 0, 0.05);-moz-box-shadow:inset 0 3px 7px rgba(0, 0, 0, 0.1),0 1px 2px rgba(0, 0, 0, 0.05);box-shadow:inset 0 3px 7px rgba(0, 0, 0, 0.1),0 1px 2px rgba(0, 0, 0, 0.05);}
button.btn::-moz-focus-inner,input[type=submit].btn::-moz-focus-inner{padding:0;border:0;}
p{font-size:13px;font-weight:normal;line-height:18px;margin-bottom:18px;}p small{font-size:11px;color:#bfbfbf;}
h1,h2,h3,h4,h5,h6{font-weight:bold;color:#404040;}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{color:#bfbfbf;}
h1{margin-bottom:18px;font-size:30px;line-height:36px;}h1 small{font-size:18px;}
h2{font-size:24px;line-height:36px;}h2 small{font-size:14px;}
h3,h4,h5,h6{line-height:36px;}
h3{font-size:18px;}h3 small{font-size:14px;}
h4{font-size:16px;}h4 small{font-size:12px;}
h5{font-size:14px;}
h6{font-size:13px;color:#bfbfbf;text-transform:uppercase;}
ul,ol{margin:0 0 18px 25px;}
ul ul,ul ol,ol ol,ol ul{margin-bottom:0;}
ul{list-style:disc;}
ol{list-style:decimal;}
li{line-height:18px;color:#808080;}
ul.unstyled{list-style:none;margin-left:0;}
dl{margin-bottom:18px;}dl dt,dl dd{line-height:18px;}
dl dt{font-weight:bold;}
dl dd{margin-left:9px;}
hr{margin:0 0 19px;border:0;border-bottom:1px solid #eee;}
strong{font-style:inherit;font-weight:bold;line-height:inherit;}
em{font-style:italic;font-weight:inherit;line-height:inherit;}
.muted{color:#e6e6e6;}
blockquote{margin-bottom:18px;border-left:5px solid #eee;padding-left:15px;}blockquote p{font-size:14px;font-weight:300;line-height:18px;margin-bottom:0;}
blockquote cite{display:block;font-size:12px;font-weight:300;line-height:18px;color:#bfbfbf;}blockquote cite:before{content:'\2014 \00A0';}
address{display:block;line-height:18px;margin-bottom:18px;}
code,pre{padding:0 3px 2px;font-family:Monaco, Andale Mono, Courier New, monospace;font-size:12px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;}
code{background-color:#fee9cc;color:rgba(0, 0, 0, 0.75);padding:2px 3px;}
pre{background-color:#f5f5f5;display:block;padding:17px;margin:0 0 18px;line-height:18px;font-size:12px;border:1px solid rgba(0, 0, 0, 0.15);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;white-space:pre-wrap;}
form{margin-bottom:18px;}form fieldset{margin-bottom:18px;padding-top:18px;}form fieldset legend{display:block;margin-left:150px;font-size:20px;line-height:1;color:#404040;}
form div.clearfix{margin-bottom:18px;}
form label,form input,form select,form textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:normal;}
form label{padding-top:6px;font-size:13px;line-height:18px;float:left;width:130px;text-align:right;color:#404040;}
form div.input{margin-left:150px;}
form input[type=checkbox],form input[type=radio]{cursor:pointer;}
form input[type=text],form input[type=password],form textarea,form select,form .uneditable-input{display:inline-block;width:210px;margin:0;padding:4px;font-size:13px;line-height:18px;height:18px;color:#808080;border:1px solid #ccc;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;}
form select,form input[type=file]{height:27px;line-height:27px;}
form textarea{height:auto;}
form .uneditable-input{background-color:#eee;display:block;border-color:#ccc;-webkit-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.075);-moz-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.075);box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.075);}
form :-moz-placeholder{color:#bfbfbf;}
form ::-webkit-input-placeholder{color:#bfbfbf;}
form input[type=text],form input[type=password],form select,form textarea{-webkit-transition:border linear 0.2s,box-shadow linear 0.2s;-moz-transition:border linear 0.2s,box-shadow linear 0.2s;transition:border linear 0.2s,box-shadow linear 0.2s;-webkit-box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1);-moz-box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1);box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1);}
form input[type=text]:focus,form input[type=password]:focus,form textarea:focus{outline:none;border-color:rgba(82, 168, 236, 0.8);-webkit-box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1),0 0 8px rgba(82, 168, 236, 0.6);-moz-box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1),0 0 8px rgba(82, 168, 236, 0.6);box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1),0 0 8px rgba(82, 168, 236, 0.6);}
form div.error{background:#fae5e3;padding:10px 0;margin:-10px 0 10px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;}form div.error>label,form div.error span.help-inline,form div.error span.help-block{color:#9d261d;}
form div.error input[type=text],form div.error input[type=password],form div.error textarea{border-color:#c87872;-webkit-box-shadow:0 0 3px rgba(171, 41, 32, 0.25);-moz-box-shadow:0 0 3px rgba(171, 41, 32, 0.25);box-shadow:0 0 3px rgba(171, 41, 32, 0.25);}form div.error input[type=text]:focus,form div.error input[type=password]:focus,form div.error textarea:focus{border-color:#b9554d;-webkit-box-shadow:0 0 6px rgba(171, 41, 32, 0.5);-moz-box-shadow:0 0 6px rgba(171, 41, 32, 0.5);box-shadow:0 0 6px rgba(171, 41, 32, 0.5);}
form div.error div.input-prepend span.add-on,form div.error div.input-append span.add-on{background:#f4c8c5;border-color:#c87872;color:#b9554d;}
form .input-mini,form input.mini,form textarea.mini,form select.mini{width:60px;}
form .input-small,form input.small,form textarea.small,form select.small{width:90px;}
form .input-medium,form input.medium,form textarea.medium,form select.medium{width:150px;}
form .input-large,form input.large,form textarea.large,form select.large{width:210px;}
form .input-xlarge,form input.xlarge,form textarea.xlarge,form select.xlarge{width:270px;}
form .input-xxlarge,form input.xxlarge,form textarea.xxlarge,form select.xxlarge{width:530px;}
form textarea.xxlarge{overflow-y:scroll;}
form input[readonly]:focus,form textarea[readonly]:focus,form input.disabled{background:#f5f5f5;border-color:#ddd;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;}
div.actions{background:#f5f5f5;margin-top:18px;margin-bottom:18px;padding:17px 20px 18px 150px;border-top:1px solid #ddd;-webkit-border-radius:0 0 3px 3px;-moz-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px;}div.actions div.secondary-action{float:right;}div.actions div.secondary-action a{line-height:30px;}div.actions div.secondary-action a:hover{text-decoration:underline;}
.help-inline,.help-block{font-size:12px;line-height:18px;color:#bfbfbf;}
.help-inline{padding-left:5px;}
.help-block{display:block;max-width:600px;}
div.inline-inputs{color:#808080;}div.inline-inputs span,div.inline-inputs input[type=text]{display:inline-block;}
div.inline-inputs input.mini{width:60px;}
div.inline-inputs input.small{width:90px;}
div.inline-inputs span{padding:0 2px 0 1px;}
div.input-prepend input[type=text],div.input-append input[type=text]{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;}
div.input-prepend .add-on,div.input-append .add-on{background:#f5f5f5;float:left;display:block;width:auto;min-width:16px;padding:4px 4px 4px 5px;color:#bfbfbf;font-weight:normal;line-height:18px;height:18px;text-align:center;text-shadow:0 1px 0 #fff;border:1px solid #ccc;border-right-width:0;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;}
div.input-prepend .active,div.input-append .active{background:#a9dba9;border-color:#46a546;}
div.input-append input[type=text]{float:left;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;}
div.input-append .add-on{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;border-right-width:1px;border-left-width:0;}
ul.inputs-list{margin:0 0 5px;width:100%;}ul.inputs-list li{display:block;padding:0;width:100%;}ul.inputs-list li label{display:block;float:none;width:auto;padding:0;line-height:18px;text-align:left;white-space:normal;}ul.inputs-list li label strong{color:#808080;}
ul.inputs-list li label small{font-size:12px;font-weight:normal;}
ul.inputs-list li ul.inputs-list{margin-left:25px;margin-bottom:10px;padding-top:0;}
ul.inputs-list li:first-child{padding-top:5px;}
ul.inputs-list input[type=radio],ul.inputs-list input[type=checkbox]{margin-bottom:0;}
form.form-stacked{padding-left:20px;}form.form-stacked fieldset{padding-top:9px;}
form.form-stacked legend{margin-left:0;}
form.form-stacked label{display:block;float:none;width:auto;font-weight:bold;text-align:left;line-height:20px;padding-top:0;}
form.form-stacked div.clearfix{margin-bottom:9px;}form.form-stacked div.clearfix div.input{margin-left:0;}
form.form-stacked ul.inputs-list{margin-bottom:0;}form.form-stacked ul.inputs-list li{padding-top:0;}form.form-stacked ul.inputs-list li label{font-weight:normal;padding-top:0;}
form.form-stacked div.actions{margin-left:-20px;padding-left:20px;}
table{width:100%;margin-bottom:18px;padding:0;text-align:left;border-collapse:separate;font-size:13px;}table th,table td{padding:10px 10px 9px;line-height:13.5px;vertical-align:middle;border-bottom:1px solid #ddd;}
table th{padding-top:9px;font-weight:bold;border-bottom-width:2px;}
table.zebra-striped tbody tr:nth-child(odd) td{background-color:#f9f9f9;}
table.zebra-striped tbody tr:hover td{background-color:#f5f5f5;}
table.zebra-striped th.header{cursor:pointer;}table.zebra-striped th.header:after{width:0px;height:0px;display:inline-block;float:right;margin-top:7px;content:"&darr;";text-indent:-99999px;vertical-align:top;border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid #000;visibility:hidden;-webkit-box-shadow:0 1px 0 #ffffff;-moz-box-shadow:0 1px 0 #ffffff;box-shadow:0 1px 0 #ffffff;filter:alpha(opacity=30);-khtml-opacity:0.3;-moz-opacity:0.3;opacity:0.3;}
table.zebra-striped th.headerSortUp,table.zebra-striped th.headerSortDown{background-color:rgba(141, 192, 219, 0.25);text-shadow:0 1px 1px rgba(255, 255, 255, 0.75);-webkit-border-radius:3px 3px 0 0;-moz-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;}
table.zebra-striped th.header:hover:after{visibility:visible;}
table.zebra-striped th.actions:hover{background-image:none;}
table.zebra-striped th.headerSortDown:after,table.zebra-striped th.headerSortDown:hover:after{visibility:visible;filter:alpha(opacity=60);-khtml-opacity:0.6;-moz-opacity:0.6;opacity:0.6;}
table.zebra-striped th.headerSortUp:after{border-bottom:none;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid #000;visibility:visible;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;filter:alpha(opacity=60);-khtml-opacity:0.6;-moz-opacity:0.6;opacity:0.6;}
table.zebra-striped th.blue{color:#049cdb;border-bottom-color:#049cdb;}
table.zebra-striped th.headerSortUp.blue,table.zebra-striped th.headerSortDown.blue{background-color:#ade6fe;}
table.zebra-striped th.green{color:#46a546;border-bottom-color:#46a546;}
table.zebra-striped th.headerSortUp.green,table.zebra-striped th.headerSortDown.green{background-color:#cdeacd;}
table.zebra-striped th.red{color:#9d261d;border-bottom-color:#9d261d;}
table.zebra-striped th.headerSortUp.red,table.zebra-striped th.headerSortDown.red{background-color:#f4c8c5;}
table.zebra-striped th.yellow{color:#ffc40d;border-bottom-color:#ffc40d;}
table.zebra-striped th.headerSortUp.yellow,table.zebra-striped th.headerSortDown.yellow{background-color:#fff6d9;}
table.zebra-striped th.orange{color:#f89406;border-bottom-color:#f89406;}
table.zebra-striped th.headerSortUp.orange,table.zebra-striped th.headerSortDown.orange{background-color:#fee9cc;}
table.zebra-striped th.purple{color:#7a43b6;border-bottom-color:#7a43b6;}
table.zebra-striped th.headerSortUp.purple,table.zebra-striped th.headerSortDown.purple{background-color:#e2d5f0;}
div.topbar{background-color:#222222;background-repeat:repeat-x;background-image:-khtml-gradient(linear, left top, left bottom, from(#333333), to(#222222));background-image:-moz-linear-gradient(#333333, #222222);background-image:-ms-linear-gradient(#333333, #222222);background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #333333), color-stop(100%, #222222));background-image:-webkit-linear-gradient(#333333, #222222);background-image:-o-linear-gradient(#333333, #222222);-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0)";filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0);background-image:linear-gradient(#333333, #222222);height:40px;position:fixed;top:0;left:0;right:0;z-index:10000;overflow:visible;-webkit-box-shadow:0 1px 3px rgba(0, 0, 0, 0.25),inset 0 -1px 0 rgba(0, 0, 0, 0.1);-moz-box-shadow:0 1px 3px rgba(0, 0, 0, 0.25),inset 0 -1px 0 rgba(0, 0, 0, 0.1);box-shadow:0 1px 3px rgba(0, 0, 0, 0.25),inset 0 -1px 0 rgba(0, 0, 0, 0.1);}div.topbar a{color:#bfbfbf;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);}
div.topbar ul li a:hover,div.topbar ul li.active a,div.topbar a.logo:hover{background-color:#333;background-color:rgba(255, 255, 255, 0.15);color:#ffffff;text-decoration:none;}
div.topbar a.logo{float:left;display:block;padding:8px 20px 12px;margin-left:-20px;color:#ffffff;font-size:20px;font-weight:200;line-height:1;}div.topbar a.logo img{float:left;margin-right:6px;}
div.topbar form{float:left;margin:5px 0 0 0;position:relative;filter:alpha(opacity=100);-khtml-opacity:1;-moz-opacity:1;opacity:1;}div.topbar form input{background-color:#bfbfbf;background-color:rgba(255, 255, 255, 0.3);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:normal;font-weight:13px;line-height:1;width:220px;padding:4px 9px;color:#fff;color:rgba(255, 255, 255, 0.75);border:1px solid #111;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1),0 1px 0px rgba(255, 255, 255, 0.25);-moz-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1),0 1px 0px rgba(255, 255, 255, 0.25);box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1),0 1px 0px rgba(255, 255, 255, 0.25);-webkit-transition:none;-moz-transition:none;transition:none;}div.topbar form input:-moz-placeholder{color:#e6e6e6;}
div.topbar form input::-webkit-input-placeholder{color:#e6e6e6;}
div.topbar form input:hover{background-color:#444;background-color:rgba(255, 255, 255, 0.5);color:#fff;}
div.topbar form input:focus,div.topbar form input.focused{outline:none;background-color:#fff;color:#404040;text-shadow:0 1px 0 #fff;border:0;padding:5px 10px;-webkit-box-shadow:0 0 3px rgba(0, 0, 0, 0.15);-moz-box-shadow:0 0 3px rgba(0, 0, 0, 0.15);box-shadow:0 0 3px rgba(0, 0, 0, 0.15);}
div.topbar ul{display:block;float:left;margin:0 10px 0 0;position:relative;}div.topbar ul.secondary-nav{float:right;margin-left:10px;margin-right:0;}
div.topbar ul li{display:block;float:left;font-size:13px;}div.topbar ul li a{display:block;float:none;padding:10px 10px 11px;line-height:19px;text-decoration:none;}div.topbar ul li a:hover{color:#fff;text-decoration:none;}
div.topbar ul li.active a{background-color:#222;background-color:rgba(0, 0, 0, 0.5);}
div.topbar ul.primary-nav li ul{left:0;}
div.topbar ul.secondary-nav li ul{right:0;}
div.topbar ul li.menu{position:relative;}div.topbar ul li.menu a.menu:after{width:0px;height:0px;display:inline-block;content:"&darr;";text-indent:-99999px;vertical-align:top;margin-top:8px;margin-left:4px;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid #fff;filter:alpha(opacity=50);-khtml-opacity:0.5;-moz-opacity:0.5;opacity:0.5;}
div.topbar ul li.menu.open a.menu,div.topbar ul li.menu.open a:hover{background-color:#00b4eb;background-color:rgba(255, 255, 255, 0.1);color:#fff;}
div.topbar ul li.menu.open ul{display:block;}div.topbar ul li.menu.open ul li a{background-color:transparent;font-weight:normal;}div.topbar ul li.menu.open ul li a:hover{background-color:rgba(255, 255, 255, 0.1);color:#fff;}
div.topbar ul li.menu.open ul li.active a{background-color:rgba(255, 255, 255, 0.1);font-weight:bold;}
div.topbar ul li ul{background-color:#333;float:left;display:none;position:absolute;top:40px;min-width:160px;max-width:220px;_width:160px;margin-left:0;margin-right:0;padding:0;text-align:left;border:0;zoom:1;-webkit-border-radius:0 0 5px 5px;-moz-border-radius:0 0 5px 5px;border-radius:0 0 5px 5px;-webkit-box-shadow:0 1px 2px rgba(0, 0, 0, 0.6);-moz-box-shadow:0 1px 2px rgba(0, 0, 0, 0.6);box-shadow:0 1px 2px rgba(0, 0, 0, 0.6);}div.topbar ul li ul li{float:none;clear:both;display:block;background:none;font-size:12px;}div.topbar ul li ul li a{display:block;padding:6px 15px;clear:both;font-weight:normal;line-height:19px;color:#bbb;}div.topbar ul li ul li a:hover{background-color:#333;background-color:rgba(255, 255, 255, 0.25);color:#fff;}
div.topbar ul li ul li.divider{height:1px;overflow:hidden;background:rgba(0, 0, 0, 0.2);border-bottom:1px solid rgba(255, 255, 255, 0.1);margin:5px 0;}
div.topbar ul li ul li span{clear:both;display:block;background:rgba(0, 0, 0, 0.2);padding:6px 15px;cursor:default;color:#808080;border-top:1px solid rgba(0, 0, 0, 0.2);}
div.page-header{margin-bottom:17px;border-bottom:1px solid #ddd;-webkit-box-shadow:0 1px 0 rgba(255, 255, 255, 0.5);-moz-box-shadow:0 1px 0 rgba(255, 255, 255, 0.5);box-shadow:0 1px 0 rgba(255, 255, 255, 0.5);}div.page-header h1{margin-bottom:8px;}
div.alert-message{background-color:rgba(0, 0, 0, 0.15);background-repeat:repeat-x;background-image:-khtml-gradient(linear, left top, left bottom, from(transparent), to(rgba(0, 0, 0, 0.15)));background-image:-moz-linear-gradient(transparent, rgba(0, 0, 0, 0.15));background-image:-ms-linear-gradient(transparent, rgba(0, 0, 0, 0.15));background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, transparent), color-stop(100%, rgba(0, 0, 0, 0.15)));background-image:-webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.15));background-image:-o-linear-gradient(transparent, rgba(0, 0, 0, 0.15));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr='transparent', endColorstr='rgba(0, 0, 0, 0.15)', GradientType=0)";filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='transparent', endColorstr='rgba(0, 0, 0, 0.15)', GradientType=0);background-image:linear-gradient(transparent, rgba(0, 0, 0, 0.15));background-color:#e6e6e6;margin-bottom:18px;padding:8px 15px;color:#fff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);border-bottom:1px solid rgba(0, 0, 0, 0.25);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;}div.alert-message p{color:#fff;margin-bottom:0;}div.alert-message p+p{margin-top:5px;}
div.alert-message.error{background-color:#e06359;}
div.alert-message.warning{background-color:#ffd75a;}
div.alert-message.success{background-color:#74c474;}
div.alert-message.info{background-color:#30c0fb;}
div.alert-message a.close{float:right;margin-top:-2px;color:#fff;font-size:20px;font-weight:bold;text-shadow:0 1px 0 rgba(0, 0, 0, 0.5);filter:alpha(opacity=50);-khtml-opacity:0.5;-moz-opacity:0.5;opacity:0.5;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;}div.alert-message a.close:hover{text-decoration:none;filter:alpha(opacity=50);-khtml-opacity:0.5;-moz-opacity:0.5;opacity:0.5;}
div.block-message{margin-bottom:18px;padding:14px;color:#404040;color:rgba(0, 0, 0, 0.8);text-shadow:0 1px 0 rgba(255, 255, 255, 0.25);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;}div.block-message p{color:#404040;color:rgba(0, 0, 0, 0.8);margin-right:30px;margin-bottom:0;}
div.block-message ul{margin-bottom:0;}
div.block-message strong{display:block;}
div.block-message a.close{display:block;color:#404040;color:rgba(0, 0, 0, 0.5);text-shadow:0 1px 1px rgba(255, 255, 255, 0.75);}
div.block-message.error{background:#f8dcda;border:1px solid #f4c8c5;}
div.block-message.warning{background:#fff0c0;border:1px solid #ffe38d;}
div.block-message.success{background:#dff1df;border:1px solid #bbe2bb;}
div.block-message.info{background:#c7eefe;border:1px solid #ade6fe;}
ul.tabs,ul.pills{margin:0 0 20px;padding:0;zoom:1;}ul.tabs:after,ul.pills:after{display:block;visibility:hidden;height:0;clear:both;content:".";}
ul.tabs li,ul.pills li{display:inline;}ul.tabs li a,ul.pills li a{float:left;width:auto;}
ul.tabs{width:100%;border-bottom:1px solid #bfbfbf;}ul.tabs li a{margin-bottom:-1px;margin-right:2px;padding:0 15px;line-height:35px;-webkit-border-radius:3px 3px 0 0;-moz-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;}ul.tabs li a:hover{background-color:#e6e6e6;border-bottom:1px solid #bfbfbf;}
ul.tabs li.active a{background-color:#fff;padding:0 14px;border:1px solid #ccc;border-bottom:0;color:#808080;}
ul.pills li a{margin:5px 3px 5px 0;padding:0 15px;text-shadow:0 1px 1px #fff;line-height:30px;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px;}ul.pills li a:hover{background:#0050a3;color:#fff;text-decoration:none;text-shadow:0 1px 1px rgba(0, 0, 0, 0.25);}
ul.pills li.active a{background:#0069d6;color:#fff;text-shadow:0 1px 1px rgba(0, 0, 0, 0.25);}
div.pagination{height:36px;margin:18px 0;}div.pagination ul{float:left;margin:0;border:1px solid rgba(0, 0, 0, 0.15);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 2px rgba(0, 0, 0, 0.075);-moz-box-shadow:0 1px 2px rgba(0, 0, 0, 0.075);box-shadow:0 1px 2px rgba(0, 0, 0, 0.075);}div.pagination ul li{display:inline;}div.pagination ul li a{float:left;padding:0 14px;line-height:34px;border-right:1px solid rgba(0, 0, 0, 0.15);text-decoration:none;}
div.pagination ul li a:hover,div.pagination ul li.active a{background-color:#c7eefe;}
div.pagination ul li.disabled a,div.pagination ul li.disabled a:hover{background-color:none;color:#bfbfbf;}
div.pagination ul li.next a,div.pagination ul li:last-child a{border:0;}
div.well{background:#f5f5f5;margin-bottom:20px;padding:19px;min-height:20px;border:1px solid #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05);-moz-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05);box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05);}
div.modal-backdrop{background-color:rgba(0, 0, 0, 0.5);position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;}
div.modal{position:fixed;top:50%;left:50%;z-index:2000;width:560px;margin:-280px 0 0 -250px;background-color:#ffffff;border:1px solid rgba(0, 0, 0, 0.3);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 3px 7px rgba(0, 0, 0, 0.3);-moz-box-shadow:0 3px 7px rgba(0, 0, 0, 0.3);box-shadow:0 3px 7px rgba(0, 0, 0, 0.3);-webkit-background-clip:padding;-moz-background-clip:padding;background-clip:padding;}div.modal .modal-header{border-bottom:1px solid #eee;padding:5px 20px;}div.modal .modal-header a.close{position:absolute;right:10px;top:10px;color:#999;line-height:10px;font-size:18px;}
div.modal .modal-body{padding:20px;}
div.modal .modal-footer{background-color:#f5f5f5;padding:14px 20px 15px;border-top:1px solid #ddd;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;-webkit-box-shadow:inset 0 1px 0 #ffffff;-moz-box-shadow:inset 0 1px 0 #ffffff;box-shadow:inset 0 1px 0 #ffffff;zoom:1;}div.modal .modal-footer:after{display:block;visibility:hidden;height:0;clear:both;content:".";}
div.modal .modal-footer .btn{float:right;margin-left:10px;}
div.twipsy{display:block;position:absolute;visibility:visible;padding:5px;font-size:11px;z-index:1000;filter:alpha(opacity=80);-khtml-opacity:0.8;-moz-opacity:0.8;opacity:0.8;}div.twipsy.above .twipsy-arrow{bottom:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #000000;}
div.twipsy.left .twipsy-arrow{top:50%;right:0;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:5px solid #000000;}
div.twipsy.below .twipsy-arrow{top:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #000000;}
div.twipsy.right .twipsy-arrow{top:50%;left:0;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:5px solid #000000;}
div.twipsy .twipsy-inner{padding:3px 8px;background-color:#000;color:white;text-align:center;max-width:200px;text-decoration:none;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;}
div.twipsy .twipsy-arrow{position:absolute;width:0;height:0;}
.popover{position:absolute;top:0;left:0;z-index:1000;padding:5px;display:none;}.popover.above .arrow{bottom:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #000000;}
.popover.right .arrow{top:50%;left:0;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:5px solid #000000;}
.popover.below .arrow{top:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #000000;}
.popover.left .arrow{top:50%;right:0;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:5px solid #000000;}
.popover .arrow{position:absolute;width:0;height:0;}
.popover .inner{background:rgba(0, 0, 0, 0.8);padding:3px;overflow:hidden;width:280px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 3px 7px rgba(0, 0, 0, 0.3);-moz-box-shadow:0 3px 7px rgba(0, 0, 0, 0.3);box-shadow:0 3px 7px rgba(0, 0, 0, 0.3);}
.popover .title{background:#f5f5f5;padding:9px 15px;line-height:1;-webkit-border-radius:3px 3px 0 0;-moz-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;border-bottom:1px solid #eee;}
.popover .content{background-color:#ffffff;padding:14px;-webkit-border-radius:0 0 3px 3px;-moz-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px;-webkit-background-clip:padding;-moz-background-clip:padding;background-clip:padding;}.popover .content p,.popover .content ul,.popover .content ol{margin-bottom:0;}
+2469
View File
File diff suppressed because it is too large Load Diff
+356
View File
@@ -0,0 +1,356 @@
html,body{margin:0;padding:0;}
h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,cite,code,del,dfn,em,img,q,s,samp,small,strike,strong,sub,sup,tt,var,dd,dl,dt,li,ol,ul,fieldset,form,label,legend,button,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;border:0;font-weight:normal;font-style:normal;font-size:100%;line-height:1;font-family:inherit;}
table{border-collapse:collapse;border-spacing:0;}
ol,ul{list-style:none;}
q:before,q:after,blockquote:before,blockquote:after{content:"";}
html{overflow-y:scroll;font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;}
a:focus{outline:thin dotted;}
a:hover,a:active{outline:0;}
article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block;}
audio,canvas,video{display:inline-block;*display:inline;*zoom:1;}
audio:not([controls]){display:none;}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}
sup{top:-0.5em;}
sub{bottom:-0.25em;}
img{border:0;-ms-interpolation-mode:bicubic;}
button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle;}
button,input{line-height:normal;*overflow:visible;}
button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0;}
button,input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button;}
input[type="search"]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;}
input[type="search"]::-webkit-search-decoration{-webkit-appearance:none;}
textarea{overflow:auto;vertical-align:top;}
body{background-color:#ffffff;margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:18px;color:#404040;}
.container{width:940px;margin-left:auto;margin-right:auto;zoom:1;}.container:before,.container:after{display:table;content:"";zoom:1;}
.container:after{clear:both;}
.container-fluid{position:relative;min-width:940px;padding-left:20px;padding-right:20px;zoom:1;}.container-fluid:before,.container-fluid:after{display:table;content:"";zoom:1;}
.container-fluid:after{clear:both;}
.container-fluid>.sidebar{position:absolute;top:0;left:20px;width:220px;}
.container-fluid>.content{margin-left:240px;}
a{color:#0069d6;text-decoration:none;line-height:inherit;font-weight:inherit;}a:hover{color:#00438a;text-decoration:underline;}
.pull-right{float:right;}
.pull-left{float:left;}
.hide{display:none;}
.show{display:block;}
.row{zoom:1;margin-left:-20px;}.row:before,.row:after{display:table;content:"";zoom:1;}
.row:after{clear:both;}
.row>[class*="span"]{display:inline;float:left;margin-left:20px;}
.span1{width:40px;}
.span2{width:100px;}
.span3{width:160px;}
.span4{width:220px;}
.span5{width:280px;}
.span6{width:340px;}
.span7{width:400px;}
.span8{width:460px;}
.span9{width:520px;}
.span10{width:580px;}
.span11{width:640px;}
.span12{width:700px;}
.span13{width:760px;}
.span14{width:820px;}
.span15{width:880px;}
.span16{width:940px;}
.span17{width:1000px;}
.span18{width:1060px;}
.span19{width:1120px;}
.span20{width:1180px;}
.span21{width:1240px;}
.span22{width:1300px;}
.span23{width:1360px;}
.span24{width:1420px;}
.row >.offset1{margin-left:80px;}
.row >.offset2{margin-left:140px;}
.row >.offset3{margin-left:200px;}
.row >.offset4{margin-left:260px;}
.row >.offset5{margin-left:320px;}
.row >.offset6{margin-left:380px;}
.row >.offset7{margin-left:440px;}
.row >.offset8{margin-left:500px;}
.row >.offset9{margin-left:560px;}
.row >.offset10{margin-left:620px;}
.row >.offset11{margin-left:680px;}
.row >.offset12{margin-left:740px;}
.span-one-third{width:300px;}
.span-two-thirds{width:620px;}
.offset-one-third{margin-left:340px;}
.offset-two-thirds{margin-left:660px;}
p{font-size:13px;font-weight:normal;line-height:18px;margin-bottom:9px;}p small{font-size:11px;color:#bfbfbf;}
h1,h2,h3,h4,h5,h6{font-weight:bold;color:#404040;}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{color:#bfbfbf;}
h1{margin-bottom:18px;font-size:30px;line-height:36px;}h1 small{font-size:18px;}
h2{font-size:24px;line-height:36px;}h2 small{font-size:14px;}
h3,h4,h5,h6{line-height:36px;}
h3{font-size:18px;}h3 small{font-size:14px;}
h4{font-size:16px;}h4 small{font-size:12px;}
h5{font-size:14px;}
h6{font-size:13px;color:#bfbfbf;text-transform:uppercase;}
ul,ol{margin:0 0 18px 25px;}
ul ul,ul ol,ol ol,ol ul{margin-bottom:0;}
ul{list-style:disc;}
ol{list-style:decimal;}
li{line-height:18px;color:#808080;}
ul.unstyled{list-style:none;margin-left:0;}
dl{margin-bottom:18px;}dl dt,dl dd{line-height:18px;}
dl dt{font-weight:bold;}
dl dd{margin-left:9px;}
hr{margin:20px 0 19px;border:0;border-bottom:1px solid #eee;}
strong{font-style:inherit;font-weight:bold;}
em{font-style:italic;font-weight:inherit;line-height:inherit;}
.muted{color:#bfbfbf;}
blockquote{margin-bottom:18px;border-left:5px solid #eee;padding-left:15px;}blockquote p{font-size:14px;font-weight:300;line-height:18px;margin-bottom:0;}
blockquote small{display:block;font-size:12px;font-weight:300;line-height:18px;color:#bfbfbf;}blockquote small:before{content:'\2014 \00A0';}
address{display:block;line-height:18px;margin-bottom:18px;}
code,pre{padding:0 3px 2px;font-family:Monaco, Andale Mono, Courier New, monospace;font-size:12px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;}
code{background-color:#fee9cc;color:rgba(0, 0, 0, 0.75);padding:1px 3px;}
pre{background-color:#f5f5f5;display:block;padding:8.5px;margin:0 0 18px;line-height:18px;font-size:12px;border:1px solid #ccc;border:1px solid rgba(0, 0, 0, 0.15);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;white-space:pre;white-space:pre-wrap;word-wrap:break-word;}
form{margin-bottom:18px;}
fieldset{margin-bottom:18px;padding-top:18px;}fieldset legend{display:block;padding-left:150px;font-size:19.5px;line-height:1;color:#404040;*padding:0 0 5px 145px;*line-height:1.5;}
form .clearfix{margin-bottom:18px;zoom:1;}form .clearfix:before,form .clearfix:after{display:table;content:"";zoom:1;}
form .clearfix:after{clear:both;}
label,input,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:normal;}
label{padding-top:6px;font-size:13px;line-height:18px;float:left;width:130px;text-align:right;color:#404040;}
form .input{margin-left:150px;}
input[type=checkbox],input[type=radio]{cursor:pointer;}
input,textarea,select,.uneditable-input{display:inline-block;width:210px;height:18px;padding:4px;font-size:13px;line-height:18px;color:#808080;border:1px solid #ccc;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;}
select{padding:initial;}
input[type=checkbox],input[type=radio]{width:auto;height:auto;padding:0;margin:3px 0;*margin-top:0;line-height:normal;border:none;}
input[type=file]{background-color:#ffffff;padding:initial;border:initial;line-height:initial;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;}
input[type=button],input[type=reset],input[type=submit]{width:auto;height:auto;}
select,input[type=file]{height:27px;*height:auto;line-height:27px;*margin-top:4px;}
select[multiple]{height:inherit;background-color:#ffffff;}
textarea{height:auto;}
.uneditable-input{background-color:#ffffff;display:block;border-color:#eee;-webkit-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.025);-moz-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.025);box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.025);cursor:not-allowed;}
:-moz-placeholder{color:#bfbfbf;}
::-webkit-input-placeholder{color:#bfbfbf;}
input,textarea{-webkit-transform-style:preserve-3d;-webkit-transition:border linear 0.2s,box-shadow linear 0.2s;-moz-transition:border linear 0.2s,box-shadow linear 0.2s;-ms-transition:border linear 0.2s,box-shadow linear 0.2s;-o-transition:border linear 0.2s,box-shadow linear 0.2s;transition:border linear 0.2s,box-shadow linear 0.2s;-webkit-box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1);-moz-box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1);box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1);}
input:focus,textarea:focus{outline:0;border-color:rgba(82, 168, 236, 0.8);-webkit-box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1),0 0 8px rgba(82, 168, 236, 0.6);-moz-box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1),0 0 8px rgba(82, 168, 236, 0.6);box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1),0 0 8px rgba(82, 168, 236, 0.6);}
input[type=file]:focus,input[type=checkbox]:focus,select:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;outline:1px dotted #666;}
form .clearfix.error>label,form .clearfix.error .help-block,form .clearfix.error .help-inline{color:#b94a48;}
form .clearfix.error input,form .clearfix.error textarea{color:#b94a48;border-color:#ee5f5b;}form .clearfix.error input:focus,form .clearfix.error textarea:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7;}
form .clearfix.error .input-prepend .add-on,form .clearfix.error .input-append .add-on{color:#b94a48;background-color:#fce6e6;border-color:#b94a48;}
form .clearfix.warning>label,form .clearfix.warning .help-block,form .clearfix.warning .help-inline{color:#c09853;}
form .clearfix.warning input,form .clearfix.warning textarea{color:#c09853;border-color:#ccae64;}form .clearfix.warning input:focus,form .clearfix.warning textarea:focus{border-color:#be9a3f;-webkit-box-shadow:0 0 6px #e5d6b1;-moz-box-shadow:0 0 6px #e5d6b1;box-shadow:0 0 6px #e5d6b1;}
form .clearfix.warning .input-prepend .add-on,form .clearfix.warning .input-append .add-on{color:#c09853;background-color:#d2b877;border-color:#c09853;}
form .clearfix.success>label,form .clearfix.success .help-block,form .clearfix.success .help-inline{color:#468847;}
form .clearfix.success input,form .clearfix.success textarea{color:#468847;border-color:#57a957;}form .clearfix.success input:focus,form .clearfix.success textarea:focus{border-color:#458845;-webkit-box-shadow:0 0 6px #9acc9a;-moz-box-shadow:0 0 6px #9acc9a;box-shadow:0 0 6px #9acc9a;}
form .clearfix.success .input-prepend .add-on,form .clearfix.success .input-append .add-on{color:#468847;background-color:#bcddbc;border-color:#468847;}
.input-mini,input.mini,textarea.mini,select.mini{width:60px;}
.input-small,input.small,textarea.small,select.small{width:90px;}
.input-medium,input.medium,textarea.medium,select.medium{width:150px;}
.input-large,input.large,textarea.large,select.large{width:210px;}
.input-xlarge,input.xlarge,textarea.xlarge,select.xlarge{width:270px;}
.input-xxlarge,input.xxlarge,textarea.xxlarge,select.xxlarge{width:530px;}
textarea.xxlarge{overflow-y:auto;}
input.span1,textarea.span1{display:inline-block;float:none;width:30px;margin-left:0;}
input.span2,textarea.span2{display:inline-block;float:none;width:90px;margin-left:0;}
input.span3,textarea.span3{display:inline-block;float:none;width:150px;margin-left:0;}
input.span4,textarea.span4{display:inline-block;float:none;width:210px;margin-left:0;}
input.span5,textarea.span5{display:inline-block;float:none;width:270px;margin-left:0;}
input.span6,textarea.span6{display:inline-block;float:none;width:330px;margin-left:0;}
input.span7,textarea.span7{display:inline-block;float:none;width:390px;margin-left:0;}
input.span8,textarea.span8{display:inline-block;float:none;width:450px;margin-left:0;}
input.span9,textarea.span9{display:inline-block;float:none;width:510px;margin-left:0;}
input.span10,textarea.span10{display:inline-block;float:none;width:570px;margin-left:0;}
input.span11,textarea.span11{display:inline-block;float:none;width:630px;margin-left:0;}
input.span12,textarea.span12{display:inline-block;float:none;width:690px;margin-left:0;}
input.span13,textarea.span13{display:inline-block;float:none;width:750px;margin-left:0;}
input.span14,textarea.span14{display:inline-block;float:none;width:810px;margin-left:0;}
input.span15,textarea.span15{display:inline-block;float:none;width:870px;margin-left:0;}
input.span16,textarea.span16{display:inline-block;float:none;width:930px;margin-left:0;}
input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{background-color:#f5f5f5;border-color:#ddd;cursor:not-allowed;}
.actions{background:#f5f5f5;margin-top:18px;margin-bottom:18px;padding:17px 20px 18px 150px;border-top:1px solid #ddd;-webkit-border-radius:0 0 3px 3px;-moz-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px;}.actions .secondary-action{float:right;}.actions .secondary-action a{line-height:30px;}.actions .secondary-action a:hover{text-decoration:underline;}
.help-inline,.help-block{font-size:13px;line-height:18px;color:#bfbfbf;}
.help-inline{padding-left:5px;*position:relative;*top:-5px;}
.help-block{display:block;max-width:600px;}
.inline-inputs{color:#808080;}.inline-inputs span{padding:0 2px 0 1px;}
.input-prepend input,.input-append input{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;}
.input-prepend .add-on,.input-append .add-on{position:relative;background:#f5f5f5;border:1px solid #ccc;z-index:2;float:left;display:block;width:auto;min-width:16px;height:18px;padding:4px 4px 4px 5px;margin-right:-1px;font-weight:normal;line-height:18px;color:#bfbfbf;text-align:center;text-shadow:0 1px 0 #ffffff;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;}
.input-prepend .active,.input-append .active{background:#a9dba9;border-color:#46a546;}
.input-prepend .add-on{*margin-top:1px;}
.input-append input{float:left;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;}
.input-append .add-on{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;margin-right:0;margin-left:-1px;}
.inputs-list{margin:0 0 5px;width:100%;}.inputs-list li{display:block;padding:0;width:100%;}
.inputs-list label{display:block;float:none;width:auto;padding:0;margin-left:20px;line-height:18px;text-align:left;white-space:normal;}.inputs-list label strong{color:#808080;}
.inputs-list label small{font-size:11px;font-weight:normal;}
.inputs-list .inputs-list{margin-left:25px;margin-bottom:10px;padding-top:0;}
.inputs-list:first-child{padding-top:6px;}
.inputs-list li+li{padding-top:2px;}
.inputs-list input[type=radio],.inputs-list input[type=checkbox]{margin-bottom:0;margin-left:-20px;float:left;}
.form-stacked{padding-left:20px;}.form-stacked fieldset{padding-top:9px;}
.form-stacked legend{padding-left:0;}
.form-stacked label{display:block;float:none;width:auto;font-weight:bold;text-align:left;line-height:20px;padding-top:0;}
.form-stacked .clearfix{margin-bottom:9px;}.form-stacked .clearfix div.input{margin-left:0;}
.form-stacked .inputs-list{margin-bottom:0;}.form-stacked .inputs-list li{padding-top:0;}.form-stacked .inputs-list li label{font-weight:normal;padding-top:0;}
.form-stacked div.clearfix.error{padding-top:10px;padding-bottom:10px;padding-left:10px;margin-top:0;margin-left:-10px;}
.form-stacked .actions{margin-left:-20px;padding-left:20px;}
table{width:100%;margin-bottom:18px;padding:0;font-size:13px;border-collapse:collapse;}table th,table td{padding:10px 10px 9px;line-height:18px;text-align:left;}
table th{padding-top:9px;font-weight:bold;vertical-align:middle;}
table td{vertical-align:top;border-top:1px solid #ddd;}
table tbody th{border-top:1px solid #ddd;vertical-align:top;}
.condensed-table th,.condensed-table td{padding:5px 5px 4px;}
.bordered-table{border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;}.bordered-table th+th,.bordered-table td+td,.bordered-table th+td{border-left:1px solid #ddd;}
.bordered-table thead tr:first-child th:first-child,.bordered-table tbody tr:first-child td:first-child{-webkit-border-radius:4px 0 0 0;-moz-border-radius:4px 0 0 0;border-radius:4px 0 0 0;}
.bordered-table thead tr:first-child th:last-child,.bordered-table tbody tr:first-child td:last-child{-webkit-border-radius:0 4px 0 0;-moz-border-radius:0 4px 0 0;border-radius:0 4px 0 0;}
.bordered-table tbody tr:last-child td:first-child{-webkit-border-radius:0 0 0 4px;-moz-border-radius:0 0 0 4px;border-radius:0 0 0 4px;}
.bordered-table tbody tr:last-child td:last-child{-webkit-border-radius:0 0 4px 0;-moz-border-radius:0 0 4px 0;border-radius:0 0 4px 0;}
table .span1{width:20px;}
table .span2{width:60px;}
table .span3{width:100px;}
table .span4{width:140px;}
table .span5{width:180px;}
table .span6{width:220px;}
table .span7{width:260px;}
table .span8{width:300px;}
table .span9{width:340px;}
table .span10{width:380px;}
table .span11{width:420px;}
table .span12{width:460px;}
table .span13{width:500px;}
table .span14{width:540px;}
table .span15{width:580px;}
table .span16{width:620px;}
.zebra-striped tbody tr:nth-child(odd) td,.zebra-striped tbody tr:nth-child(odd) th{background-color:#f9f9f9;}
.zebra-striped tbody tr:hover td,.zebra-striped tbody tr:hover th{background-color:#f5f5f5;}
table .header{cursor:pointer;}table .header:after{content:"";float:right;margin-top:7px;border-width:0 4px 4px;border-style:solid;border-color:#000 transparent;visibility:hidden;}
table .headerSortUp,table .headerSortDown{background-color:rgba(141, 192, 219, 0.25);text-shadow:0 1px 1px rgba(255, 255, 255, 0.75);}
table .header:hover:after{visibility:visible;}
table .headerSortDown:after,table .headerSortDown:hover:after{visibility:visible;filter:alpha(opacity=60);-khtml-opacity:0.6;-moz-opacity:0.6;opacity:0.6;}
table .headerSortUp:after{border-bottom:none;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid #000;visibility:visible;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;filter:alpha(opacity=60);-khtml-opacity:0.6;-moz-opacity:0.6;opacity:0.6;}
table .blue{color:#049cdb;border-bottom-color:#049cdb;}
table .headerSortUp.blue,table .headerSortDown.blue{background-color:#ade6fe;}
table .green{color:#46a546;border-bottom-color:#46a546;}
table .headerSortUp.green,table .headerSortDown.green{background-color:#cdeacd;}
table .red{color:#9d261d;border-bottom-color:#9d261d;}
table .headerSortUp.red,table .headerSortDown.red{background-color:#f4c8c5;}
table .yellow{color:#ffc40d;border-bottom-color:#ffc40d;}
table .headerSortUp.yellow,table .headerSortDown.yellow{background-color:#fff6d9;}
table .orange{color:#f89406;border-bottom-color:#f89406;}
table .headerSortUp.orange,table .headerSortDown.orange{background-color:#fee9cc;}
table .purple{color:#7a43b6;border-bottom-color:#7a43b6;}
table .headerSortUp.purple,table .headerSortDown.purple{background-color:#e2d5f0;}
.topbar{height:40px;position:fixed;top:0;left:0;right:0;z-index:10000;overflow:visible;}.topbar a{color:#bfbfbf;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);}
.topbar h3 a:hover,.topbar .brand:hover,.topbar ul .active>a{background-color:#333;background-color:rgba(255, 255, 255, 0.05);color:#ffffff;text-decoration:none;}
.topbar h3{position:relative;}
.topbar h3 a,.topbar .brand{float:left;display:block;padding:8px 20px 12px;margin-left:-20px;color:#ffffff;font-size:20px;font-weight:200;line-height:1;}
.topbar p{margin:0;line-height:40px;}.topbar p a:hover{background-color:transparent;color:#ffffff;}
.topbar form{float:left;margin:5px 0 0 0;position:relative;filter:alpha(opacity=100);-khtml-opacity:1;-moz-opacity:1;opacity:1;}
.topbar form.pull-right{float:right;}
.topbar input{background-color:#444;background-color:rgba(255, 255, 255, 0.3);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:normal;font-weight:13px;line-height:1;padding:4px 9px;color:#ffffff;color:rgba(255, 255, 255, 0.75);border:1px solid #111;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1),0 1px 0px rgba(255, 255, 255, 0.25);-moz-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1),0 1px 0px rgba(255, 255, 255, 0.25);box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1),0 1px 0px rgba(255, 255, 255, 0.25);-webkit-transform-style:preserve-3d;-webkit-transition:none;-moz-transition:none;-ms-transition:none;-o-transition:none;transition:none;}.topbar input:-moz-placeholder{color:#e6e6e6;}
.topbar input::-webkit-input-placeholder{color:#e6e6e6;}
.topbar input:hover{background-color:#bfbfbf;background-color:rgba(255, 255, 255, 0.5);color:#ffffff;}
.topbar input:focus,.topbar input.focused{outline:0;background-color:#ffffff;color:#404040;text-shadow:0 1px 0 #ffffff;border:0;padding:5px 10px;-webkit-box-shadow:0 0 3px rgba(0, 0, 0, 0.15);-moz-box-shadow:0 0 3px rgba(0, 0, 0, 0.15);box-shadow:0 0 3px rgba(0, 0, 0, 0.15);}
.topbar-inner,.topbar .fill{background-color:#222;background-color:#222222;background-repeat:repeat-x;background-image:-khtml-gradient(linear, left top, left bottom, from(#333333), to(#222222));background-image:-moz-linear-gradient(top, #333333, #222222);background-image:-ms-linear-gradient(top, #333333, #222222);background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #333333), color-stop(100%, #222222));background-image:-webkit-linear-gradient(top, #333333, #222222);background-image:-o-linear-gradient(top, #333333, #222222);background-image:linear-gradient(top, #333333, #222222);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0);-webkit-box-shadow:0 1px 3px rgba(0, 0, 0, 0.25),inset 0 -1px 0 rgba(0, 0, 0, 0.1);-moz-box-shadow:0 1px 3px rgba(0, 0, 0, 0.25),inset 0 -1px 0 rgba(0, 0, 0, 0.1);box-shadow:0 1px 3px rgba(0, 0, 0, 0.25),inset 0 -1px 0 rgba(0, 0, 0, 0.1);}
.topbar div>ul,.nav{display:block;float:left;margin:0 10px 0 0;position:relative;left:0;}.topbar div>ul>li,.nav>li{display:block;float:left;}
.topbar div>ul a,.nav a{display:block;float:none;padding:10px 10px 11px;line-height:19px;text-decoration:none;}.topbar div>ul a:hover,.nav a:hover{color:#ffffff;text-decoration:none;}
.topbar div>ul .active>a,.nav .active>a{background-color:#222;background-color:rgba(0, 0, 0, 0.5);}
.topbar div>ul.secondary-nav,.nav.secondary-nav{float:right;margin-left:10px;margin-right:0;}.topbar div>ul.secondary-nav .menu-dropdown,.nav.secondary-nav .menu-dropdown,.topbar div>ul.secondary-nav .dropdown-menu,.nav.secondary-nav .dropdown-menu{right:0;border:0;}
.topbar div>ul a.menu:hover,.nav a.menu:hover,.topbar div>ul li.open .menu,.nav li.open .menu,.topbar div>ul .dropdown-toggle:hover,.nav .dropdown-toggle:hover,.topbar div>ul .dropdown.open .dropdown-toggle,.nav .dropdown.open .dropdown-toggle{background:#444;background:rgba(255, 255, 255, 0.05);}
.topbar div>ul .menu-dropdown,.nav .menu-dropdown,.topbar div>ul .dropdown-menu,.nav .dropdown-menu{background-color:#333;}.topbar div>ul .menu-dropdown a.menu,.nav .menu-dropdown a.menu,.topbar div>ul .dropdown-menu a.menu,.nav .dropdown-menu a.menu,.topbar div>ul .menu-dropdown .dropdown-toggle,.nav .menu-dropdown .dropdown-toggle,.topbar div>ul .dropdown-menu .dropdown-toggle,.nav .dropdown-menu .dropdown-toggle{color:#ffffff;}.topbar div>ul .menu-dropdown a.menu.open,.nav .menu-dropdown a.menu.open,.topbar div>ul .dropdown-menu a.menu.open,.nav .dropdown-menu a.menu.open,.topbar div>ul .menu-dropdown .dropdown-toggle.open,.nav .menu-dropdown .dropdown-toggle.open,.topbar div>ul .dropdown-menu .dropdown-toggle.open,.nav .dropdown-menu .dropdown-toggle.open{background:#444;background:rgba(255, 255, 255, 0.05);}
.topbar div>ul .menu-dropdown li a,.nav .menu-dropdown li a,.topbar div>ul .dropdown-menu li a,.nav .dropdown-menu li a{color:#999;text-shadow:0 1px 0 rgba(0, 0, 0, 0.5);}.topbar div>ul .menu-dropdown li a:hover,.nav .menu-dropdown li a:hover,.topbar div>ul .dropdown-menu li a:hover,.nav .dropdown-menu li a:hover{background-color:#191919;background-repeat:repeat-x;background-image:-khtml-gradient(linear, left top, left bottom, from(#292929), to(#191919));background-image:-moz-linear-gradient(top, #292929, #191919);background-image:-ms-linear-gradient(top, #292929, #191919);background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #292929), color-stop(100%, #191919));background-image:-webkit-linear-gradient(top, #292929, #191919);background-image:-o-linear-gradient(top, #292929, #191919);background-image:linear-gradient(top, #292929, #191919);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#292929', endColorstr='#191919', GradientType=0);color:#ffffff;}
.topbar div>ul .menu-dropdown .active a,.nav .menu-dropdown .active a,.topbar div>ul .dropdown-menu .active a,.nav .dropdown-menu .active a{color:#ffffff;}
.topbar div>ul .menu-dropdown .divider,.nav .menu-dropdown .divider,.topbar div>ul .dropdown-menu .divider,.nav .dropdown-menu .divider{background-color:#222;border-color:#444;}
.topbar ul .menu-dropdown li a,.topbar ul .dropdown-menu li a{padding:4px 15px;}
li.menu,.dropdown{position:relative;}
a.menu:after,.dropdown-toggle:after{width:0;height:0;display:inline-block;content:"&darr;";text-indent:-99999px;vertical-align:top;margin-top:8px;margin-left:4px;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid #ffffff;filter:alpha(opacity=50);-khtml-opacity:0.5;-moz-opacity:0.5;opacity:0.5;}
.menu-dropdown,.dropdown-menu{background-color:#ffffff;float:left;display:none;position:absolute;top:40px;z-index:900;min-width:160px;max-width:220px;_width:160px;margin-left:0;margin-right:0;padding:6px 0;zoom:1;border-color:#999;border-color:rgba(0, 0, 0, 0.2);border-style:solid;border-width:0 1px 1px;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;-webkit-box-shadow:0 2px 4px rgba(0, 0, 0, 0.2);-moz-box-shadow:0 2px 4px rgba(0, 0, 0, 0.2);box-shadow:0 2px 4px rgba(0, 0, 0, 0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box;}.menu-dropdown li,.dropdown-menu li{float:none;display:block;background-color:none;}
.menu-dropdown .divider,.dropdown-menu .divider{height:1px;margin:5px 0;overflow:hidden;background-color:#eee;border-bottom:1px solid #ffffff;}
.topbar .dropdown-menu a,.dropdown-menu a{display:block;padding:4px 15px;clear:both;font-weight:normal;line-height:18px;color:#808080;text-shadow:0 1px 0 #ffffff;}.topbar .dropdown-menu a:hover,.dropdown-menu a:hover,.topbar .dropdown-menu a.hover,.dropdown-menu a.hover{background-color:#dddddd;background-repeat:repeat-x;background-image:-khtml-gradient(linear, left top, left bottom, from(#eeeeee), to(#dddddd));background-image:-moz-linear-gradient(top, #eeeeee, #dddddd);background-image:-ms-linear-gradient(top, #eeeeee, #dddddd);background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #eeeeee), color-stop(100%, #dddddd));background-image:-webkit-linear-gradient(top, #eeeeee, #dddddd);background-image:-o-linear-gradient(top, #eeeeee, #dddddd);background-image:linear-gradient(top, #eeeeee, #dddddd);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#dddddd', GradientType=0);color:#404040;text-decoration:none;-webkit-box-shadow:inset 0 1px 0 rgba(0, 0, 0, 0.025),inset 0 -1px rgba(0, 0, 0, 0.025);-moz-box-shadow:inset 0 1px 0 rgba(0, 0, 0, 0.025),inset 0 -1px rgba(0, 0, 0, 0.025);box-shadow:inset 0 1px 0 rgba(0, 0, 0, 0.025),inset 0 -1px rgba(0, 0, 0, 0.025);}
.open .menu,.dropdown.open .menu,.open .dropdown-toggle,.dropdown.open .dropdown-toggle{color:#ffffff;background:#ccc;background:rgba(0, 0, 0, 0.3);}
.open .menu-dropdown,.dropdown.open .menu-dropdown,.open .dropdown-menu,.dropdown.open .dropdown-menu{display:block;}
.tabs,.pills{margin:0 0 18px;padding:0;list-style:none;zoom:1;}.tabs:before,.pills:before,.tabs:after,.pills:after{display:table;content:"";zoom:1;}
.tabs:after,.pills:after{clear:both;}
.tabs>li,.pills>li{float:left;}.tabs>li>a,.pills>li>a{display:block;}
.tabs{border-color:#ddd;border-style:solid;border-width:0 0 1px;}.tabs>li{position:relative;margin-bottom:-1px;}.tabs>li>a{padding:0 15px;margin-right:2px;line-height:34px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0;}.tabs>li>a:hover{text-decoration:none;background-color:#eee;border-color:#eee #eee #ddd;}
.tabs .active>a,.tabs .active>a:hover{color:#808080;background-color:#ffffff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default;}
.tabs .menu-dropdown,.tabs .dropdown-menu{top:35px;border-width:1px;-webkit-border-radius:0 6px 6px 6px;-moz-border-radius:0 6px 6px 6px;border-radius:0 6px 6px 6px;}
.tabs a.menu:after,.tabs .dropdown-toggle:after{border-top-color:#999;margin-top:15px;margin-left:5px;}
.tabs li.open.menu .menu,.tabs .open.dropdown .dropdown-toggle{border-color:#999;}
.tabs li.open a.menu:after,.tabs .dropdown.open .dropdown-toggle:after{border-top-color:#555;}
.pills a{margin:5px 3px 5px 0;padding:0 15px;line-height:30px;text-shadow:0 1px 1px #ffffff;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px;}.pills a:hover{color:#ffffff;text-decoration:none;text-shadow:0 1px 1px rgba(0, 0, 0, 0.25);background-color:#00438a;}
.pills .active a{color:#ffffff;text-shadow:0 1px 1px rgba(0, 0, 0, 0.25);background-color:#0069d6;}
.pills-vertical>li{float:none;}
.tab-content>.tab-pane,.pill-content>.pill-pane{display:none;}
.tab-content>.active,.pill-content>.active{display:block;}
.breadcrumb{padding:7px 14px;margin:0 0 18px;background-color:#f5f5f5;background-repeat:repeat-x;background-image:-khtml-gradient(linear, left top, left bottom, from(#ffffff), to(#f5f5f5));background-image:-moz-linear-gradient(top, #ffffff, #f5f5f5);background-image:-ms-linear-gradient(top, #ffffff, #f5f5f5);background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffffff), color-stop(100%, #f5f5f5));background-image:-webkit-linear-gradient(top, #ffffff, #f5f5f5);background-image:-o-linear-gradient(top, #ffffff, #f5f5f5);background-image:linear-gradient(top, #ffffff, #f5f5f5);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f5f5f5', GradientType=0);border:1px solid #ddd;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:inset 0 1px 0 #ffffff;-moz-box-shadow:inset 0 1px 0 #ffffff;box-shadow:inset 0 1px 0 #ffffff;}.breadcrumb li{display:inline;text-shadow:0 1px 0 #ffffff;}
.breadcrumb .divider{padding:0 5px;color:#bfbfbf;}
.breadcrumb .active a{color:#404040;}
.hero-unit{background-color:#f5f5f5;margin-bottom:30px;padding:60px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;}.hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;letter-spacing:-1px;}
.hero-unit p{font-size:18px;font-weight:200;line-height:27px;}
footer{margin-top:17px;padding-top:17px;border-top:1px solid #eee;}
.page-header{margin-bottom:17px;border-bottom:1px solid #ddd;-webkit-box-shadow:0 1px 0 rgba(255, 255, 255, 0.5);-moz-box-shadow:0 1px 0 rgba(255, 255, 255, 0.5);box-shadow:0 1px 0 rgba(255, 255, 255, 0.5);}.page-header h1{margin-bottom:8px;}
.btn.danger,.alert-message.danger,.btn.danger:hover,.alert-message.danger:hover,.btn.error,.alert-message.error,.btn.error:hover,.alert-message.error:hover,.btn.success,.alert-message.success,.btn.success:hover,.alert-message.success:hover,.btn.info,.alert-message.info,.btn.info:hover,.alert-message.info:hover{color:#ffffff;}
.btn .close,.alert-message .close{font-family:Arial,sans-serif;line-height:18px;}
.btn.danger,.alert-message.danger,.btn.error,.alert-message.error{background-color:#c43c35;background-repeat:repeat-x;background-image:-khtml-gradient(linear, left top, left bottom, from(#ee5f5b), to(#c43c35));background-image:-moz-linear-gradient(top, #ee5f5b, #c43c35);background-image:-ms-linear-gradient(top, #ee5f5b, #c43c35);background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #ee5f5b), color-stop(100%, #c43c35));background-image:-webkit-linear-gradient(top, #ee5f5b, #c43c35);background-image:-o-linear-gradient(top, #ee5f5b, #c43c35);background-image:linear-gradient(top, #ee5f5b, #c43c35);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#c43c35', GradientType=0);text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);border-color:#c43c35 #c43c35 #882a25;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);}
.btn.success,.alert-message.success{background-color:#57a957;background-repeat:repeat-x;background-image:-khtml-gradient(linear, left top, left bottom, from(#62c462), to(#57a957));background-image:-moz-linear-gradient(top, #62c462, #57a957);background-image:-ms-linear-gradient(top, #62c462, #57a957);background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #62c462), color-stop(100%, #57a957));background-image:-webkit-linear-gradient(top, #62c462, #57a957);background-image:-o-linear-gradient(top, #62c462, #57a957);background-image:linear-gradient(top, #62c462, #57a957);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#57a957', GradientType=0);text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);border-color:#57a957 #57a957 #3d773d;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);}
.btn.info,.alert-message.info{background-color:#339bb9;background-repeat:repeat-x;background-image:-khtml-gradient(linear, left top, left bottom, from(#5bc0de), to(#339bb9));background-image:-moz-linear-gradient(top, #5bc0de, #339bb9);background-image:-ms-linear-gradient(top, #5bc0de, #339bb9);background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #5bc0de), color-stop(100%, #339bb9));background-image:-webkit-linear-gradient(top, #5bc0de, #339bb9);background-image:-o-linear-gradient(top, #5bc0de, #339bb9);background-image:linear-gradient(top, #5bc0de, #339bb9);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de', endColorstr='#339bb9', GradientType=0);text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);border-color:#339bb9 #339bb9 #22697d;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);}
.btn{cursor:pointer;display:inline-block;background-color:#e6e6e6;background-repeat:no-repeat;background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#e6e6e6));background-image:-webkit-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);background-image:-moz-linear-gradient(top, #ffffff, #ffffff 25%, #e6e6e6);background-image:-ms-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);background-image:-o-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);background-image:linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0);padding:5px 14px 6px;text-shadow:0 1px 1px rgba(255, 255, 255, 0.75);color:#333;font-size:13px;line-height:normal;border:1px solid #ccc;border-bottom-color:#bbb;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2),0 1px 2px rgba(0, 0, 0, 0.05);-moz-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2),0 1px 2px rgba(0, 0, 0, 0.05);box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2),0 1px 2px rgba(0, 0, 0, 0.05);-webkit-transform-style:preserve-3d;-webkit-transition:0.1s linear all;-moz-transition:0.1s linear all;-ms-transition:0.1s linear all;-o-transition:0.1s linear all;transition:0.1s linear all;}.btn:hover{background-position:0 -15px;color:#333;text-decoration:none;}
.btn:focus{outline:1px dotted #666;}
.btn.primary{color:#ffffff;background-color:#0064cd;background-repeat:repeat-x;background-image:-khtml-gradient(linear, left top, left bottom, from(#049cdb), to(#0064cd));background-image:-moz-linear-gradient(top, #049cdb, #0064cd);background-image:-ms-linear-gradient(top, #049cdb, #0064cd);background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #049cdb), color-stop(100%, #0064cd));background-image:-webkit-linear-gradient(top, #049cdb, #0064cd);background-image:-o-linear-gradient(top, #049cdb, #0064cd);background-image:linear-gradient(top, #049cdb, #0064cd);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#049cdb', endColorstr='#0064cd', GradientType=0);text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);border-color:#0064cd #0064cd #003f81;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);}
.btn.active,.btn :active{-webkit-box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.25),0 1px 2px rgba(0, 0, 0, 0.05);-moz-box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.25),0 1px 2px rgba(0, 0, 0, 0.05);box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.25),0 1px 2px rgba(0, 0, 0, 0.05);}
.btn.disabled{cursor:default;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);filter:alpha(opacity=65);-khtml-opacity:0.65;-moz-opacity:0.65;opacity:0.65;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;}
.btn[disabled]{cursor:default;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);filter:alpha(opacity=65);-khtml-opacity:0.65;-moz-opacity:0.65;opacity:0.65;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;}
.btn.large{font-size:15px;line-height:normal;padding:9px 14px 9px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;}
.btn.small{padding:7px 9px 7px;font-size:11px;}
:root .alert-message,:root .btn{border-radius:0 \0;}
button.btn::-moz-focus-inner,input[type=submit].btn::-moz-focus-inner{padding:0;border:0;}
.close{float:right;color:#000000;font-size:20px;font-weight:bold;line-height:13.5px;text-shadow:0 1px 0 #ffffff;filter:alpha(opacity=25);-khtml-opacity:0.25;-moz-opacity:0.25;opacity:0.25;}.close:hover{color:#000000;text-decoration:none;filter:alpha(opacity=40);-khtml-opacity:0.4;-moz-opacity:0.4;opacity:0.4;}
.alert-message{position:relative;padding:7px 15px;margin-bottom:18px;color:#404040;background-color:#eedc94;background-repeat:repeat-x;background-image:-khtml-gradient(linear, left top, left bottom, from(#fceec1), to(#eedc94));background-image:-moz-linear-gradient(top, #fceec1, #eedc94);background-image:-ms-linear-gradient(top, #fceec1, #eedc94);background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #fceec1), color-stop(100%, #eedc94));background-image:-webkit-linear-gradient(top, #fceec1, #eedc94);background-image:-o-linear-gradient(top, #fceec1, #eedc94);background-image:linear-gradient(top, #fceec1, #eedc94);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fceec1', endColorstr='#eedc94', GradientType=0);text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);border-color:#eedc94 #eedc94 #e4c652;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);text-shadow:0 1px 0 rgba(255, 255, 255, 0.5);border-width:1px;border-style:solid;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.25);-moz-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.25);box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.25);}.alert-message .close{margin-top:1px;*margin-top:0;}
.alert-message a{font-weight:bold;color:#404040;}
.alert-message.danger p a,.alert-message.error p a,.alert-message.success p a,.alert-message.info p a{color:#ffffff;}
.alert-message h5{line-height:18px;}
.alert-message p{margin-bottom:0;}
.alert-message div{margin-top:5px;margin-bottom:2px;line-height:28px;}
.alert-message .btn{-webkit-box-shadow:0 1px 0 rgba(255, 255, 255, 0.25);-moz-box-shadow:0 1px 0 rgba(255, 255, 255, 0.25);box-shadow:0 1px 0 rgba(255, 255, 255, 0.25);}
.alert-message.block-message{background-image:none;background-color:#fdf5d9;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);padding:14px;border-color:#fceec1;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;}.alert-message.block-message ul,.alert-message.block-message p{margin-right:30px;}
.alert-message.block-message ul{margin-bottom:0;}
.alert-message.block-message li{color:#404040;}
.alert-message.block-message .alert-actions{margin-top:5px;}
.alert-message.block-message.error,.alert-message.block-message.success,.alert-message.block-message.info{color:#404040;text-shadow:0 1px 0 rgba(255, 255, 255, 0.5);}
.alert-message.block-message.error{background-color:#fddfde;border-color:#fbc7c6;}
.alert-message.block-message.success{background-color:#d1eed1;border-color:#bfe7bf;}
.alert-message.block-message.info{background-color:#ddf4fb;border-color:#c6edf9;}
.alert-message.block-message.danger p a,.alert-message.block-message.error p a,.alert-message.block-message.success p a,.alert-message.block-message.info p a{color:#404040;}
.pagination{height:36px;margin:18px 0;}.pagination ul{float:left;margin:0;border:1px solid #ddd;border:1px solid rgba(0, 0, 0, 0.15);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 2px rgba(0, 0, 0, 0.05);-moz-box-shadow:0 1px 2px rgba(0, 0, 0, 0.05);box-shadow:0 1px 2px rgba(0, 0, 0, 0.05);}
.pagination li{display:inline;}
.pagination a{float:left;padding:0 14px;line-height:34px;border-right:1px solid;border-right-color:#ddd;border-right-color:rgba(0, 0, 0, 0.15);*border-right-color:#ddd;text-decoration:none;}
.pagination a:hover,.pagination .active a{background-color:#c7eefe;}
.pagination .disabled a,.pagination .disabled a:hover{background-color:transparent;color:#bfbfbf;}
.pagination .next a{border:0;}
.well{background-color:#f5f5f5;margin-bottom:20px;padding:19px;min-height:20px;border:1px solid #eee;border:1px solid rgba(0, 0, 0, 0.05);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05);-moz-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05);box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05);}.well blockquote{border-color:#ddd;border-color:rgba(0, 0, 0, 0.15);}
.modal-backdrop{background-color:#000000;position:fixed;top:0;left:0;right:0;bottom:0;z-index:10000;}.modal-backdrop.fade{opacity:0;}
.modal-backdrop,.modal-backdrop.fade.in{filter:alpha(opacity=80);-khtml-opacity:0.8;-moz-opacity:0.8;opacity:0.8;}
.modal{position:fixed;top:50%;left:50%;z-index:11000;width:560px;margin:-250px 0 0 -280px;background-color:#ffffff;border:1px solid #999;border:1px solid rgba(0, 0, 0, 0.3);*border:1px solid #999;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 3px 7px rgba(0, 0, 0, 0.3);-moz-box-shadow:0 3px 7px rgba(0, 0, 0, 0.3);box-shadow:0 3px 7px rgba(0, 0, 0, 0.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box;}.modal .close{margin-top:7px;}
.modal.fade{-webkit-transform-style:preserve-3d;-webkit-transition:opacity .3s linear, top .3s ease-out;-moz-transition:opacity .3s linear, top .3s ease-out;-ms-transition:opacity .3s linear, top .3s ease-out;-o-transition:opacity .3s linear, top .3s ease-out;transition:opacity .3s linear, top .3s ease-out;top:-25%;}
.modal.fade.in{top:50%;}
.modal-header{border-bottom:1px solid #eee;padding:5px 15px;}
.modal-body{padding:15px;}
.modal-body form{margin-bottom:0;}
.modal-footer{background-color:#f5f5f5;padding:14px 15px 15px;border-top:1px solid #ddd;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;-webkit-box-shadow:inset 0 1px 0 #ffffff;-moz-box-shadow:inset 0 1px 0 #ffffff;box-shadow:inset 0 1px 0 #ffffff;zoom:1;margin-bottom:0;}.modal-footer:before,.modal-footer:after{display:table;content:"";zoom:1;}
.modal-footer:after{clear:both;}
.modal-footer .btn{float:right;margin-left:5px;}
.modal .popover,.modal .twipsy{z-index:12000;}
.twipsy{display:block;position:absolute;visibility:visible;padding:5px;font-size:11px;z-index:1000;filter:alpha(opacity=80);-khtml-opacity:0.8;-moz-opacity:0.8;opacity:0.8;}.twipsy.fade.in{filter:alpha(opacity=80);-khtml-opacity:0.8;-moz-opacity:0.8;opacity:0.8;}
.twipsy.above .twipsy-arrow{bottom:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #000000;}
.twipsy.left .twipsy-arrow{top:50%;right:0;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:5px solid #000000;}
.twipsy.below .twipsy-arrow{top:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #000000;}
.twipsy.right .twipsy-arrow{top:50%;left:0;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:5px solid #000000;}
.twipsy-inner{padding:3px 8px;background-color:#000000;color:white;text-align:center;max-width:200px;text-decoration:none;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;}
.twipsy-arrow{position:absolute;width:0;height:0;}
.popover{position:absolute;top:0;left:0;z-index:1000;padding:5px;display:none;}.popover.above .arrow{bottom:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #000000;}
.popover.right .arrow{top:50%;left:0;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:5px solid #000000;}
.popover.below .arrow{top:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #000000;}
.popover.left .arrow{top:50%;right:0;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:5px solid #000000;}
.popover .arrow{position:absolute;width:0;height:0;}
.popover .inner{background:#000000;background:rgba(0, 0, 0, 0.8);padding:3px;overflow:hidden;width:280px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 3px 7px rgba(0, 0, 0, 0.3);-moz-box-shadow:0 3px 7px rgba(0, 0, 0, 0.3);box-shadow:0 3px 7px rgba(0, 0, 0, 0.3);}
.popover .title{background-color:#f5f5f5;padding:9px 15px;line-height:1;-webkit-border-radius:3px 3px 0 0;-moz-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;border-bottom:1px solid #eee;}
.popover .content{background-color:#ffffff;padding:14px;-webkit-border-radius:0 0 3px 3px;-moz-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px;-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box;}.popover .content p,.popover .content ul,.popover .content ol{margin-bottom:0;}
.fade{-webkit-transform-style:preserve-3d;-webkit-transition:opacity 0.15s linear;-moz-transition:opacity 0.15s linear;-ms-transition:opacity 0.15s linear;-o-transition:opacity 0.15s linear;transition:opacity 0.15s linear;opacity:0;}.fade.in{opacity:1;}
.label{padding:1px 3px 2px;font-size:9.75px;font-weight:bold;color:#ffffff;text-transform:uppercase;white-space:nowrap;background-color:#bfbfbf;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;}.label.important{background-color:#c43c35;}
.label.warning{background-color:#f89406;}
.label.success{background-color:#46a546;}
.label.notice{background-color:#62cffc;}
.media-grid{margin-left:-20px;margin-bottom:0;zoom:1;}.media-grid:before,.media-grid:after{display:table;content:"";zoom:1;}
.media-grid:after{clear:both;}
.media-grid li{display:inline;}
.media-grid a{float:left;padding:4px;margin:0 0 18px 20px;border:1px solid #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0, 0, 0, 0.075);-moz-box-shadow:0 1px 1px rgba(0, 0, 0, 0.075);box-shadow:0 1px 1px rgba(0, 0, 0, 0.075);}.media-grid a img{display:block;}
.media-grid a:hover{border-color:#0069d6;-webkit-box-shadow:0 1px 4px rgba(0, 105, 214, 0.25);-moz-box-shadow:0 1px 4px rgba(0, 105, 214, 0.25);box-shadow:0 1px 4px rgba(0, 105, 214, 0.25);}
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+195 -132
View File
@@ -4,6 +4,7 @@
Bootstrap's documentation styles
Special styles for presenting Bootstrap's documentation and examples
*/
/* Body and structure
-------------------------------------------------- */
body {
@@ -11,10 +12,54 @@ body {
position: relative;
}
section {
padding-top: 80px;
margin-bottom: -40px;
padding-top: 60px;
}
#masthead, #footer {
section > .row {
margin-bottom: 10px;
}
/* Jumbotrons
-------------------------------------------------- */
.jumbotron {
min-width: 940px;
padding-top: 40px;
}
.jumbotron .inner {
background: transparent url(../img/grid-18px.png) top center;
padding: 45px 0;
-webkit-box-shadow: inset 0 10px 30px rgba(0,0,0,.3);
-moz-box-shadow: inset 0 10px 30px rgba(0,0,0,.3);
/* box-shadow: inset 0 10px 30px rgba(0,0,0,.3);
*/}
.jumbotron h1,
.jumbotron p {
margin-bottom: 9px;
color: #fff;
text-align: center;
text-shadow: 0 1px 1px rgba(0,0,0,.3);
}
.jumbotron h1 {
font-size: 54px;
line-height: 1;
text-shadow: 0 1px 2px rgba(0,0,0,.5);
}
.jumbotron p {
font-weight: 300;
}
.jumbotron .lead {
font-size: 20px;
line-height: 27px;
}
.jumbotron p a {
color: #fff;
font-weight: bold;
}
/* Specific jumbotrons
------------------------- */
/* main docs page */
.masthead {
background-color: #049cd9;
background-repeat: no-repeat;
background-image: -webkit-gradient(linear, left top, left bottom, from(#004D9F), to(#049cd9));
@@ -22,50 +67,54 @@ section {
background-image: -moz-linear-gradient(#004D9F, #049cd9);
background-image: -o-linear-gradient(top, #004D9F, #049cd9);
background-image: -khtml-gradient(linear, left top, left bottom, from(#004D9F), to(#049cd9));
filter: progid:DXImageTransform.Microsoft.Gradient(StartColorStr='#004D9F', EndColorStr='#049cd9', GradientType=0);
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#004D9F', EndColorStr='#049cd9', GradientType=0))";
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#004D9F', endColorstr='#049cd9', GradientType=0); /* IE8 and down */
}
#masthead div.inner, #footer div.inner {
background: transparent url(../img/grid-18px.png) top center;
padding: 45px 0;
-webkit-box-shadow: inset 0 10px 30px rgba(0, 0, 0, 0.3);
-moz-box-shadow: inset 0 10px 30px rgba(0, 0, 0, 0.3);
box-shadow: inset 0 10px 30px rgba(0, 0, 0, 0.3);
/* supporting docs pages */
.subhead {
background-color: #767d80;
background-repeat: no-repeat;
background-image: -webkit-gradient(linear, left top, left bottom, from(#565d60), to(#767d80));
background-image: -webkit-linear-gradient(#565d60, #767d80);
background-image: -moz-linear-gradient(#565d60, #767d80);
background-image: -o-linear-gradient(top, #565d60, #767d80);
background-image: -khtml-gradient(linear, left top, left bottom, from(#565d60), to(#767d80));
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#565d60', endColorstr='#767d80', GradientType=0); /* IE8 and down */
}
#masthead h1,
#footer h1,
#masthead p,
#footer p {
color: #fff;
text-shadow: 0 1px 1px rgba(0,0,0,.3);
.subhead .inner {
padding: 36px 0 27px;
}
#masthead p a,
#footer p a {
color: #fff;
font-weight: bold;
.subhead h1,
.subhead p {
text-align: left;
}
#masthead {
margin-top: 40px;
.subhead h1 {
font-size: 40px;
}
#masthead h1,
#masthead p {
text-align: center;
margin-bottom: 9px;
}
#masthead h1 {
font-size: 54px;
line-height: 1;
text-shadow: 0 1px 2px rgba(0,0,0,.5);
}
#masthead p {
font-weight: 300;
}
#masthead p.lead {
font-size: 20px;
line-height: 27px;
.subhead p a {
font-weight: normal;
}
div.quickstart {
/* Footer
-------------------------------------------------- */
.footer {
background-color: #eee;
min-width: 940px;
padding: 30px 0;
text-shadow: 0 1px 0 #fff;
border-top: 1px solid #e5e5e5;
-webkit-box-shadow: inset 0 5px 15px rgba(0,0,0,.025);
-moz-box-shadow: inset 0 5px 15px rgba(0,0,0,.025);
/* box-shadow: inset 0 5px 15px rgba(0,0,0,.025);
*/}
.footer p {
color: #555;
}
/* Quickstart section for getting le code
-------------------------------------------------- */
.quickstart {
background-color: #f5f5f5;
background-repeat: repeat-x;
background-image: -khtml-gradient(linear, left top, left bottom, from(#f9f9f9), to(#f5f5f5));
@@ -77,41 +126,47 @@ div.quickstart {
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9f9f9', endColorstr='#f5f5f5', GradientType=0)";
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9f9f9', endColorstr='#f5f5f5', GradientType=0);
background-image: linear-gradient(#f9f9f9, #f5f5f5);
margin-bottom: -36px;
border-top: 1px solid #fff;
border-bottom: 1px solid #eee;
}
div.quickstart div.row {
.quickstart .container {
margin-bottom: 0;
}
.quickstart .row {
margin: 0 -20px;
-webkit-box-shadow: 1px 0 0 #f9f9f9;
-moz-box-shadow: 1px 0 0 #f9f9f9;
box-shadow: 1px 0 0 #f9f9f9;
-moz-box-shadow: 1px 0 0 #f9f9f9;
box-shadow: 1px 0 0 #f9f9f9;
}
div.quickstart div.columns {
.quickstart [class*="span"] {
width: 285px;
height: 117px;
margin-left: 0;
padding: 17px 20px 26px;
border-left: 1px solid #eee;
-webkit-box-shadow: inset 1px 0 0 #f9f9f9;
-moz-box-shadow: inset 1px 0 0 #f9f9f9;
box-shadow: inset 1px 0 0 #f9f9f9;
-moz-box-shadow: inset 1px 0 0 #f9f9f9;
box-shadow: inset 1px 0 0 #f9f9f9;
}
div.quickstart div.columns:last-child {
.quickstart [class*="span"]:last-child {
border-right: 1px solid #eee;
width: 286px;
}
div.quickstart h6,
div.quickstart p {
.quickstart h6,
.quickstart p {
line-height: 18px;
text-align: center;
margin-bottom: 9px;
color: #333;
}
div.quickstart h6 {
.quickstart .current-version,
.quickstart .current-version a {
color: #999;
}
div.quickstart form textarea {
.quickstart h6 {
color: #999;
}
.quickstart textarea {
display: block;
width: 275px;
height: auto;
@@ -120,135 +175,143 @@ div.quickstart form textarea {
white-space: nowrap;
overflow: hidden;
}
#footer {
margin-top: 80px;
}
#footer p {
margin-bottom: 0;
color: rgba(255,255,255,.8)
}
#footer p.right {
float: right;
}
/* Special grid styles
-------------------------------------------------- */
.show-grid {
margin-top: 20px;
margin-bottom: 20px;
margin-top: 10px;
margin-bottom: 10px;
}
.show-grid .column, .show-grid .columns {
background: rgba(0, 0, 0, 0.1);
.show-grid [class*="span"] {
background: #eee;
text-align: center;
-moz-border-radius: 3px;
border-radius: 3px;
height: 30px;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
min-height: 30px;
line-height: 30px;
}
.show-grid:hover .column, .show-grid:hover .columns {
background: rgba(0, 0, 0, 0.25);
.show-grid:hover [class*="span"] {
background: #ddd;
}
/* Hashgrid.js grid (press G & H to view)
-------------------------------------------------- */
#grid {
width: 980px;
position: absolute;
top: 0;
left: 50%;
margin-left: -490px;
.show-grid .show-grid {
margin-top: 0;
margin-bottom: 0;
}
#grid div.vert {
background-color: rgba(0, 206, 209, 0.075);
width: 39px;
border: solid darkturquoise;
border-width: 0 1px;
margin-right: 19px;
}
#grid div.vert.first-line {
margin-left: 19px;
}
#grid div.horiz {
height: 19px;
border-bottom: 1px solid rgba(255, 0, 0, 0.1);
margin: 0;
padding: 0;
}
#grid div.horiz:nth-child(5n) {
border-color: rgba(255, 0, 0, 0.25);
.show-grid .show-grid [class*="span"] {
background-color: #ccc;
}
/* Render mini layout previews
-------------------------------------------------- */
div.mini-layout {
height: 340px;
.mini-layout {
border: 1px solid #ddd;
-webkit-border-radius: 6px;
-moz-border-radius: 6px;
border-radius: 6px;
-webkit-box-shadow: 0 1px 2px rgba(0,0,0,.075);
-moz-box-shadow: 0 1px 2px rgba(0,0,0,.075);
box-shadow: 0 1px 2px rgba(0,0,0,.075);
}
.mini-layout {
height: 240px;
margin-bottom: 20px;
padding: 9px;
border: 1px solid rgba(0, 0, 0, 0.25);
-moz-border-radius: 6px;
border-radius: 6px;
-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.125);
-moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.125);
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.125);
}
div.mini-layout div {
-moz-border-radius: 3px;
border-radius: 3px;
.mini-layout div {
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
}
div.mini-layout div.mini-layout-body {
background-color: rgba(141, 192, 219, 0.25);
.mini-layout .mini-layout-body {
background-color: #dceaf4;
margin: 0 auto;
width: 450px;
height: 340px;
width: 240px;
height: 240px;
}
div.mini-layout.fluid div.mini-layout-sidebar, div.mini-layout.fluid div.mini-layout-header, div.mini-layout.fluid div.mini-layout-body {
.mini-layout.fluid .mini-layout-sidebar,
.mini-layout.fluid .mini-layout-header,
.mini-layout.fluid .mini-layout-body {
float: left;
}
div.mini-layout.fluid div.mini-layout-sidebar {
background-color: rgba(141, 192, 219, 0.5);
.mini-layout.fluid .mini-layout-sidebar {
background-color: #bbd8e9;
width: 90px;
height: 340px;
height: 240px;
}
div.mini-layout.fluid div.mini-layout-body {
width: 400px;
.mini-layout.fluid .mini-layout-body {
width: 300px;
margin-left: 10px;
}
/* Topbar special styles
-------------------------------------------------- */
div.topbar-wrapper {
.topbar-wrapper {
position: relative;
height: 40px;
margin: 5px 0 15px;
}
div.topbar-wrapper div.topbar {
.topbar-wrapper .topbar {
position: absolute;
margin: 0 -20px;
}
.topbar-wrapper .topbar .topbar-inner {
padding-left: 20px;
padding-right: 20px;
-moz-border-radius: 4px;
border-radius: 4px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}
/* Topbar in js docs
------------------------- */
#bootstrap-js .topbar-wrapper {
z-index: 1;
}
#bootstrap-js .topbar-wrapper .topbar {
position: absolute;
margin: 0 -20px;
}
#bootstrap-js .topbar-wrapper .topbar .topbar-inner {
padding-left: 20px;
padding-right: 20px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}
#bootstrap-js .topbar-wrapper .container {
width: auto;
}
/* Popover docs
-------------------------------------------------- */
div.popover-well {
.popover-well {
min-height: 160px;
}
div.popover-well div.popover {
.popover-well .popover {
display: block;
}
div.popover-well div.popover-wrapper {
.popover-well .popover-wrapper {
width: 50%;
height: 160px;
float: left;
margin-left: 55px;
position:relative;
position: relative;
}
div.popover-well div.popover-menu-wrapper {
.popover-well .popover-menu-wrapper {
height: 80px;
}
img.large-bird {
margin: 5px 0 0 310px;
opacity:.1;
opacity: .1;
}
/* Pretty Print
-------------------------------------------------- */
pre.prettyprint {
overflow: hidden;
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

+28 -120
View File
@@ -1,144 +1,52 @@
$(document).ready(function(){
// scroll spy logic
// ================
var activeTarget,
$window = $(window),
position = {},
nav = $('body > .topbar li a'),
targets = nav.map(function () {
return $(this).attr('href');
}),
offsets = $.map(targets, function (id) {
return $(id).offset().top;
});
function setButton(id) {
nav.parent("li").removeClass('active');
$(nav[$.inArray(id, targets)]).parent("li").addClass('active');
}
function processScroll(e) {
var scrollTop = $window.scrollTop() + 10, i;
for (i = offsets.length; i--;) {
if (activeTarget != targets[i] && scrollTop >= offsets[i] && (!offsets[i + 1] || scrollTop <= offsets[i + 1])) {
activeTarget = targets[i];
setButton(activeTarget);
}
}
}
nav.click(function () {
processScroll();
});
processScroll();
$window.scroll(processScroll);
// Dropdown example for topbar nav
// ===============================
$("body").bind("click", function(e) {
$("ul.menu-dropdown").hide();
$('a.menu').parent("li").removeClass("open").children("ul.menu-dropdown").hide();
});
$("a.menu").click(function(e) {
var $target = $(this);
var $parent = $target.parent("li");
var $siblings = $target.siblings("ul.menu-dropdown");
var $parentSiblings = $parent.siblings("li");
if ($parent.hasClass("open")) {
$parent.removeClass("open");
$siblings.hide();
} else {
$parent.addClass("open");
$siblings.show();
}
$parentSiblings.children("ul.menu-dropdown").hide();
$parentSiblings.removeClass("open");
return false;
});
// table sort example
// ==================
$("#sortTableExample").tablesorter( {sortList: [[1,0]]} );
$("#sortTableExample").tablesorter( { sortList: [[ 1, 0 ]] } )
// add on logic
// ============
$('.add-on :checkbox').click(function() {
$('.add-on :checkbox').click(function () {
if ($(this).attr('checked')) {
$(this).parents('.add-on').addClass('active');
$(this).parents('.add-on').addClass('active')
} else {
$(this).parents('.add-on').removeClass('active');
$(this).parents('.add-on').removeClass('active')
}
});
})
// Disable certain links in docs
// =============================
// Please do not carry these styles over to your projects, it's merely here to prevent button clicks form taking you away from your spot on page
$('ul.tabs a, ul.pills a, .pagination a, .well .btn, .actions .btn, .alert-message .btn, a.close').click(function(e) {
e.preventDefault();
});
$('ul.tabs a, ul.pills a, .pagination a, .well .btn, .actions .btn, .alert-message .btn, a.close').click(function (e) {
e.preventDefault()
})
// Copy code blocks in docs
$(".copy-code").focus(function() {
$(this).select();
});
$(".copy-code").mouseup(function(e) {
e.preventDefault();
$(".copy-code").focus(function () {
var el = this;
// push select to event loop for chrome :{o
setTimeout(function () { $(el).select(); }, 0);
});
// POSITION TWIPSIES
// =================
// POSITION STATIC TWIPSIES
// ========================
$('.twipsies.well a').each(function () {
var type = this.title
, $anchor = $(this)
, $twipsy = $('.twipsy.' + type)
, twipsy = {
width: $twipsy.width() + 10
, height: $twipsy.height() + 10
}
, anchor = {
position: $anchor.position()
, width: $anchor.width()
, height: $anchor.height()
}
, offset = {
above: {
top: anchor.position.top - twipsy.height
, left: anchor.position.left + (anchor.width/2) - (twipsy.width/2)
}
, below: {
top: anchor.position.top + anchor.height
, left: anchor.position.left + (anchor.width/2) - (twipsy.width/2)
}
, left: {
top: anchor.position.top + (anchor.height/2) - (twipsy.height/2)
, left: anchor.position.left - twipsy.width - 5
}
, right: {
top: anchor.position.top + (anchor.height/2) - (twipsy.height/2)
, left: anchor.position.left + anchor.width + 5
}
}
$twipsy.css(offset[type])
});
});
$(window).bind( 'load resize', function () {
$(".twipsies a").each(function () {
$(this)
.twipsy({
live: false
, placement: $(this).attr('title')
, trigger: 'manual'
, offset: 2
})
.twipsy('show')
})
})
});
@@ -6,18 +6,28 @@
.kwd, .tag { color: #195f91; }
.typ, .atn, .dec, .var { color: #CB4B16; }
.pln { color: #93a1a1; }
pre.prettyprint {
background: #fefbf3;
.prettyprint {
background-color: #fefbf3;
padding: 9px;
border: 1px solid rgba(0,0,0,.2);
-webkit-box-shadow: 0 1px 2px rgba(0,0,0,.1);
-moz-box-shadow: 0 1px 2px rgba(0,0,0,.1);
box-shadow: 0 1px 2px rgba(0,0,0,.1);
-moz-box-shadow: 0 1px 2px rgba(0,0,0,.1);
box-shadow: 0 1px 2px rgba(0,0,0,.1);
}
/* Specify class=linenums on a pre to get line numbering */
ol.linenums { margin: 0 0 0 40px; } /* IE indents via margin-left */
ol.linenums li { color: rgba(0,0,0,.15); line-height: 20px; }
ol.linenums {
margin: 0 0 0 40px;
}
/* IE indents via margin-left */
ol.linenums li {
padding: 0 5px;
color: rgba(0,0,0,.15);
line-height: 20px;
-webkit-border-radius: 2px;
-moz-border-radius: 2px;
border-radius: 2px;
}
/* Alternate shading for lines */
li.L1, li.L3, li.L5, li.L7, li.L9 { }
@@ -38,4 +48,47 @@ $violet: #6c71c4;
$blue: #268bd2;
$cyan: #2aa198;
$green: #859900;
*/
*/
/*
#1d1f21 Background
#282a2e Current Line
#373b41 Selection
#c5c8c6 Foreground
#969896 Comment
#cc6666 Red
#de935f Orange
#f0c674 Yellow
#b5bd68 Green
#8abeb7 Aqua
#81a2be Blue
#b294bb Purple
*/
/* DARK THEME */
/* ---------- */
.prettyprint-dark {
background-color: #1d1f21;
border: 0;
padding: 10px;
}
.prettyprint-dark .linenums li {
color: #444;
}
.prettyprint-dark .linenums li:hover {
background-color: #282a2e;
}
/* tags in html */
.prettyprint-dark .kwd,
.prettyprint-dark .tag { color: #cc6666; }
/* html attr */
.prettyprint-dark .typ,
.prettyprint-dark .atn,
.prettyprint-dark .dec,
.prettyprint-dark .var { color: #de935f; }
/* html attr values */
.prettyprint-dark .str,
.prettyprint-dark .atv { color: #b5bd68; }
-104
View File
@@ -1,104 +0,0 @@
(function($) {
$.fn.tipsy = function(options) {
options = $.extend({}, $.fn.tipsy.defaults, options);
return this.each(function() {
var opts = $.fn.tipsy.elementOptions(this, options);
$(this).hover(function() {
$.data(this, 'cancel.tipsy', true);
var tip = $.data(this, 'active.tipsy');
if (!tip) {
tip = $('<div class="tipsy"><div class="tipsy-inner"/></div>');
tip.css({position: 'absolute', zIndex: 100000});
$.data(this, 'active.tipsy', tip);
}
if ($(this).attr('title') || typeof($(this).attr('original-title')) != 'string') {
$(this).attr('original-title', $(this).attr('title') || '').removeAttr('title');
}
var title;
if (typeof opts.title == 'string') {
title = $(this).attr(opts.title == 'title' ? 'original-title' : opts.title);
} else if (typeof opts.title == 'function') {
title = opts.title.call(this);
}
tip.find('.tipsy-inner')[opts.html ? 'html' : 'text'](title || opts.fallback);
var pos = $.extend({}, $(this).offset(), {width: this.offsetWidth, height: this.offsetHeight});
tip.get(0).className = 'tipsy'; // reset classname in case of dynamic gravity
tip.remove().css({top: 0, left: 0, visibility: 'hidden', display: 'block'}).appendTo(document.body);
var actualWidth = tip[0].offsetWidth, actualHeight = tip[0].offsetHeight;
var gravity = (typeof opts.gravity == 'function') ? opts.gravity.call(this) : opts.gravity;
switch (gravity.charAt(0)) {
case 'n':
tip.css({top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2}).addClass('tipsy-north');
break;
case 's':
tip.css({top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2}).addClass('tipsy-south');
break;
case 'e':
tip.css({top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth}).addClass('tipsy-east');
break;
case 'w':
tip.css({top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width}).addClass('tipsy-west');
break;
}
if (opts.fade) {
tip.css({opacity: 0, display: 'block', visibility: 'visible'}).animate({opacity: 0.8});
} else {
tip.css({visibility: 'visible'});
}
}, function() {
$.data(this, 'cancel.tipsy', false);
var self = this;
setTimeout(function() {
if ($.data(this, 'cancel.tipsy')) return;
var tip = $.data(self, 'active.tipsy');
if (opts.fade) {
tip.stop().fadeOut(function() { $(this).remove(); });
} else {
tip.remove();
}
}, 100);
});
});
};
// Overwrite this method to provide options on a per-element basis.
// For example, you could store the gravity in a 'tipsy-gravity' attribute:
// return $.extend({}, options, {gravity: $(ele).attr('tipsy-gravity') || 'n' });
// (remember - do not modify 'options' in place!)
$.fn.tipsy.elementOptions = function(ele, options) {
return $.metadata ? $.extend({}, options, $(ele).metadata()) : options;
};
$.fn.tipsy.defaults = {
fade: false,
fallback: '',
gravity: 'n',
html: false,
title: 'title'
};
$.fn.tipsy.autoNS = function() {
return $(this).offset().top > ($(document).scrollTop() + $(window).height() / 2) ? 's' : 'n';
};
$.fn.tipsy.autoWE = function() {
return $(this).offset().left > ($(document).scrollLeft() + $(window).width() / 2) ? 'e' : 'w';
};
})(jQuery);
+1717 -995
View File
File diff suppressed because it is too large Load Diff
+798
View File
@@ -0,0 +1,798 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Bootstrap, from Twitter</title>
<meta name="description" content="">
<meta name="author" content="">
<!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<!-- Le javascript -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<script src="assets/js/google-code-prettify/prettify.js"></script>
<script>$(function () { prettyPrint() })</script>
<script src="../js/bootstrap-modal.js"></script>
<script src="../js/bootstrap-alerts.js"></script>
<script src="../js/bootstrap-twipsy.js"></script>
<script src="../js/bootstrap-popover.js"></script>
<script src="../js/bootstrap-dropdown.js"></script>
<script src="../js/bootstrap-scrollspy.js"></script>
<script src="../js/bootstrap-tabs.js"></script>
<script src="../js/bootstrap-buttons.js"></script>
<!-- Le styles -->
<link href="../bootstrap.css" rel="stylesheet">
<link href="assets/css/docs.css" rel="stylesheet">
<link href="assets/js/google-code-prettify/prettify.css" rel="stylesheet">
<!-- Le fav and touch icons -->
<link rel="shortcut icon" type="image/x-icon" href="assets/ico/favicon.ico">
<link rel="apple-touch-icon" href="assets/ico/bootstrap-apple-57x57.png">
<link rel="apple-touch-icon" sizes="72x72" href="assets/ico/bootstrap-apple-72x72.png">
<link rel="apple-touch-icon" sizes="114x114" href="assets/ico/bootstrap-apple-114x114.png">
</head>
<body id="bootstrap-js">
<!-- Topbar
================================================== -->
<div class="topbar" data-scrollspy="scrollspy" >
<div class="fill">
<div class="container">
<h3><a href="#">Bootstrap JS</a></h3>
<ul>
<li><a href="#overview">Overview</a></li>
<li><a href="#modal">Modals</a></li>
<li><a href="#dropdown">Dropdown</a></li>
<li><a href="#scrollspy">ScrollSpy</a></li>
<li><a href="#buttons">Buttons</a></li>
<li><a href="#tabs">Tabs</a></li>
<li><a href="#twipsy">Twipsy</a></li>
<li><a href="#popover">Popover</a></li>
<li><a href="#alerts">Alerts</a></li>
</ul>
</div>
</div>
</div>
<!-- Masthead (blueprinty thing)
================================================== -->
<header class="jumbotron subhead" id="overview">
<div class="inner">
<div class="container">
<h1>Javascript for Bootstrap</h1>
<p class="lead">
Bring Bootstrap's components to life with new, custom plugins that work with <a href="http://jquery.com/" target="_blank">jQuery</a> and <a href="http://ender.no.de" target="_blank">Ender</a>.
</p>
<p><a href="./index.html">&larr; Back to Bootstrap home</a></p>
</div><!-- /container -->
</div>
</header>
<div class="container">
<!-- Modal
================================================== -->
<section id="modal">
<div class="page-header">
<h1>Modals <small>bootstrap-modal.js</small></h1>
</div>
<div class="row">
<div class="span4 columns">
<p>Our Modal plugin is a super slim take on the traditional modal js plugin, taking special care to include only the bare functionality that we require here at twitter.</p>
<a href="../js/bootstrap-modal.js" target="_blank" class="btn primary">Download</a>
</div>
<div class="span12 columns">
<h3>Using bootstrap-modal</h3>
<pre class="prettyprint linenums">$('#my-modal').modal(options)</pre>
<h3>Options</h3>
<table class="zebra-striped">
<thead>
<tr>
<th style="width: 100px;">Name</th>
<th style="width: 50px;">type</th>
<th style="width: 50px;">default</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>backdrop</td>
<td>boolean, string</td>
<td>false</td>
<td>Includes a modal-backdrop element. Set backdrop to <code>"static"</code> if you do not want the modal closed when the backdrop is clicked.</td>
</tr>
<tr>
<td>keyboard</td>
<td>boolean</td>
<td>false</td>
<td>Closes the modal when escape key is pressed</td>
</tr>
<tr>
<td>show</td>
<td>boolean</td>
<td>false</td>
<td>Opens modal on class initialization</td>
</tr>
</tbody>
</table>
<h3>Markup</h3>
<p>You can activate modals on your page easily without having to write a single line of javascript. Just give an element a <code>data-controls-modal</code> attribute which corresponds to a modal element id, and when clicked, it will launch your modal. To add modal options, just include them as data attributes as well.</p>
<pre class="prettyprint linenums">
&lt;a class="btn" data-controls-modal="my-modal" data-backdrop="static" &gt;Launch Modal&lt;/a&gt;
</pre>
<p><span class="label notice">Notice</span> If you want your modal to animate in and out, just add a <code>.fade</code> class to your <code>.modal</code> element (refer to the demo to see this in action).</p>
<h3>Methods</h3>
<h4>.modal(options)</h4>
<p>Activates your content as a modal. Accepts an optional options <code>object</code>.
<pre class="prettyprint linenums">
$('#my-modal').modal({
keyboard: true
})</pre>
<h4>.modal('toggle')</h4>
<p>Manually toggles a modal.</p>
<pre class="prettyprint linenums">$('#my-modal').modal('toggle')</pre>
<h4>.modal('show')</h4>
<p>Manually opens a modal.</p>
<pre class="prettyprint linenums">$('#my-modal').modal('show')</pre>
<h4>.modal('hide')</h4>
<p>Manually hides a modal.</p>
<pre class="prettyprint linenums">$('#my-modal').modal('hide')</pre>
<h4>.modal(true)</h4>
<p>Returns an elements modal class instance.</p>
<pre class="prettyprint linenums">$('#my-modal').modal(true)</pre>
<p><span class="label notice">Notice</span> Alternatively, this can be retrieved with <code>$().data('modal')</code>.</p>
<h3>Events</h3>
<p>Bootstrap's modal class exposes a few events for hooking into modal functionality. </p>
<table class="zebra-striped">
<thead>
<tr>
<th style="width: 150px;">Event</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>show</td>
<td>This event fires immediately when the <code>show</code> instance method is called.</td>
</tr>
<tr>
<td>shown</td>
<td>This event is fired when the modal has been made visible to the user (will wait for css transitions to complete).</td>
</tr>
<tr>
<td>hide</td>
<td>This event is fired immediately when the <code>hide</code> instance method has been called.</td>
</tr>
<tr>
<td>hidden</td>
<td>This event is fired when the modal has finished being hidden from the user (will wait for css transitions to complete).</td>
</tr>
</tbody>
</table>
<pre class="prettyprint linenums">
$('#my-modal').bind('hidden', function () {
// do something ...
})</pre>
<h3>Demo</h3>
<!-- sample modal content -->
<div id="modal-from-dom" class="modal hide fade">
<div class="modal-header">
<a href="#" class="close">&times;</a>
<h3>Modal Heading</h3>
</div>
<div class="modal-body">
<p>One fine body…</p>
</div>
<div class="modal-footer">
<a href="#" class="btn primary">Primary</a>
<a href="#" class="btn secondary">Secondary</a>
</div>
</div>
<button data-controls-modal="modal-from-dom" data-backdrop="true" data-keyboard="true" class="btn danger">Launch Modal</button>
</div>
</div>
</section>
<!-- Dropdown
================================================== -->
<section id="dropdown">
<div class="page-header">
<h1>Dropdown <small>bootstrap-dropdown.js</small></h1>
</div>
<div class="row">
<div class="span4 columns">
<p>This plugin is for adding dropdown interaction to the bootstrap topbar or tabbed navigations.</p>
<a href="../js/bootstrap-dropdown.js" target="_blank" class="btn primary">Download</a>
</div>
<div class="span12 columns">
<h3>Using bootstrap-dropdown.js</h3>
<pre class="prettyprint linenums">$('#topbar').dropdown()</pre>
<h3>Markup</h3>
<p>To quickly add dropdown functionality to any nav element, use the <code>data-dropdown</code> attribute. Any valid bootstrap dropdown will automatically be activated.</p>
<pre class="prettyprint linenums">
&lt;ul class="tabs"&gt;
&lt;li class="active"&gt;&lt;a href="#"&gt;Home&lt;/a&gt;&lt;/li&gt;
&lt;li class="dropdown" data-dropdown="dropdown" &gt;
&lt;a href="#" class="dropdown-toggle"&gt;Dropdown&lt;/a&gt;
&lt;ul class="dropdown-menu"&gt;
&lt;li&gt;&lt;a href="#"&gt;Secondary link&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#"&gt;Something else here&lt;/a&gt;&lt;/li&gt;
&lt;li class="divider"&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#"&gt;Another link&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</pre>
<p><span class="label notice">Notice</span> If your ui has several dropdowns, consider adding the <code>data-dropdown</code> attribute to a more significant container element like <code>.tabs</code> or <code>.topbar</code>.
<h3>Methods</h3>
<h4>$().dropdown()</h4>
<p>
A programatic api for activating menus for a given topbar or tabbed navigation.
</p>
<h3>Demo</h3>
<div class="topbar-wrapper">
<div id="topbar-example" class="topbar" data-dropdown="dropdown">
<div class="topbar-inner">
<div class="container">
<h3><a href="#">Project Name</a></h3>
<ul>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
</ul>
<form action="">
<input type="text" placeholder="Search" />
</form>
<ul class="nav secondary-nav">
<li class="menu">
<a href="#" class="menu">Dropdown 1</a>
<ul class="menu-dropdown">
<li><a href="#">Secondary link</a></li>
<li><a href="#">Something else here</a></li>
<li class="divider"></li>
<li><a href="#">Another link</a></li>
</ul>
</li>
<li class="menu">
<a href="#" class="menu">Dropdown 2</a>
<ul class="menu-dropdown">
<li><a href="#">Secondary link</a></li>
<li><a href="#">Something else here</a></li>
<li class="divider"></li>
<li><a href="#">Another link</a></li>
</ul>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- ScrollSpy
================================================== -->
<section id="scrollspy">
<div class="page-header">
<h1>ScrollSpy <small>bootstrap-scrollspy.js</small></h1>
</div>
<div class="row">
<div class="span4 columns">
<p>This plugin is for adding the scrollspy (auto updating nav) interaction to the bootstrap topbar.</p>
<a href="../js/bootstrap-scrollspy.js" target="_blank" class="btn primary">Download</a>
</div>
<div class="span12 columns">
<h2>Using bootstrap-scrollspy.js</h2>
<pre class="prettyprint linenums">$('#topbar').scrollSpy()</pre>
<h3>Markup</h3>
<p>To easily add scrollspy behavior to your nav, just add the <code>data-scrollspy</code> attribute to the <code>.topbar</code>.
<pre class="prettyprint linenums">&lt;div class="topbar" data-scrollspy="scrollspy" &gt;...&lt;/div&gt;</pre>
<h3>Methods</h3>
<h4>$().scrollSpy()</h4>
<p>
Auto activates navigation buttons by users scroll position.
</p>
<pre class="prettyprint linenums">$('body > .topbar').scrollSpy()</pre>
<p><span class="label notice">Notice</span> Topbar anchor tags must have resolvable id targets. For example, a <code>&lt;a href="#home"&gt;home&lt;/a&gt;</code> must correspond to something in the dom like <code>&lt;div id="home"&gt;&lt;/div&gt;</code>.
</p>
<h4>.scrollSpy('refresh')</h4>
<p>The scrollspy caches nav buttons and section coordinates for performance. If you need to update this cache (likely if you have dynamic content) just call this refresh method. If you used the data attribute to define your scrollspy, just call refresh on the body.</p>
<pre class="prettyprint linenums">$('body').scrollSpy('refresh')</pre>
<h3>Demo</h3>
<p>Checkout the the topbar navigation on this page.</p>
</div>
</div>
</section>
<!-- Buttons
================================================== -->
<section id="buttons">
<div class="page-header">
<h1>Buttons <small>bootstrap-buttons.js</small></h1>
</div>
<div class="row">
<div class="span4 columns">
<p>This plugin offers additional functionality for managing button state.</p>
<a href="../js/bootstrap-buttons.js" target="_blank" class="btn primary">Download</a>
</div>
<div class="span12 columns">
<h3>Using bootstrap-buttons.js</h3>
<pre class="prettyprint linenums">$('.tabs').button()</pre>
<h3>Methods</h3>
<h4>$().button('toggle')</h4>
<p>Toggles push state. Gives btn the look that it's been activated.</p>
<p><span class="label notice">Notice</span> You can enable auto toggling of a button by using the <code>data-toggle</code> attribute.</p>
<pre class="prettyprint linenums">&lt;button class="btn" data-toggle="toggle" &gt;...&lt;/button&gt;</pre>
<h4>$().button('loading')</h4>
<p>Sets button state to loading - disables button and swaps text to loading text. Loading text should be defined on the button element using the data attribute <code>data-loading-text</code>.
</p>
<pre class="prettyprint linenums">&lt;button class="btn" data-loading-text="loading stuff..." &gt;...&lt;/button&gt;</pre>
<h4>$().button('reset')</h4>
<p>Resets button state - swaps text to original text.</p>
<h4>$().button(string)</h4>
<p>Resets button state - swaps text to any data defined text state.</p>
<pre class="prettyprint linenums">&lt;button class="btn" data-complete-text="finished!" &gt;...&lt;/button&gt;
&lt;script&gt;
$('.btn').button('complete')
&lt;/scrip&gt;</pre>
<h3>Demo</h3>
<button id="fat-btn" data-loading-text="loading..." class="btn danger">Loading Demo</button>
<button class="btn" data-toggle="toggle">Toggle Demo</button>
<script>
$(function() {
var btn = $('#fat-btn').click(function () {
btn.button('loading')
setTimeout(function () {
btn.button('reset')
}, 3000)
})
})
</script>
</div>
</div>
</section>
<!-- Tabs
================================================== -->
<section id="tabs">
<div class="page-header">
<h1>Tabs <small>bootstrap-tabs.js</small></h1>
</div>
<div class="row">
<div class="span4 columns">
<p>This plugin adds quick, dynamic tab and pill functionality.</p>
<a href="../js/bootstrap-tabs.js" target="_blank" class="btn primary">Download</a>
</div>
<div class="span12 columns">
<h3>Using bootstrap-tabs.js</h3>
<pre class="prettyprint linenums">$('.tabs').tabs()</pre>
<h3>Markup</h3>
<p>You can activate a tab or pill navigation without writing any javascript by simply giving them a <code>data-tabs</code> or <code>data-pills</code> attribute.</p>
<pre class="prettyprint linenums"> &lt;ul class="tabs" data-tabs="tabs" &gt;...&lt;/ul&gt;</pre>
<h3>Methods</h3>
<h4>$().tabs or $().pills</h4>
<p>
Activates tab and pill functionality for a given container. Tab links should reference id's in the document.
</p>
<pre class="prettyprint linenums">
&lt;ul class="tabs"&gt;
&lt;li class="active"&gt;&lt;a href="#home"&gt;Home&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#profile"&gt;Profile&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#messages"&gt;Messages&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#settings"&gt;Settings&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="pill-content"&gt;
&lt;div class="active" id="home"&gt;...&lt;/div&gt;
&lt;div id="profile"&gt;...&lt;/div&gt;
&lt;div id="messages"&gt;...&lt;/div&gt;
&lt;div id="settings"&gt;...&lt;/div&gt;
&lt;/div&gt;
&lt;script&gt;
$(function () {
$('.tabs').tabs()
})
&lt;/script&gt;</pre>
</p>
<h3>Events</h3>
<table class="zebra-striped">
<thead>
<tr>
<th style="width: 150px;">Event</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>change</td>
<td>This event fires on tab change. Use <code>event.target</code> and <code>event.relatedTarget</code> to target the active tab and the previous active tab respectively.</td>
</tr>
</tbody>
</table>
<pre class="prettyprint linenums">
$('#.tabs').bind('change', function (e) {
e.target // activated tab
e.relatedTarget // previous tab
})</pre>
<h3>Demo</h3>
<ul class="tabs" data-tabs="tabs">
<li class="active"><a href="#home">Home</a></li>
<li><a href="#profile">Profile</a></li>
<li><a href="#messages">Messages</a></li>
<li><a href="#settings">Settings</a></li>
<li class="dropdown" data-dropdown="dropdown">
<a href="#" class="dropdown-toggle">Dropdown</a>
<ul class="dropdown-menu">
<li><a href="#fat">@fat</a></li>
<li><a href="#mdo">@mdo</a></li>
</ul>
</li>
</ul>
<div id="my-tab-content" class="tab-content">
<div class="active tab-pane" id="home">
<p>Raw denim you probably haven't heard of them jean shorts Austin. Nesciunt tofu stumptown aliqua, retro synth master cleanse. Mustache cliche tempor, williamsburg carles vegan helvetica. Reprehenderit butcher retro keffiyeh dreamcatcher synth. Cosby sweater eu banh mi, qui irure terry richardson ex squid. Aliquip placeat salvia cillum iphone. Seitan aliquip quis cardigan american apparel, butcher voluptate nisi qui.</p>
</div>
<div class="tab-pane" id="profile">
<p>Food truck fixie locavore, accusamus mcsweeney's marfa nulla single-origin coffee squid. Exercitation +1 labore velit, blog sartorial PBR leggings next level wes anderson artisan four loko farm-to-table craft beer twee. Qui photo booth letterpress, commodo enim craft beer mlkshk aliquip jean shorts ullamco ad vinyl cillum PBR. Homo nostrud organic, assumenda labore aesthetic magna delectus mollit. Keytar helvetica VHS salvia yr, vero magna velit sapiente labore stumptown. Vegan fanny pack odio cillum wes anderson 8-bit, sustainable jean shorts beard ut DIY ethical culpa terry richardson biodiesel. Art party scenester stumptown, tumblr butcher vero sint qui sapiente accusamus tattooed echo park.</p>
</div>
<div class="tab-pane" id="messages">
<p>Banksy do proident, brooklyn photo booth delectus sunt artisan sed organic exercitation eiusmod four loko. Quis tattooed iphone esse aliqua. Master cleanse vero fixie mcsweeney's. Ethical portland aute, irony food truck pitchfork lomo eu anim. Aesthetic blog DIY, ethical beard leggings tofu consequat whatever cardigan nostrud. Helvetica you probably haven't heard of them carles, marfa veniam occaecat lomo before they sold out in shoreditch scenester sustainable thundercats. Consectetur tofu craft beer, mollit brunch fap echo park pitchfork mustache dolor.</p>
</div>
<div class="tab-pane" id="settings">
<p>Sunt qui biodiesel mollit officia, fanny pack put a bird on it thundercats seitan squid ad wolf bicycle rights blog. Et aute readymade farm-to-table carles 8-bit, nesciunt nulla etsy adipisicing organic ea. Master cleanse mollit high life, next level Austin nesciunt american apparel twee mustache adipisicing reprehenderit hoodie portland irony. Aliqua tofu quinoa +1 commodo eiusmod. High life williamsburg cupidatat twee homo leggings. Four loko vinyl DIY consectetur nisi, marfa retro keffiyeh vegan. Fanny pack viral retro consectetur gentrify fap.</p>
</div>
<div class="tab-pane" id="fat">
<p>Etsy mixtape wayfarers, ethical wes anderson tofu before they sold out mcsweeney's organic lomo retro fanny pack lo-fi farm-to-table readymade. Messenger bag gentrify pitchfork tattooed craft beer, iphone skateboard locavore carles etsy salvia banksy hoodie helvetica. DIY synth PBR banksy irony. Leggings gentrify squid 8-bit cred pitchfork. Williamsburg banh mi whatever gluten-free, carles pitchfork biodiesel fixie etsy retro mlkshk vice blog. Scenester cred you probably haven't heard of them, vinyl craft beer blog stumptown. Pitchfork sustainable tofu synth chambray yr.</p>
</div>
<div class="tab-pane" id="mdo">
<p>Trust fund seitan letterpress, keytar raw denim keffiyeh etsy art party before they sold out master cleanse gluten-free squid scenester freegan cosby sweater. Fanny pack portland seitan DIY, art party locavore wolf cliche high life echo park Austin. Cred vinyl keffiyeh DIY salvia PBR, banh mi before they sold out farm-to-table VHS viral locavore cosby sweater. Lomo wolf viral, mustache readymade thundercats keffiyeh craft beer marfa ethical. Wolf salvia freegan, sartorial keffiyeh echo park vegan.</p>
</div>
</div>
</div>
</div>
</section>
<!-- Tips
================================================== -->
<section id="twipsy">
<div class="page-header">
<h1>Twipsy <small>bootstrap-twipsy.js</small></h1>
</div>
<div class="row">
<div class="span4 columns">
<p>Based on the excellent jQuery.tipsy plugin written by Jason Frame; twipsy is an updated version, which doesn't rely on images, uses css3 for animations, and data-attributes for title storage!</p>
<a href="../js/bootstrap-twipsy.js" target="_blank" class="btn primary">Download</a>
</div>
<div class="span12 columns">
<h3>Using bootstrap-twipsy.js</h3>
<pre class="prettyprint linenums">$('#example').twipsy(options)</pre>
<h3>Options</h3>
<table class="zebra-striped">
<thead>
<tr>
<th style="width: 100px;">Name</th>
<th style="width: 100px;">type</th>
<th style="width: 50px;">default</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>animate</td>
<td>boolean</td>
<td>true</td>
<td>apply a css fade transition to the tooltip</td>
</tr>
<tr>
<td>delayIn</td>
<td>number</td>
<td>0</td>
<td>delay before showing tooltip (ms)</td>
</tr>
<tr>
<td>delayOut</td>
<td>number</td>
<td>0</td>
<td>delay before hiding tooltip (ms)</td>
</tr>
<tr>
<td>fallback</td>
<td>string</td>
<td>''</td>
<td>text to use when no tooltip title is present</td>
</tr>
<tr>
<td>placement</td>
<td>string</td>
<td>'above'</td>
<td>how to position the tooltip - above | below | left | right</td>
</tr>
<tr>
<td>html</td>
<td>boolean</td>
<td>false</td>
<td>allows html content within tooltip</td>
</tr>
<tr>
<td>live</td>
<td>boolean</td>
<td>false</td>
<td>use event delegation instead of individual event handlers</td>
</tr>
<tr>
<td>offset</td>
<td>number</td>
<td>0</td>
<td>pixel offset of tooltip from target element</td>
</tr>
<tr>
<td>title</td>
<td>string, function</td>
<td>'title'</td>
<td>attribute or method for retrieving title text</td>
</tr>
<tr>
<td>trigger</td>
<td>string</td>
<td>'hover'</td>
<td>how tooltip is triggered - hover | focus | manual</td>
</tr>
<tr>
<td>template</td>
<td>string</td>
<td>[default markup]</td>
<td>The html template used for rendering a twipsy.</td>
</tr>
</tbody>
</table>
<p><span class="label notice">Notice</span> Individual twipsy instance options can alternatively be specified through the use of data attributes.</code></p>
<pre class="prettyprint linenums">&lt;a href="#" data-placement="below" rel='twipsy' title='Some title text'&gt;text&lt;/a&gt;</pre>
<h3>Methods</h3>
<h4>$().twipsy(options)</h4>
<p>Attaches a twipsy handler to an element collection.</p>
<h4>.twipsy('show')</h4>
<p>Reveals an elements twipsy.</p>
<pre class="prettyprint linenums">$('#element').twipsy('show')</pre>
<h4>.twipsy('hide')</h4>
<p>Hides an elements twipsy.</p>
<pre class="prettyprint linenums">$('#element').twipsy('hide')</pre>
<h4>.twipsy(true)</h4>
<p>Returns an elements twipsy class instance.</p>
<pre class="prettyprint linenums">$('#element').twipsy(true)</pre>
<p><span class="label notice">Notice</span> Alternatively, this can be retrieved with <code>$().data('twipsy')</code>.</p>
<h3>Demo</h3>
<div class="well">
<p class="muted">Tight pants next level keffiyeh <a href="#" rel='twipsy' title='Some title text'>you probably</a> haven't heard of them. Photo booth beard raw denim letterpress vegan messenger bag stumptown. Farm-to-table seitan, mcsweeney's fixie sustainable quinoa 8-bit american apparel <a href="#" rel='twipsy' title='Another twipsy'>have a</a> terry richardson vinyl chambray. Beard stumptown, cardigans banh mi lomo thundercats. Tofu biodiesel williamsburg marfa, four loko mcsweeney's cleanse vegan chambray. A <a href="#" rel='twipsy' title='Another one here too'>really ironic</a> artisan whatever keytar, scenester farm-to-table banksy Austin <a href="#" rel='twipsy' title='The last tip!'>twitter handle</a> freegan cred raw denim single-origin coffee viral.
</p>
</div>
<script>
$(function () {
$("a[rel=twipsy]").twipsy({
live: true
})
})
</script>
</div>
</div>
</section>
<!-- Popovers
================================================== -->
<section id="popover">
<div class="page-header">
<h1>Popovers <small>bootstrap-popover.js</small></h1>
</div>
<div class="row">
<div class="span4 columns">
<p>The popover plugin provides a simple interface for adding popovers to your application. It extends the <a href="#twipsy">bootstrap-twipsy.js</a> plugin, so be sure to grab that file as well when including popovers in your project!</p>
<p><span class="label notice">Notice</span> You must include the bootstrap-twipsy.js file <strong>before</strong> bootstrap-popover.js.</p>
<a href="../js/bootstrap-popover.js" target="_blank" class="btn primary">Download</a>
</div>
<div class="span12 columns">
<h3>Using bootstrap-popover.js</h3>
<pre class="prettyprint linenums">$('#example').popover(options)</pre>
<h3>Options</h3>
<table class="zebra-striped">
<thead>
<tr>
<th style="width: 100px;">Name</th>
<th style="width: 100px;">type</th>
<th style="width: 50px;">default</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>animate</td>
<td>boolean</td>
<td>true</td>
<td>apply a css fade transition to the tooltip</td>
</tr>
<tr>
<td>delayIn</td>
<td>number</td>
<td>0</td>
<td>delay before showing tooltip (ms)</td>
</tr>
<tr>
<td>delayOut</td>
<td>number</td>
<td>0</td>
<td>delay before hiding tooltip (ms)</td>
</tr>
<tr>
<td>fallback</td>
<td>string</td>
<td>''</td>
<td>text to use when no tooltip title is present</td>
</tr>
<tr>
<td>placement</td>
<td>string</td>
<td>'right'</td>
<td>how to position the tooltip - above | below | left | right</td>
</tr>
<tr>
<td>html</td>
<td>boolean</td>
<td>false</td>
<td>allows html content within tooltip</td>
</tr>
<tr>
<td>live</td>
<td>boolean</td>
<td>false</td>
<td>use event delegation instead of individual event handlers</td>
</tr>
<tr>
<td>offset</td>
<td>number</td>
<td>0</td>
<td>pixel offset of tooltip from target element</td>
</tr>
<tr>
<td>title</td>
<td>string, function</td>
<td>'title'</td>
<td>attribute or method for retrieving title text</td>
</tr>
<tr>
<td>content</td>
<td>string, function</td>
<td>'data-content'</td>
<td>a string or method for retrieving content text. if none are provided, content will be sourced from a data-content attribute.</td>
</tr>
<tr>
<td>trigger</td>
<td>string</td>
<td>'hover'</td>
<td>how tooltip is triggered - hover | focus | manual</td>
</tr>
<tr>
<td>template</td>
<td>string</td>
<td>[default markup]</td>
<td>The html template used for rendering a popover.</td>
</tr>
</tbody>
</table>
<p><span class="label notice">Notice</span> Individual popover instance options can alternatively be specified through the use of data attributes.</code></p>
<pre class="prettyprint linenums">&lt;a data-placement="below" href="#" class="btn danger" rel="popover"&gt;text&lt;/a&gt;</pre>
<h3>Methods</h3>
<h4>$().popover(options)</h4>
<p>Initializes popovers for an element collection.</p>
<h4>.popover('show')</h4>
<p>Reveals an elements popover.</p>
<pre class="prettyprint linenums">$('#element').popover('show')</pre>
<h4>.popover('hide')</h4>
<p>Hides an elements popover.</p>
<pre class="prettyprint linenums">$('#element').popover('hide')</pre>
<h3>Demo</h3>
<a href="#" class="btn danger" rel="popover" title="A title" data-content="And here's some amazing content. It's very engaging. right?">hover for popover</a>
<script>
$(function () {
$("a[rel=popover]")
.popover({
offset: 10
})
.click(function(e) {
e.preventDefault()
})
})
</script>
</div>
</div>
</section>
<!-- Alerts
================================================== -->
<section id="alerts">
<div class="page-header">
<h1>Alerts <small>bootstrap-alerts.js</small></h1>
</div>
<div class="row">
<div class="span4 columns">
<p>The alert plugin is a super tiny class for adding close functionality to alerts.</p>
<a href="../js/bootstrap-alerts.js" target="_blank" class="btn primary">Download</a>
</div>
<div class="span12 columns">
<h3>Using bootstrap-alerts.js</h3>
<pre class="prettyprint linenums">$(".alert-message").alert()</pre>
<h3>Markup</h3>
<p>Just add a <code>data-alert</code> attribute to your alert messages to automatically give them close functionality.</p>
<h3>Options</h3>
<table class="zebra-striped">
<thead>
<tr>
<th style="width: 100px;">Name</th>
<th style="width: 100px;">type</th>
<th style="width: 50px;">default</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>selector</td>
<td>string</td>
<td>'.close'</td>
<td>What selector to target for closing an alert.</td>
</tr>
</tbody>
</table>
<h3>Methods</h3>
<h4>$().alert()</h4>
<p>Wraps all alerts with close functionality. To have your alerts animate out when closed, make sure they have the <code>.fade</code> and <code>.in</code> class already applied to them.</p>
<h4>.alert('close')</h4>
<p>Closes an alert.</p>
<pre class="prettyprint linenums">$(".alert-message").alert('close')</pre>
<h3>Demo</h3>
<div class="alert-message warning fade in" data-alert="alert" >
<a class="close" href="#">&times;</a>
<p><strong>Holy guacamole!</strong> Best check yo self, youre not looking too good.</p>
</div>
<div class="alert-message block-message error fade in" data-alert="alert" >
<a class="close" href="#">&times;</a>
<p><strong>Oh snap! You got an error!</strong> Change this and that and try again. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum.</p>
<div class="alert-actions">
<a class="btn small" href="#">Take this action</a> <a class="btn small" href="#">Or do this</a>
</div>
</div>
</div>
</div>
</section>
</div><!-- /container -->
<footer class="footer">
<div class="container">
<p class="pull-right"><a href="#">Back to top</a></p>
<p>
Designed and built with all the love in the world <a href="http://twitter.com/twitter" target="_blank">@twitter</a> by <a href="http://twitter.com/mdo" target="_blank">@mdo</a> and <a href="http://twitter.com/fat" target="_blank">@fat</a>.<br />
Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>.
</p>
</div>
</footer>
</body>
</html>
+119
View File
@@ -0,0 +1,119 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Bootstrap, from Twitter</title>
<meta name="description" content="">
<meta name="author" content="">
<!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<!-- Le styles -->
<link href="../bootstrap.css" rel="stylesheet">
<style type="text/css">
/* Override some defaults */
html, body {
background-color: #eee;
}
body {
padding-top: 40px; /* 40px to make the container go all the way to the bottom of the topbar */
}
.container > footer p {
text-align: center; /* center align it with the container */
}
.container {
width: 820px; /* downsize our container to make the content feel a bit tighter and more cohesive. NOTE: this removes two full columns from the grid, meaning you only go to 14 columns and not 16. */
}
/* The white background content wrapper */
.container > .content {
background-color: #fff;
padding: 20px;
margin: 0 -20px; /* negative indent the amount of the padding to maintain the grid system */
-webkit-border-radius: 0 0 6px 6px;
-moz-border-radius: 0 0 6px 6px;
border-radius: 0 0 6px 6px;
-webkit-box-shadow: 0 1px 2px rgba(0,0,0,.15);
-moz-box-shadow: 0 1px 2px rgba(0,0,0,.15);
box-shadow: 0 1px 2px rgba(0,0,0,.15);
}
/* Page header tweaks */
.page-header {
background-color: #f5f5f5;
padding: 20px 20px 10px;
margin: -20px -20px 20px;
}
/* Styles you shouldn't keep as they are for displaying this base example only */
.content .span10,
.content .span4 {
min-height: 500px;
}
/* Give a quick and non-cross-browser friendly divider */
.content .span4 {
margin-left: 0;
padding-left: 19px;
border-left: 1px solid #eee;
}
.topbar .btn {
border: 0;
}
</style>
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="images/favicon.ico">
<link rel="apple-touch-icon" href="images/apple-touch-icon.png">
<link rel="apple-touch-icon" sizes="72x72" href="images/apple-touch-icon-72x72.png">
<link rel="apple-touch-icon" sizes="114x114" href="images/apple-touch-icon-114x114.png">
</head>
<body>
<div class="topbar">
<div class="fill">
<div class="container">
<a class="brand" href="#">Project name</a>
<ul class="nav">
<li class="active"><a href="#">Home</a></li>
<li><a href="#about">About</a></li>
<li><a href="#contact">Contact</a></li>
</ul>
<form action="" class="pull-right">
<input class="input-small" type="text" placeholder="Username">
<input class="input-small" type="password" placeholder="Password">
<button class="btn" type="submit">Sign in</button>
</form>
</div>
</div>
</div>
<div class="container">
<div class="content">
<div class="page-header">
<h1>Page name <small>Supporting text or tagline</small></h1>
</div>
<div class="row">
<div class="span10">
<h2>Main content</h2>
</div>
<div class="span4">
<h3>Secondary content</h3>
</div>
</div>
</div>
<footer>
<p>&copy; Company 2011</p>
</footer>
</div> <!-- /container -->
</body>
</html>
+122
View File
@@ -0,0 +1,122 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Bootstrap, from Twitter</title>
<meta name="description" content="">
<meta name="author" content="">
<!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<!-- Le styles -->
<link href="../bootstrap.css" rel="stylesheet">
<style type="text/css">
body {
padding-top: 60px;
}
</style>
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="images/favicon.ico">
<link rel="apple-touch-icon" href="images/apple-touch-icon.png">
<link rel="apple-touch-icon" sizes="72x72" href="images/apple-touch-icon-72x72.png">
<link rel="apple-touch-icon" sizes="114x114" href="images/apple-touch-icon-114x114.png">
</head>
<body>
<div class="topbar">
<div class="topbar-inner">
<div class="container-fluid">
<a class="brand" href="#">Project name</a>
<ul class="nav">
<li class="active"><a href="#">Home</a></li>
<li><a href="#about">About</a></li>
<li><a href="#contact">Contact</a></li>
</ul>
<p class="pull-right">Logged in as <a href="#">username</a></p>
</div>
</div>
</div>
<div class="container-fluid">
<div class="sidebar">
<div class="well">
<h5>Sidebar</h5>
<ul>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
</ul>
<h5>Sidebar</h5>
<ul>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
</ul>
<h5>Sidebar</h5>
<ul>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
</ul>
</div>
</div>
<div class="content">
<!-- Main hero unit for a primary marketing message or call to action -->
<div class="hero-unit">
<h1>Hello, world!</h1>
<p>Vestibulum id ligula porta felis euismod semper. Integer posuere erat a ante venenatis dapibus posuere velit aliquet. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit.</p>
<p><a class="btn primary large">Learn more &raquo;</a></p>
</div>
<!-- Example row of columns -->
<div class="row">
<div class="span6">
<h2>Heading</h2>
<p>Etiam porta sem malesuada magna mollis euismod. Integer posuere erat a ante venenatis dapibus posuere velit aliquet. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit.</p>
<p><a class="btn" href="#">View details &raquo;</a></p>
</div>
<div class="span5">
<h2>Heading</h2>
<p>Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui. </p>
<p><a class="btn" href="#">View details &raquo;</a></p>
</div>
<div class="span5">
<h2>Heading</h2>
<p>Donec sed odio dui. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Vestibulum id ligula porta felis euismod semper. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p>
<p><a class="btn" href="#">View details &raquo;</a></p>
</div>
</div>
<hr>
<!-- Example row of columns -->
<div class="row">
<div class="span6">
<h2>Heading</h2>
<p>Etiam porta sem malesuada magna mollis euismod. Integer posuere erat a ante venenatis dapibus posuere velit aliquet. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit.</p>
<p><a class="btn" href="#">View details &raquo;</a></p>
</div>
<div class="span5">
<h2>Heading</h2>
<p>Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui. </p>
<p><a class="btn" href="#">View details &raquo;</a></p>
</div>
<div class="span5">
<h2>Heading</h2>
<p>Donec sed odio dui. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Vestibulum id ligula porta felis euismod semper. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p>
<p><a class="btn" href="#">View details &raquo;</a></p>
</div>
</div>
<footer>
<p>&copy; Company 2011</p>
</footer>
</div>
</div>
</body>
</html>
+79
View File
@@ -0,0 +1,79 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Bootstrap, from Twitter</title>
<meta name="description" content="">
<meta name="author" content="">
<!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<!-- Le styles -->
<link href="../bootstrap.css" rel="stylesheet">
<style type="text/css">
body {
padding-top: 60px;
}
</style>
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="images/favicon.ico">
<link rel="apple-touch-icon" href="images/apple-touch-icon.png">
<link rel="apple-touch-icon" sizes="72x72" href="images/apple-touch-icon-72x72.png">
<link rel="apple-touch-icon" sizes="114x114" href="images/apple-touch-icon-114x114.png">
</head>
<body>
<div class="topbar">
<div class="fill">
<div class="container">
<a class="brand" href="#">Project name</a>
<ul class="nav">
<li class="active"><a href="#">Home</a></li>
<li><a href="#about">About</a></li>
<li><a href="#contact">Contact</a></li>
</ul>
</div>
</div>
</div>
<div class="container">
<!-- Main hero unit for a primary marketing message or call to action -->
<div class="hero-unit">
<h1>Hello, world!</h1>
<p>Vestibulum id ligula porta felis euismod semper. Integer posuere erat a ante venenatis dapibus posuere velit aliquet. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit.</p>
<p><a class="btn primary large">Learn more &raquo;</a></p>
</div>
<!-- Example row of columns -->
<div class="row">
<div class="span-one-third">
<h2>Heading</h2>
<p>Etiam porta sem malesuada magna mollis euismod. Integer posuere erat a ante venenatis dapibus posuere velit aliquet. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit.</p>
<p><a class="btn" href="#">View details &raquo;</a></p>
</div>
<div class="span-one-third">
<h2>Heading</h2>
<p>Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui. </p>
<p><a class="btn" href="#">View details &raquo;</a></p>
</div>
<div class="span-one-third">
<h2>Heading</h2>
<p>Donec sed odio dui. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Vestibulum id ligula porta felis euismod semper. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p>
<p><a class="btn" href="#">View details &raquo;</a></p>
</div>
</div>
<footer>
<p>&copy; Company 2011</p>
</footer>
</div> <!-- /container -->
</body>
</html>
+113
View File
@@ -0,0 +1,113 @@
/* ==========================================================
* bootstrap-alerts.js v1.4.0
* http://twitter.github.com/bootstrap/javascript.html#alerts
* ==========================================================
* Copyright 2011 Twitter, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ========================================================== */
!function( $ ){
"use strict"
/* CSS TRANSITION SUPPORT (https://gist.github.com/373874)
* ======================================================= */
var transitionEnd
$(document).ready(function () {
$.support.transition = (function () {
var thisBody = document.body || document.documentElement
, thisStyle = thisBody.style
, support = thisStyle.transition !== undefined || thisStyle.WebkitTransition !== undefined || thisStyle.MozTransition !== undefined || thisStyle.MsTransition !== undefined || thisStyle.OTransition !== undefined
return support
})()
// set CSS transition event type
if ( $.support.transition ) {
transitionEnd = "TransitionEnd"
if ( $.browser.webkit ) {
transitionEnd = "webkitTransitionEnd"
} else if ( $.browser.mozilla ) {
transitionEnd = "transitionend"
} else if ( $.browser.opera ) {
transitionEnd = "oTransitionEnd"
}
}
})
/* ALERT CLASS DEFINITION
* ====================== */
var Alert = function ( content, options ) {
this.settings = $.extend({}, $.fn.alert.defaults, options)
this.$element = $(content)
.delegate(this.settings.selector, 'click', this.close)
}
Alert.prototype = {
close: function (e) {
var $element = $(this).parent('.alert-message')
e && e.preventDefault()
$element.removeClass('in')
function removeElement () {
$element.remove()
}
$.support.transition && $element.hasClass('fade') ?
$element.bind(transitionEnd, removeElement) :
removeElement()
}
}
/* ALERT PLUGIN DEFINITION
* ======================= */
$.fn.alert = function ( options ) {
if ( options === true ) {
return this.data('alert')
}
return this.each(function () {
var $this = $(this)
if ( typeof options == 'string' ) {
return $this.data('alert')[options]()
}
$(this).data('alert', new Alert( this, options ))
})
}
$.fn.alert.defaults = {
selector: '.close'
}
$(document).ready(function () {
new Alert($('body'), {
selector: '.alert-message[data-alert] .close'
})
})
}( window.jQuery || window.ender );
+62
View File
@@ -0,0 +1,62 @@
/* ============================================================
* bootstrap-dropdown.js v1.4.0
* http://twitter.github.com/bootstrap/javascript.html#dropdown
* ============================================================
* Copyright 2011 Twitter, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ============================================================ */
!function( $ ){
"use strict"
function setState(el, state) {
var d = 'disabled'
, $el = $(el)
, data = $el.data()
state = state + 'Text'
data.resetText || $el.data('resetText', $el.html())
$el.html( data[state] || $.fn.button.defaults[state] )
state == 'loadingText' ?
$el.addClass(d).attr(d, d) :
$el.removeClass(d).removeAttr(d)
}
function toggle(el) {
$(el).toggleClass('active')
}
$.fn.button = function(options) {
return this.each(function () {
if (options == 'toggle') {
return toggle(this)
}
options && setState(this, options)
})
}
$.fn.button.defaults = {
loadingText: 'loading...'
}
$(function () {
$('body').delegate('.btn[data-toggle]', 'click', function () {
$(this).button('toggle')
})
})
}( window.jQuery || window.ender );
+55
View File
@@ -0,0 +1,55 @@
/* ============================================================
* bootstrap-dropdown.js v1.4.0
* http://twitter.github.com/bootstrap/javascript.html#dropdown
* ============================================================
* Copyright 2011 Twitter, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ============================================================ */
!function( $ ){
"use strict"
/* DROPDOWN PLUGIN DEFINITION
* ========================== */
$.fn.dropdown = function ( selector ) {
return this.each(function () {
$(this).delegate(selector || d, 'click', function (e) {
var li = $(this).parent('li')
, isActive = li.hasClass('open')
clearMenus()
!isActive && li.toggleClass('open')
return false
})
})
}
/* APPLY TO STANDARD DROPDOWN ELEMENTS
* =================================== */
var d = 'a.menu, .dropdown-toggle'
function clearMenus() {
$(d).parent('li').removeClass('open')
}
$(function () {
$('html').bind("click", clearMenus)
$('body').dropdown( '[data-dropdown] a.menu, [data-dropdown] .dropdown-toggle' )
})
}( window.jQuery || window.ender );
+260
View File
@@ -0,0 +1,260 @@
/* =========================================================
* bootstrap-modal.js v1.4.0
* http://twitter.github.com/bootstrap/javascript.html#modal
* =========================================================
* Copyright 2011 Twitter, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ========================================================= */
!function( $ ){
"use strict"
/* CSS TRANSITION SUPPORT (https://gist.github.com/373874)
* ======================================================= */
var transitionEnd
$(document).ready(function () {
$.support.transition = (function () {
var thisBody = document.body || document.documentElement
, thisStyle = thisBody.style
, support = thisStyle.transition !== undefined || thisStyle.WebkitTransition !== undefined || thisStyle.MozTransition !== undefined || thisStyle.MsTransition !== undefined || thisStyle.OTransition !== undefined
return support
})()
// set CSS transition event type
if ( $.support.transition ) {
transitionEnd = "TransitionEnd"
if ( $.browser.webkit ) {
transitionEnd = "webkitTransitionEnd"
} else if ( $.browser.mozilla ) {
transitionEnd = "transitionend"
} else if ( $.browser.opera ) {
transitionEnd = "oTransitionEnd"
}
}
})
/* MODAL PUBLIC CLASS DEFINITION
* ============================= */
var Modal = function ( content, options ) {
this.settings = $.extend({}, $.fn.modal.defaults, options)
this.$element = $(content)
.delegate('.close', 'click.modal', $.proxy(this.hide, this))
if ( this.settings.show ) {
this.show()
}
return this
}
Modal.prototype = {
toggle: function () {
return this[!this.isShown ? 'show' : 'hide']()
}
, show: function () {
var that = this
this.isShown = true
this.$element.trigger('show')
escape.call(this)
backdrop.call(this, function () {
var transition = $.support.transition && that.$element.hasClass('fade')
that.$element
.appendTo(document.body)
.show()
if (transition) {
that.$element[0].offsetWidth // force reflow
}
that.$element.addClass('in')
transition ?
that.$element.one(transitionEnd, function () { that.$element.trigger('shown') }) :
that.$element.trigger('shown')
})
return this
}
, hide: function (e) {
e && e.preventDefault()
if ( !this.isShown ) {
return this
}
var that = this
this.isShown = false
escape.call(this)
this.$element
.trigger('hide')
.removeClass('in')
$.support.transition && this.$element.hasClass('fade') ?
hideWithTransition.call(this) :
hideModal.call(this)
return this
}
}
/* MODAL PRIVATE METHODS
* ===================== */
function hideWithTransition() {
// firefox drops transitionEnd events :{o
var that = this
, timeout = setTimeout(function () {
that.$element.unbind(transitionEnd)
hideModal.call(that)
}, 500)
this.$element.one(transitionEnd, function () {
clearTimeout(timeout)
hideModal.call(that)
})
}
function hideModal (that) {
this.$element
.hide()
.trigger('hidden')
backdrop.call(this)
}
function backdrop ( callback ) {
var that = this
, animate = this.$element.hasClass('fade') ? 'fade' : ''
if ( this.isShown && this.settings.backdrop ) {
var doAnimate = $.support.transition && animate
this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
.appendTo(document.body)
if ( this.settings.backdrop != 'static' ) {
this.$backdrop.click($.proxy(this.hide, this))
}
if ( doAnimate ) {
this.$backdrop[0].offsetWidth // force reflow
}
this.$backdrop.addClass('in')
doAnimate ?
this.$backdrop.one(transitionEnd, callback) :
callback()
} else if ( !this.isShown && this.$backdrop ) {
this.$backdrop.removeClass('in')
$.support.transition && this.$element.hasClass('fade')?
this.$backdrop.one(transitionEnd, $.proxy(removeBackdrop, this)) :
removeBackdrop.call(this)
} else if ( callback ) {
callback()
}
}
function removeBackdrop() {
this.$backdrop.remove()
this.$backdrop = null
}
function escape() {
var that = this
if ( this.isShown && this.settings.keyboard ) {
$(document).bind('keyup.modal', function ( e ) {
if ( e.which == 27 ) {
that.hide()
}
})
} else if ( !this.isShown ) {
$(document).unbind('keyup.modal')
}
}
/* MODAL PLUGIN DEFINITION
* ======================= */
$.fn.modal = function ( options ) {
var modal = this.data('modal')
if (!modal) {
if (typeof options == 'string') {
options = {
show: /show|toggle/.test(options)
}
}
return this.each(function () {
$(this).data('modal', new Modal(this, options))
})
}
if ( options === true ) {
return modal
}
if ( typeof options == 'string' ) {
modal[options]()
} else if ( modal ) {
modal.toggle()
}
return this
}
$.fn.modal.Modal = Modal
$.fn.modal.defaults = {
backdrop: false
, keyboard: false
, show: false
}
/* MODAL DATA- IMPLEMENTATION
* ========================== */
$(document).ready(function () {
$('body').delegate('[data-controls-modal]', 'click', function (e) {
e.preventDefault()
var $this = $(this).data('show', true)
$('#' + $this.attr('data-controls-modal')).modal( $this.data() )
})
})
}( window.jQuery || window.ender );
+86
View File
@@ -0,0 +1,86 @@
/* ===========================================================
* bootstrap-popover.js v1.4.0
* http://twitter.github.com/bootstrap/javascript.html#popover
* ===========================================================
* Copyright 2011 Twitter, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* =========================================================== */
!function( $ ) {
"use strict"
var Popover = function ( element, options ) {
this.$element = $(element)
this.options = options
this.enabled = true
this.fixTitle()
}
/* NOTE: POPOVER EXTENDS BOOTSTRAP-TWIPSY.js
========================================= */
Popover.prototype = $.extend({}, $.fn.twipsy.Twipsy.prototype, {
setContent: function () {
var $tip = this.tip()
$tip.find('.title')[this.options.html ? 'html' : 'text'](this.getTitle())
$tip.find('.content p')[this.options.html ? 'html' : 'text'](this.getContent())
$tip[0].className = 'popover'
}
, hasContent: function () {
return this.getTitle() || this.getContent()
}
, getContent: function () {
var content
, $e = this.$element
, o = this.options
if (typeof this.options.content == 'string') {
content = this.options.content
} else if (typeof this.options.content == 'function') {
content = this.options.content.call(this.$element[0])
}
return content
}
, tip: function() {
if (!this.$tip) {
this.$tip = $('<div class="popover" />')
.html(this.options.template)
}
return this.$tip
}
})
/* POPOVER PLUGIN DEFINITION
* ======================= */
$.fn.popover = function (options) {
if (typeof options == 'object') options = $.extend({}, $.fn.popover.defaults, options)
$.fn.twipsy.initWith.call(this, options, Popover, 'popover')
return this
}
$.fn.popover.defaults = $.extend({} , $.fn.twipsy.defaults, {
placement: 'right'
, template: '<div class="arrow"></div><div class="inner"><h3 class="title"></h3><div class="content"><p></p></div></div>'
})
}( window.jQuery || window.ender );
+107
View File
@@ -0,0 +1,107 @@
/* =============================================================
* bootstrap-scrollspy.js v1.4.0
* http://twitter.github.com/bootstrap/javascript.html#scrollspy
* =============================================================
* Copyright 2011 Twitter, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ============================================================== */
!function ( $ ) {
"use strict"
var $window = $(window)
function ScrollSpy( topbar, selector ) {
var processScroll = $.proxy(this.processScroll, this)
this.$topbar = $(topbar)
this.selector = selector || 'li > a'
this.refresh()
this.$topbar.delegate(this.selector, 'click', processScroll)
$window.scroll(processScroll)
this.processScroll()
}
ScrollSpy.prototype = {
refresh: function () {
this.targets = this.$topbar.find(this.selector).map(function () {
var href = $(this).attr('href')
return /^#\w/.test(href) && $(href).length ? href : null
})
this.offsets = $.map(this.targets, function (id) {
return $(id).offset().top
})
}
, processScroll: function () {
var scrollTop = $window.scrollTop() + 10
, offsets = this.offsets
, targets = this.targets
, activeTarget = this.activeTarget
, i
for (i = offsets.length; i--;) {
activeTarget != targets[i]
&& scrollTop >= offsets[i]
&& (!offsets[i + 1] || scrollTop <= offsets[i + 1])
&& this.activateButton( targets[i] )
}
}
, activateButton: function (target) {
this.activeTarget = target
this.$topbar
.find(this.selector).parent('.active')
.removeClass('active')
this.$topbar
.find(this.selector + '[href="' + target + '"]')
.parent('li')
.addClass('active')
}
}
/* SCROLLSPY PLUGIN DEFINITION
* =========================== */
$.fn.scrollSpy = function( options ) {
var scrollspy = this.data('scrollspy')
if (!scrollspy) {
return this.each(function () {
$(this).data('scrollspy', new ScrollSpy( this, options ))
})
}
if ( options === true ) {
return scrollspy
}
if ( typeof options == 'string' ) {
scrollspy[options]()
}
return this
}
$(document).ready(function () {
$('body').scrollSpy('[data-scrollspy] li > a')
})
}( window.jQuery || window.ender );
+80
View File
@@ -0,0 +1,80 @@
/* ========================================================
* bootstrap-tabs.js v1.4.0
* http://twitter.github.com/bootstrap/javascript.html#tabs
* ========================================================
* Copyright 2011 Twitter, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ======================================================== */
!function( $ ){
"use strict"
function activate ( element, container ) {
container
.find('> .active')
.removeClass('active')
.find('> .dropdown-menu > .active')
.removeClass('active')
element.addClass('active')
if ( element.parent('.dropdown-menu') ) {
element.closest('li.dropdown').addClass('active')
}
}
function tab( e ) {
var $this = $(this)
, $ul = $this.closest('ul:not(.dropdown-menu)')
, href = $this.attr('href')
, previous
, $href
if ( /^#\w+/.test(href) ) {
e.preventDefault()
if ( $this.parent('li').hasClass('active') ) {
return
}
previous = $ul.find('.active a').last()[0]
$href = $(href)
activate($this.parent('li'), $ul)
activate($href, $href.parent())
$this.trigger({
type: 'change'
, relatedTarget: previous
})
}
}
/* TABS/PILLS PLUGIN DEFINITION
* ============================ */
$.fn.tabs = $.fn.pills = function ( selector ) {
return this.each(function () {
$(this).delegate(selector || '.tabs li > a, .pills > li > a', 'click', tab)
})
}
$(document).ready(function () {
$('body').tabs('ul[data-tabs] li > a, ul[data-pills] > li > a')
})
}( window.jQuery || window.ender );
+310
View File
@@ -0,0 +1,310 @@
/* ==========================================================
* bootstrap-twipsy.js v1.4.0
* http://twitter.github.com/bootstrap/javascript.html#twipsy
* Adapted from the original jQuery.tipsy by Jason Frame
* ==========================================================
* Copyright 2011 Twitter, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ========================================================== */
!function( $ ) {
"use strict"
/* CSS TRANSITION SUPPORT (https://gist.github.com/373874)
* ======================================================= */
var transitionEnd
$(document).ready(function () {
$.support.transition = (function () {
var thisBody = document.body || document.documentElement
, thisStyle = thisBody.style
, support = thisStyle.transition !== undefined || thisStyle.WebkitTransition !== undefined || thisStyle.MozTransition !== undefined || thisStyle.MsTransition !== undefined || thisStyle.OTransition !== undefined
return support
})()
// set CSS transition event type
if ( $.support.transition ) {
transitionEnd = "TransitionEnd"
if ( $.browser.webkit ) {
transitionEnd = "webkitTransitionEnd"
} else if ( $.browser.mozilla ) {
transitionEnd = "transitionend"
} else if ( $.browser.opera ) {
transitionEnd = "oTransitionEnd"
}
}
})
/* TWIPSY PUBLIC CLASS DEFINITION
* ============================== */
var Twipsy = function ( element, options ) {
this.$element = $(element)
this.options = options
this.enabled = true
this.fixTitle()
}
Twipsy.prototype = {
show: function() {
var pos
, actualWidth
, actualHeight
, placement
, $tip
, tp
if (this.hasContent() && this.enabled) {
$tip = this.tip()
this.setContent()
if (this.options.animate) {
$tip.addClass('fade')
}
$tip
.remove()
.css({ top: 0, left: 0, display: 'block' })
.prependTo(document.body)
pos = $.extend({}, this.$element.offset(), {
width: this.$element[0].offsetWidth
, height: this.$element[0].offsetHeight
})
actualWidth = $tip[0].offsetWidth
actualHeight = $tip[0].offsetHeight
placement = maybeCall(this.options.placement, this, [ $tip[0], this.$element[0] ])
switch (placement) {
case 'below':
tp = {top: pos.top + pos.height + this.options.offset, left: pos.left + pos.width / 2 - actualWidth / 2}
break
case 'above':
tp = {top: pos.top - actualHeight - this.options.offset, left: pos.left + pos.width / 2 - actualWidth / 2}
break
case 'left':
tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth - this.options.offset}
break
case 'right':
tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width + this.options.offset}
break
}
$tip
.css(tp)
.addClass(placement)
.addClass('in')
}
}
, setContent: function () {
var $tip = this.tip()
$tip.find('.twipsy-inner')[this.options.html ? 'html' : 'text'](this.getTitle())
$tip[0].className = 'twipsy'
}
, hide: function() {
var that = this
, $tip = this.tip()
$tip.removeClass('in')
function removeElement () {
$tip.remove()
}
$.support.transition && this.$tip.hasClass('fade') ?
$tip.bind(transitionEnd, removeElement) :
removeElement()
}
, fixTitle: function() {
var $e = this.$element
if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') {
$e.attr('data-original-title', $e.attr('title') || '').removeAttr('title')
}
}
, hasContent: function () {
return this.getTitle()
}
, getTitle: function() {
var title
, $e = this.$element
, o = this.options
this.fixTitle()
if (typeof o.title == 'string') {
title = $e.attr(o.title == 'title' ? 'data-original-title' : o.title)
} else if (typeof o.title == 'function') {
title = o.title.call($e[0])
}
title = ('' + title).replace(/(^\s*|\s*$)/, "")
return title || o.fallback
}
, tip: function() {
if (!this.$tip) {
this.$tip = $('<div class="twipsy" />').html(this.options.template)
}
return this.$tip
}
, validate: function() {
if (!this.$element[0].parentNode) {
this.hide()
this.$element = null
this.options = null
}
}
, enable: function() {
this.enabled = true
}
, disable: function() {
this.enabled = false
}
, toggleEnabled: function() {
this.enabled = !this.enabled
}
}
/* TWIPSY PRIVATE METHODS
* ====================== */
function maybeCall ( thing, ctx, args ) {
return typeof thing == 'function' ? thing.apply(ctx, args) : thing
}
/* TWIPSY PLUGIN DEFINITION
* ======================== */
$.fn.twipsy = function (options) {
$.fn.twipsy.initWith.call(this, options, Twipsy, 'twipsy')
return this
}
$.fn.twipsy.initWith = function (options, Constructor, name) {
var twipsy
, binder
, eventIn
, eventOut
if (options === true) {
return this.data(name)
} else if (typeof options == 'string') {
twipsy = this.data(name)
if (twipsy) {
twipsy[options]()
}
return this
}
options = $.extend({}, $.fn[name].defaults, options)
function get(ele) {
var twipsy = $.data(ele, name)
if (!twipsy) {
twipsy = new Constructor(ele, $.fn.twipsy.elementOptions(ele, options))
$.data(ele, name, twipsy)
}
return twipsy
}
function enter() {
var twipsy = get(this)
twipsy.hoverState = 'in'
if (options.delayIn == 0) {
twipsy.show()
} else {
twipsy.fixTitle()
setTimeout(function() {
if (twipsy.hoverState == 'in') {
twipsy.show()
}
}, options.delayIn)
}
}
function leave() {
var twipsy = get(this)
twipsy.hoverState = 'out'
if (options.delayOut == 0) {
twipsy.hide()
} else {
setTimeout(function() {
if (twipsy.hoverState == 'out') {
twipsy.hide()
}
}, options.delayOut)
}
}
if (!options.live) {
this.each(function() {
get(this)
})
}
if (options.trigger != 'manual') {
binder = options.live ? 'live' : 'bind'
eventIn = options.trigger == 'hover' ? 'mouseenter' : 'focus'
eventOut = options.trigger == 'hover' ? 'mouseleave' : 'blur'
this[binder](eventIn, enter)[binder](eventOut, leave)
}
return this
}
$.fn.twipsy.Twipsy = Twipsy
$.fn.twipsy.defaults = {
animate: true
, delayIn: 0
, delayOut: 0
, fallback: ''
, placement: 'above'
, html: false
, live: false
, offset: 0
, title: 'title'
, trigger: 'hover'
, template: '<div class="twipsy-arrow"></div><div class="twipsy-inner"></div>'
}
$.fn.twipsy.elementOptions = function(ele, options) {
return $.extend({}, options, $(ele).data())
}
}( window.jQuery || window.ender );
+40
View File
@@ -0,0 +1,40 @@
<!DOCTYPE HTML>
<html>
<head>
<title>Bootstrap Plugin Test Suite</title>
<!-- jquery -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<!-- qunit -->
<link rel="stylesheet" href="vendor/qunit.css" type="text/css" media="screen" />
<script src="vendor/qunit.js"></script>
<!-- plugin sources -->
<script src="../../js/bootstrap-alerts.js"></script>
<script src="../../js/bootstrap-dropdown.js"></script>
<script src="../../js/bootstrap-modal.js"></script>
<script src="../../js/bootstrap-tabs.js"></script>
<script src="../../js/bootstrap-twipsy.js"></script>
<script src="../../js/bootstrap-popover.js"></script>
<script src="../../js/bootstrap-buttons.js"></script>
<!-- unit tests -->
<script src="unit/bootstrap-alerts.js"></script>
<script src="unit/bootstrap-dropdown.js"></script>
<script src="unit/bootstrap-modal.js"></script>
<script src="unit/bootstrap-popover.js"></script>
<script src="unit/bootstrap-tabs.js"></script>
<script src="unit/bootstrap-twipsy.js"></script>
<script src="unit/bootstrap-buttons.js"></script>
<body>
<div>
<h1 id="qunit-header">Bootstrap Plugin Test Suite</h1>
<h2 id="qunit-banner"></h2>
<h2 id="qunit-userAgent"></h2>
<ol id="qunit-tests"></ol>
<div id="qunit-runoff"></div>
</div>
</body>
</html>
+41
View File
@@ -0,0 +1,41 @@
$(function () {
module("bootstrap-alerts")
test("should be defined on jquery object", function () {
ok($(document.body).alert, 'alert method is defined')
})
test("should return element", function () {
ok($(document.body).alert()[0] == document.body, 'document.body returned')
})
test("should fade element out on clicking .close", function () {
var alertHTML = '<div class="alert-message warning fade in">'
+ '<a class="close" href="#">×</a>'
+ '<p><strong>Holy guacamole!</strong> Best check yo self, youre not looking too good.</p>'
+ '</div>'
, alert = $(alertHTML).alert()
alert.find('.close').click()
ok(!alert.hasClass('in'), 'remove .in class on .close click')
})
test("should remove element when clicking .close", function () {
$.support.transition = false
var alertHTML = '<div class="alert-message warning fade in">'
+ '<a class="close" href="#">×</a>'
+ '<p><strong>Holy guacamole!</strong> Best check yo self, youre not looking too good.</p>'
+ '</div>'
, alert = $(alertHTML).appendTo('#qunit-runoff').alert()
ok($('#qunit-runoff').find('.alert-message').length, 'element added to dom')
alert.find('.close').click()
ok(!$('#qunit-runoff').find('.alert-message').length, 'element removed from dom')
})
})
+42
View File
@@ -0,0 +1,42 @@
$(function () {
module("bootstrap-buttons")
test("should be defined on jquery object", function () {
ok($(document.body).button, 'tabs method is defined')
})
test("should return element", function () {
ok($(document.body).button()[0] == document.body, 'document.body returned')
})
test("should return set state to loading", function () {
var btn = $('<button class="btn" data-loading-text="fat">mdo</button>')
equals(btn.html(), 'mdo', 'btn text equals mdo')
btn.button('loading')
equals(btn.html(), 'fat', 'btn text equals fat')
ok(btn.attr('disabled'), 'btn is disabled')
ok(btn.hasClass('disabled'), 'btn has disabled class')
})
test("should return reset state", function () {
var btn = $('<button class="btn" data-loading-text="fat">mdo</button>')
equals(btn.html(), 'mdo', 'btn text equals mdo')
btn.button('loading')
equals(btn.html(), 'fat', 'btn text equals fat')
ok(btn.attr('disabled'), 'btn is disabled')
ok(btn.hasClass('disabled'), 'btn is disabled')
btn.button('reset')
equals(btn.html(), 'mdo', 'btn text equals mdo')
ok(!btn.attr('disabled'), 'btn is not disabled')
ok(!btn.hasClass('disabled'), 'btn does not have disabled class')
})
test("should toggle active", function () {
var btn = $('<button class="btn" data-loading-text="fat">mdo</button>')
ok(!btn.hasClass('active'), 'btn does not have active class')
btn.button('toggle')
ok(btn.hasClass('active'), 'btn has class active')
})
})
+52
View File
@@ -0,0 +1,52 @@
$(function () {
module("bootstrap-dropdowns")
test("should be defined on jquery object", function () {
ok($(document.body).dropdown, 'dropdown method is defined')
})
test("should return element", function () {
ok($(document.body).dropdown()[0] == document.body, 'document.body returned')
})
test("should add class open to menu if clicked", function () {
var dropdownHTML = '<ul class="tabs">'
+ '<li class="dropdown">'
+ '<a href="#" class="dropdown-toggle">Dropdown</a>'
+ '<ul class="dropdown-menu">'
+ '<li><a href="#">Secondary link</a></li>'
+ '<li><a href="#">Something else here</a></li>'
+ '<li class="divider"></li>'
+ '<li><a href="#">Another link</a></li>'
+ '</ul>'
+ '</li>'
+ '</ul>'
, dropdown = $(dropdownHTML).dropdown()
dropdown.find('.dropdown-toggle').click()
ok(dropdown.find('.dropdown').hasClass('open'), 'open class added on click')
})
test("should remove open class if body clicked", function () {
var dropdownHTML = '<ul class="tabs">'
+ '<li class="dropdown">'
+ '<a href="#" class="dropdown-toggle">Dropdown</a>'
+ '<ul class="dropdown-menu">'
+ '<li><a href="#">Secondary link</a></li>'
+ '<li><a href="#">Something else here</a></li>'
+ '<li class="divider"></li>'
+ '<li><a href="#">Another link</a></li>'
+ '</ul>'
+ '</li>'
+ '</ul>'
, dropdown = $(dropdownHTML).dropdown().appendTo('#qunit-runoff')
dropdown.find('.dropdown-toggle').click()
ok(dropdown.find('.dropdown').hasClass('open'), 'open class added on click')
$('body').click()
ok(!dropdown.find('.dropdown').hasClass('open'), 'open class removed')
dropdown.remove()
})
})
+151
View File
@@ -0,0 +1,151 @@
$(function () {
module("bootstrap-modal")
test("should be defined on jquery object", function () {
var div = $("<div id='modal-test'></div>")
ok(div.modal, 'modal method is defined')
})
test("should return element", function () {
var div = $("<div id='modal-test'></div>")
ok(div.modal() == div, 'div element returned')
})
test("should expose defaults var for settings", function () {
ok($.fn.modal.defaults, 'default object exposed')
})
test("should insert into dom when show method is called", function () {
stop()
$.support.transition = false
var div = $("<div id='modal-test'></div>")
div
.modal()
.bind("shown", function () {
ok($('#modal-test').length, 'modal insterted into dom')
start()
div.remove()
})
.modal("show")
})
test("should hide modal when hide is called", function () {
stop()
$.support.transition = false
var div = $("<div id='modal-test'></div>")
div
.modal()
.bind("shown", function () {
ok($('#modal-test').is(":visible"), 'modal visible')
ok($('#modal-test').length, 'modal insterted into dom')
div.modal("hide")
})
.bind("hidden", function() {
ok(!$('#modal-test').is(":visible"), 'modal hidden')
start()
div.remove()
})
.modal("show")
})
test("should toggle when toggle is called", function () {
stop()
$.support.transition = false
var div = $("<div id='modal-test'></div>")
div
.modal()
.bind("shown", function () {
ok($('#modal-test').is(":visible"), 'modal visible')
ok($('#modal-test').length, 'modal insterted into dom')
div.modal("toggle")
})
.bind("hidden", function() {
ok(!$('#modal-test').is(":visible"), 'modal hidden')
start()
div.remove()
})
.modal("toggle")
})
test("should remove from dom when click .close", function () {
stop()
$.support.transition = false
var div = $("<div id='modal-test'><span class='close'></span></div>")
div
.modal()
.bind("shown", function () {
ok($('#modal-test').is(":visible"), 'modal visible')
ok($('#modal-test').length, 'modal insterted into dom')
div.find('.close').click()
})
.bind("hidden", function() {
ok(!$('#modal-test').is(":visible"), 'modal hidden')
start()
div.remove()
})
.modal("toggle")
})
test("should add backdrop when desired", function () {
stop()
$.support.transition = false
var div = $("<div id='modal-test'></div>")
div
.modal({ backdrop:true })
.bind("shown", function () {
equal($('.modal-backdrop').length, 1, 'modal backdrop inserted into dom')
start()
div.remove()
$('.modal-backdrop').remove()
})
.modal("show")
})
test("should not add backdrop when not desired", function () {
stop()
$.support.transition = false
var div = $("<div id='modal-test'></div>")
div
.modal({backdrop:false})
.bind("shown", function () {
equal($('.modal-backdrop').length, 0, 'modal backdrop not inserted into dom')
start()
div.remove()
})
.modal("show")
})
test("should close backdrop when clicked", function () {
stop()
$.support.transition = false
var div = $("<div id='modal-test'></div>")
div
.modal({backdrop:true})
.bind("shown", function () {
equal($('.modal-backdrop').length, 1, 'modal backdrop inserted into dom')
$('.modal-backdrop').click()
equal($('.modal-backdrop').length, 0, 'modal backdrop removed from dom')
start()
div.remove()
})
.modal("show")
})
test("should not close backdrop when click disabled", function () {
stop()
$.support.transition = false
var div = $("<div id='modal-test'></div>")
div
.modal({backdrop: 'static'})
.bind("shown", function () {
equal($('.modal-backdrop').length, 1, 'modal backdrop inserted into dom')
$('.modal-backdrop').click()
equal($('.modal-backdrop').length, 1, 'modal backdrop still in dom')
start()
div.remove()
$('.modal-backdrop').remove()
})
.modal("show")
})
})
+76
View File
@@ -0,0 +1,76 @@
$(function () {
module("bootstrap-popover")
test("should be defined on jquery object", function () {
var div = $('<div></div>')
ok(div.popover, 'popover method is defined')
})
test("should return element", function () {
var div = $('<div></div>')
ok(div.popover() == div, 'document.body returned')
})
test("should render popover element", function () {
$.support.transition = false
var popover = $('<a href="#" title="mdo" data-content="http://twitter.com/mdo">@mdo</a>')
.appendTo('#qunit-runoff')
.popover()
.popover('show')
ok($('.popover').length, 'popover was inserted')
popover.popover('hide')
ok(!$(".popover").length, 'popover removed')
$('#qunit-runoff').empty()
})
test("should store popover instance in popover data object", function () {
$.support.transition = false
var popover = $('<a href="#" title="mdo" data-content="http://twitter.com/mdo">@mdo</a>')
.popover()
ok(!!popover.data('popover'), 'popover instance exists')
})
test("should get title and content from options", function () {
$.support.transition = false
var popover = $('<a href="#">@fat</a>')
.appendTo('#qunit-runoff')
.popover({
title: function () {
return '@fat'
}
, content: function () {
return 'loves writing tests (╯°□°)╯︵ ┻━┻'
}
})
popover.popover('show')
ok($('.popover').length, 'popover was inserted')
equals($('.popover .title').text(), '@fat', 'title correctly inserted')
equals($('.popover .content').text(), 'loves writing tests (╯°□°)╯︵ ┻━┻', 'content correctly inserted')
popover.popover('hide')
ok(!$('.popover').length, 'popover was removed')
$('#qunit-runoff').empty()
})
test("should get title and content from attributes", function () {
$.support.transition = false
var popover = $('<a href="#" title="@mdo" data-content="loves data attributes (づ。◕‿‿◕。)づ ︵ ┻━┻" >@mdo</a>')
.appendTo('#qunit-runoff')
.popover()
.popover('show')
ok($('.popover').length, 'popover was inserted')
equals($('.popover .title').text(), '@mdo', 'title correctly inserted')
equals($('.popover .content').text(), "loves data attributes (づ。◕‿‿◕。)づ ︵ ┻━┻", 'content correctly inserted')
popover.popover('hide')
ok(!$('.popover').length, 'popover was removed')
$('#qunit-runoff').empty()
})
})
+31
View File
@@ -0,0 +1,31 @@
$(function () {
module("bootstrap-scrollspy")
test("should be defined on jquery object", function () {
ok($(document.body).scrollspy, 'scrollspy method is defined')
})
test("should return element", function () {
ok($(document.body).scrollspy()[0] == document.body, 'document.body returned')
})
test("should switch active class on scroll", function () {
var sectionHTML = '<div id="masthead"></div>'
, $section = $(sectionHTML).append('#qunit-runoff')
, topbarHTML ='<div class="topbar">'
+ '<div class="topbar-inner">'
+ '<div class="container">'
+ '<h3><a href="#">Bootstrap</a></h3>'
+ '<ul class="nav">'
+ '<li><a href="#masthead">Overview</a></li>'
+ '</ul>'
+ '</div>'
+ '</div>'
+ '</div>'
, $topbar = $(topbarHTML).topbar()
ok(topbar.find('.active', true)
})
})
+77
View File
@@ -0,0 +1,77 @@
$(function () {
module("bootstrap-tabs")
test("should be defined on jquery object", function () {
ok($(document.body).tabs, 'tabs method is defined')
})
test("should return element", function () {
ok($(document.body).tabs()[0] == document.body, 'document.body returned')
})
test("should activate element by tab id", function () {
var $tabsHTML = $('<ul class="tabs">'
+ '<li class="active"><a href="#home">Home</a></li>'
+ '<li><a href="#profile">Profile</a></li>'
+ '</ul>')
$('<ul><li id="home"></li><li id="profile"></li></ul>').appendTo("#qunit-runoff")
$tabsHTML.tabs().find('a').last().click()
equals($("#qunit-runoff").find('.active').attr('id'), "profile")
$tabsHTML.tabs().find('a').first().click()
equals($("#qunit-runoff").find('.active').attr('id'), "home")
$("#qunit-runoff").empty()
})
test("should activate element by pill id", function () {
var $pillsHTML = $('<ul class="pills">'
+ '<li class="active"><a href="#home">Home</a></li>'
+ '<li><a href="#profile">Profile</a></li>'
+ '</ul>')
$('<ul><li id="home"></li><li id="profile"></li></ul>').appendTo("#qunit-runoff")
$pillsHTML.pills().find('a').last().click()
equals($("#qunit-runoff").find('.active').attr('id'), "profile")
$pillsHTML.pills().find('a').first().click()
equals($("#qunit-runoff").find('.active').attr('id'), "home")
$("#qunit-runoff").empty()
})
test( "should trigger change event on activate", function () {
var $tabsHTML = $('<ul class="tabs">'
+ '<li class="active"><a href="#home">Home</a></li>'
+ '<li><a href="#profile">Profile</a></li>'
+ '</ul>')
, $target
, count = 0
, relatedTarget
, target
$tabsHTML
.tabs()
.bind( "change", function (e) {
target = e.target
relatedTarget = e.relatedTarget
count++
})
$target = $tabsHTML
.find('a')
.last()
.click()
equals(relatedTarget, $tabsHTML.find('a').first()[0])
equals(target, $target[0])
equals(count, 1)
})
})
+81
View File
@@ -0,0 +1,81 @@
$(function () {
module("bootstrap-twipsy")
test("should be defined on jquery object", function () {
var div = $("<div></div>")
ok(div.twipsy, 'popover method is defined')
})
test("should return element", function () {
var div = $("<div></div>")
ok(div.twipsy() == div, 'document.body returned')
})
test("should expose default settings", function () {
ok(!!$.fn.twipsy.defaults, 'defaults is defined')
})
test("should remove title attribute", function () {
var twipsy = $('<a href="#" rel="twipsy" title="Another twipsy"></a>').twipsy()
ok(!twipsy.attr('title'), 'title tag was removed')
})
test("should add data attribute for referencing original title", function () {
var twipsy = $('<a href="#" rel="twipsy" title="Another twipsy"></a>').twipsy()
equals(twipsy.attr('data-original-title'), 'Another twipsy', 'original title preserved in data attribute')
})
test("should place tooltips relative to placement option", function () {
$.support.transition = false
var twipsy = $('<a href="#" rel="twipsy" title="Another twipsy"></a>')
.appendTo('#qunit-runoff')
.twipsy({placement: 'below'})
.twipsy('show')
ok($(".twipsy").hasClass('fade below in'), 'has correct classes applied')
twipsy.twipsy('hide')
ok(!$(".twipsy").length, 'twipsy removed')
$('#qunit-runoff').empty()
})
test("should add a fallback in cases where elements have no title tag", function () {
$.support.transition = false
var twipsy = $('<a href="#" rel="twipsy"></a>')
.appendTo('#qunit-runoff')
.twipsy({fallback: '@fat'})
.twipsy('show')
equals($(".twipsy").text(), "@fat", 'has correct default text')
twipsy.twipsy('hide')
ok(!$(".twipsy").length, 'twipsy removed')
$('#qunit-runoff').empty()
})
test("should not allow html entities", function () {
$.support.transition = false
var twipsy = $('<a href="#" rel="twipsy" title="<b>@fat</b>"></a>')
.appendTo('#qunit-runoff')
.twipsy()
.twipsy('show')
ok(!$('.twipsy b').length, 'b tag was not inserted')
twipsy.twipsy('hide')
ok(!$(".twipsy").length, 'twipsy removed')
$('#qunit-runoff').empty()
})
test("should allow html entities if html option set to true", function () {
$.support.transition = false
var twipsy = $('<a href="#" rel="twipsy" title="<b>@fat</b>"></a>')
.appendTo('#qunit-runoff')
.twipsy({html: true})
.twipsy('show')
ok($('.twipsy b').length, 'b tag was inserted')
twipsy.twipsy('hide')
ok(!$(".twipsy").length, 'twipsy removed')
$('#qunit-runoff').empty()
})
})
+232
View File
@@ -0,0 +1,232 @@
/**
* QUnit - A JavaScript Unit Testing Framework
*
* http://docs.jquery.com/QUnit
*
* Copyright (c) 2011 John Resig, Jörn Zaefferer
* Dual licensed under the MIT (MIT-LICENSE.txt)
* or GPL (GPL-LICENSE.txt) licenses.
*/
/** Font Family and Sizes */
#qunit-tests, #qunit-header, #qunit-banner, #qunit-testrunner-toolbar, #qunit-userAgent, #qunit-testresult {
font-family: "Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", Calibri, Helvetica, Arial, sans-serif;
}
#qunit-testrunner-toolbar, #qunit-userAgent, #qunit-testresult, #qunit-tests li { font-size: small; }
#qunit-tests { font-size: smaller; }
/** Resets */
#qunit-tests, #qunit-tests ol, #qunit-header, #qunit-banner, #qunit-userAgent, #qunit-testresult {
margin: 0;
padding: 0;
}
/** Header */
#qunit-header {
padding: 0.5em 0 0.5em 1em;
color: #8699a4;
background-color: #0d3349;
font-size: 1.5em;
line-height: 1em;
font-weight: normal;
border-radius: 15px 15px 0 0;
-moz-border-radius: 15px 15px 0 0;
-webkit-border-top-right-radius: 15px;
-webkit-border-top-left-radius: 15px;
}
#qunit-header a {
text-decoration: none;
color: #c2ccd1;
}
#qunit-header a:hover,
#qunit-header a:focus {
color: #fff;
}
#qunit-banner {
height: 5px;
}
#qunit-testrunner-toolbar {
padding: 0.5em 0 0.5em 2em;
color: #5E740B;
background-color: #eee;
}
#qunit-userAgent {
padding: 0.5em 0 0.5em 2.5em;
background-color: #2b81af;
color: #fff;
text-shadow: rgba(0, 0, 0, 0.5) 2px 2px 1px;
}
/** Tests: Pass/Fail */
#qunit-tests {
list-style-position: inside;
}
#qunit-tests li {
padding: 0.4em 0.5em 0.4em 2.5em;
border-bottom: 1px solid #fff;
list-style-position: inside;
}
#qunit-tests.hidepass li.pass, #qunit-tests.hidepass li.running {
display: none;
}
#qunit-tests li strong {
cursor: pointer;
}
#qunit-tests li a {
padding: 0.5em;
color: #c2ccd1;
text-decoration: none;
}
#qunit-tests li a:hover,
#qunit-tests li a:focus {
color: #000;
}
#qunit-tests ol {
margin-top: 0.5em;
padding: 0.5em;
background-color: #fff;
border-radius: 15px;
-moz-border-radius: 15px;
-webkit-border-radius: 15px;
box-shadow: inset 0px 2px 13px #999;
-moz-box-shadow: inset 0px 2px 13px #999;
-webkit-box-shadow: inset 0px 2px 13px #999;
}
#qunit-tests table {
border-collapse: collapse;
margin-top: .2em;
}
#qunit-tests th {
text-align: right;
vertical-align: top;
padding: 0 .5em 0 0;
}
#qunit-tests td {
vertical-align: top;
}
#qunit-tests pre {
margin: 0;
white-space: pre-wrap;
word-wrap: break-word;
}
#qunit-tests del {
background-color: #e0f2be;
color: #374e0c;
text-decoration: none;
}
#qunit-tests ins {
background-color: #ffcaca;
color: #500;
text-decoration: none;
}
/*** Test Counts */
#qunit-tests b.counts { color: black; }
#qunit-tests b.passed { color: #5E740B; }
#qunit-tests b.failed { color: #710909; }
#qunit-tests li li {
margin: 0.5em;
padding: 0.4em 0.5em 0.4em 0.5em;
background-color: #fff;
border-bottom: none;
list-style-position: inside;
}
/*** Passing Styles */
#qunit-tests li li.pass {
color: #5E740B;
background-color: #fff;
border-left: 26px solid #C6E746;
}
#qunit-tests .pass { color: #528CE0; background-color: #D2E0E6; }
#qunit-tests .pass .test-name { color: #366097; }
#qunit-tests .pass .test-actual,
#qunit-tests .pass .test-expected { color: #999999; }
#qunit-banner.qunit-pass { background-color: #C6E746; }
/*** Failing Styles */
#qunit-tests li li.fail {
color: #710909;
background-color: #fff;
border-left: 26px solid #EE5757;
white-space: pre;
}
#qunit-tests > li:last-child {
border-radius: 0 0 15px 15px;
-moz-border-radius: 0 0 15px 15px;
-webkit-border-bottom-right-radius: 15px;
-webkit-border-bottom-left-radius: 15px;
}
#qunit-tests .fail { color: #000000; background-color: #EE5757; }
#qunit-tests .fail .test-name,
#qunit-tests .fail .module-name { color: #000000; }
#qunit-tests .fail .test-actual { color: #EE5757; }
#qunit-tests .fail .test-expected { color: green; }
#qunit-banner.qunit-fail { background-color: #EE5757; }
/** Result */
#qunit-testresult {
padding: 0.5em 0.5em 0.5em 2.5em;
color: #2b81af;
background-color: #D2E0E6;
border-bottom: 1px solid white;
}
/** Fixture */
#qunit-fixture {
position: absolute;
top: -10000px;
left: -10000px;
}
/** Runoff */
#qunit-runoff {
display:none;
}
+1510
View File
File diff suppressed because it is too large Load Diff
+6 -3
View File
@@ -1,5 +1,5 @@
/*!
* Bootstrap v1.0.0
* Bootstrap @VERSION
*
* Copyright 2011 Twitter, Inc
* Licensed under the Apache License v2.0
@@ -12,8 +12,11 @@
// CSS Reset
@import "reset.less";
// Core
@import "preboot.less";
// Core variables and mixins
@import "variables.less"; // Modify this for custom colors, font-sizes, etc
@import "mixins.less";
// Grid system and page structure
@import "scaffolding.less";
// Styled patterns and elements
+352 -210
View File
@@ -1,179 +1,306 @@
/*
* Forms.less
/* Forms.less
* Base styles for various input types, form layouts, and states
*/
* ------------------------------------------------------------- */
/* Global form styles
-------------------------------------------------- */
// FORM STYLES
// -----------
form {
margin-bottom: @baseline;
// Groups of fields with labels on top (legends)
fieldset {
margin-bottom: @baseline;
padding-top: @baseline;
legend {
display: block;
margin-left: 150px;
font-size: 20px;
line-height: 1;
color: @grayDark;
}
}
// Parent element that clears floats and wraps labels and fields together
div.clearfix {
margin-bottom: @baseline;
}
// Set font for forms
label, input, select, textarea {
#font > .sans-serif(normal,13px,normal);
}
// Float labels left
label {
padding-top: 6px;
font-size: 13px;
line-height: 18px;
float: left;
width: 130px;
text-align: right;
color: @grayDark;
}
// Shift over the inside div to align all label's relevant content
div.input {
margin-left: 150px;
}
// Checkboxs and radio buttons
input[type=checkbox],
input[type=radio] {
cursor: pointer;
}
// Inputs, Textareas, Selects
input[type=text],
input[type=password],
textarea,
select,
.uneditable-input {
display: inline-block;
width: 210px;
margin: 0;
padding: 4px;
font-size: 13px;
line-height: @baseline;
height: @baseline;
color: @gray;
border: 1px solid #ccc;
.border-radius(3px);
}
select,
input[type=file] {
height: @baseline * 1.5;
line-height: @baseline * 1.5;
}
textarea {
height: auto;
}
.uneditable-input {
background-color: #eee;
}
// Groups of fields with labels on top (legends)
fieldset {
margin-bottom: @baseline;
padding-top: @baseline;
legend {
display: block;
border-color: #ccc;
.box-shadow(inset 0 1px 2px rgba(0,0,0,.075));
}
// Placeholder text gets special styles; can't be bundled together though for some reason
:-moz-placeholder {
color: @grayLight;
}
::-webkit-input-placeholder {
color: @grayLight;
}
// Focus states
input[type=text],
input[type=password],
select, textarea {
@transition: border linear .2s, box-shadow linear .2s;
.transition(@transition);
.box-shadow(inset 0 1px 3px rgba(0,0,0,.1));
}
input[type=text]:focus,
input[type=password]:focus,
textarea:focus {
outline: none;
border-color: rgba(82,168,236,.8);
@shadow: inset 0 1px 3px rgba(0,0,0,.1), 0 0 8px rgba(82,168,236,.6);
.box-shadow(@shadow);
}
// Error styles
div.error {
background: lighten(@red, 57%);
padding: 10px 0;
margin: -10px 0 10px;
.border-radius(4px);
@error-text: desaturate(lighten(@red, 25%), 25%);
> label,
span.help-inline,
span.help-block {
color: @red;
}
input[type=text],
input[type=password],
textarea {
border-color: @error-text;
.box-shadow(0 0 3px rgba(171,41,32,.25));
&:focus {
border-color: darken(@error-text, 10%);
.box-shadow(0 0 6px rgba(171,41,32,.5));
}
}
div.input-prepend,
div.input-append {
span.add-on {
background: lighten(@red, 50%);
border-color: @error-text;
color: darken(@error-text, 10%);
}
}
}
// Form element sizes
.input-mini, input.mini, textarea.mini, select.mini {
width: 60px;
}
.input-small, input.small, textarea.small, select.small {
width: 90px;
}
.input-medium, input.medium, textarea.medium, select.medium {
width: 150px;
}
.input-large, input.large, textarea.large, select.large {
width: 210px;
}
.input-xlarge, input.xlarge, textarea.xlarge, select.xlarge {
width: 270px;
}
.input-xxlarge, input.xxlarge, textarea.xxlarge, select.xxlarge {
width: 530px;
}
textarea.xxlarge {
overflow-y: scroll;
}
// Turn off focus for disabled (read-only) form elements
input[readonly]:focus,
textarea[readonly]:focus,
input.disabled {
background: #f5f5f5;
border-color: #ddd;
.box-shadow(none);
padding-left: 150px;
font-size: @basefont * 1.5;
line-height: 1;
color: @grayDark;
*padding: 0 0 5px 145px; /* IE6-7 */
*line-height: 1.5; /* IE6-7 */
}
}
// Parent element that clears floats and wraps labels and fields together
form .clearfix {
margin-bottom: @baseline;
.clearfix()
}
// Set font for forms
label,
input,
select,
textarea {
#font > .sans-serif(normal,13px,normal);
}
// Float labels left
label {
padding-top: 6px;
font-size: @basefont;
line-height: @baseline;
float: left;
width: 130px;
text-align: right;
color: @grayDark;
}
// Shift over the inside div to align all label's relevant content
form .input {
margin-left: 150px;
}
// Checkboxs and radio buttons
input[type=checkbox],
input[type=radio] {
cursor: pointer;
}
// Inputs, Textareas, Selects
input,
textarea,
select,
.uneditable-input {
display: inline-block;
width: 210px;
height: @baseline;
padding: 4px;
font-size: @basefont;
line-height: @baseline;
color: @gray;
border: 1px solid #ccc;
.border-radius(3px);
}
// remove padding from select
select {
padding: initial;
}
// mini reset for non-html5 file types
input[type=checkbox],
input[type=radio] {
width: auto;
height: auto;
padding: 0;
margin: 3px 0;
*margin-top: 0; /* IE6-7 */
line-height: normal;
border: none;
}
input[type=file] {
background-color: @white;
padding: initial;
border: initial;
line-height: initial;
.box-shadow(none);
}
input[type=button],
input[type=reset],
input[type=submit] {
width: auto;
height: auto;
}
select,
input[type=file] {
height: @baseline * 1.5; // In IE7, the height of the select element cannot be changed by height, only font-size
*height: auto; // Reset for IE7
line-height: @baseline * 1.5;
*margin-top: 4px; /* For IE7, add top margin to align select with labels */
}
// Make multiple select elements height not fixed
select[multiple] {
height: inherit;
background-color: @white; // Fixes Chromium bug of unreadable items
}
textarea {
height: auto;
}
// For text that needs to appear as an input but should not be an input
.uneditable-input {
background-color: @white;
display: block;
border-color: #eee;
.box-shadow(inset 0 1px 2px rgba(0,0,0,.025));
cursor: not-allowed;
}
// Placeholder text gets special styles; can't be bundled together though for some reason
:-moz-placeholder {
color: @grayLight;
}
::-webkit-input-placeholder {
color: @grayLight;
}
// Focus states
input,
textarea {
@transition: border linear .2s, box-shadow linear .2s;
.transition(@transition);
.box-shadow(inset 0 1px 3px rgba(0,0,0,.1));
}
input:focus,
textarea:focus {
outline: 0;
border-color: rgba(82,168,236,.8);
@shadow: inset 0 1px 3px rgba(0,0,0,.1), 0 0 8px rgba(82,168,236,.6);
.box-shadow(@shadow);
}
input[type=file]:focus,
input[type=checkbox]:focus,
select:focus {
.box-shadow(none); // override for file inputs
outline: 1px dotted #666; // Selet elements don't get box-shadow styles, so instead we do outline
}
// FORM FIELD FEEDBACK STATES
// --------------------------
// Mixin for form field states
.formFieldState(@textColor: #555, @borderColor: #ccc, @backgroundColor: #f5f5f5) {
// Set the text color
> label,
.help-block,
.help-inline {
color: @textColor;
}
// Style inputs accordingly
input,
textarea {
color: @textColor;
border-color: @borderColor;
&:focus {
border-color: darken(@borderColor, 10%);
.box-shadow(0 0 6px lighten(@borderColor, 20%);
}
}
// Give a small background color for input-prepend/-append
.input-prepend .add-on,
.input-append .add-on {
color: @textColor;
background-color: @backgroundColor;
border-color: @textColor;
}
}
// Error
form .clearfix.error {
.formFieldState(#b94a48, #ee5f5b, lighten(#ee5f5b, 30%));
}
// Warning
form .clearfix.warning {
.formFieldState(#c09853, #ccae64, lighten(#CCAE64, 5%));
}
// Success
form .clearfix.success {
.formFieldState(#468847, #57a957, lighten(#57a957, 30%));
}
// Form element sizes
// TODO v2: remove duplication here and just stick to .input-[size] in light of adding .spanN sizes
.input-mini,
input.mini,
textarea.mini,
select.mini {
width: 60px;
}
.input-small,
input.small,
textarea.small,
select.small {
width: 90px;
}
.input-medium,
input.medium,
textarea.medium,
select.medium {
width: 150px;
}
.input-large,
input.large,
textarea.large,
select.large {
width: 210px;
}
.input-xlarge,
input.xlarge,
textarea.xlarge,
select.xlarge {
width: 270px;
}
.input-xxlarge,
input.xxlarge,
textarea.xxlarge,
select.xxlarge {
width: 530px;
}
textarea.xxlarge {
overflow-y: auto;
}
// Grid style input sizes
// This is a duplication of the main grid .columns() mixin, but subtracts 10px to account for input padding and border
.formColumns(@columnSpan: 1) {
display: inline-block;
float: none;
width: ((@gridColumnWidth) * @columnSpan) + (@gridGutterWidth * (@columnSpan - 1)) - 10;
margin-left: 0;
}
input,
textarea {
// Default columns
&.span1 { .formColumns(1); }
&.span2 { .formColumns(2); }
&.span3 { .formColumns(3); }
&.span4 { .formColumns(4); }
&.span5 { .formColumns(5); }
&.span6 { .formColumns(6); }
&.span7 { .formColumns(7); }
&.span8 { .formColumns(8); }
&.span9 { .formColumns(9); }
&.span10 { .formColumns(10); }
&.span11 { .formColumns(11); }
&.span12 { .formColumns(12); }
&.span13 { .formColumns(13); }
&.span14 { .formColumns(14); }
&.span15 { .formColumns(15); }
&.span16 { .formColumns(16); }
}
// Disabled and read-only inputs
input[disabled],
select[disabled],
textarea[disabled],
input[readonly],
select[readonly],
textarea[readonly] {
background-color: #f5f5f5;
border-color: #ddd;
cursor: not-allowed;
}
// Actions (the buttons)
div.actions {
.actions {
background: #f5f5f5;
margin-top: @baseline;
margin-bottom: @baseline;
padding: (@baseline - 1) 20px @baseline 150px;
border-top: 1px solid #ddd;
.border-radius(0 0 3px 3px);
div.secondary-action {
.secondary-action {
float: right;
a {
line-height: 30px;
@@ -185,15 +312,19 @@ div.actions {
}
// Help Text
// TODO: Do we need to set basefont and baseline here?
.help-inline,
.help-block {
font-size: 12px;
font-size: @basefont;
line-height: @baseline;
color: @grayLight;
}
.help-inline {
padding-left: 5px;
*position: relative; /* IE6-7 */
*top: -5px; /* IE6-7 */
}
// Big blocks of help text
.help-block {
display: block;
@@ -201,43 +332,36 @@ div.actions {
}
// Inline Fields (input fields that appear as inline objects
div.inline-inputs {
.inline-inputs {
color: @gray;
span, input[type=text] {
display: inline-block;
}
input.mini {
width: 60px;
}
input.small {
width: 90px;
}
span {
padding: 0 2px 0 1px;
}
}
// Allow us to put symbols and text within the input field for a cleaner look
div.input-prepend,
div.input-append {
input[type=text] {
.input-prepend,
.input-append {
input {
.border-radius(0 3px 3px 0);
}
.add-on {
position: relative;
background: #f5f5f5;
border: 1px solid #ccc;
z-index: 2;
float: left;
display: block;
width: auto;
min-width: 16px;
height: 18px;
padding: 4px 4px 4px 5px;
color: @grayLight;
margin-right: -1px;
font-weight: normal;
line-height: 18px;
height: 18px;
color: @grayLight;
text-align: center;
text-shadow: 0 1px 0 #fff;
border: 1px solid #ccc;
border-right-width: 0;
text-shadow: 0 1px 0 @white;
.border-radius(3px 0 0 3px);
}
.active {
@@ -245,65 +369,76 @@ div.input-append {
border-color: @green;
}
}
div.input-append {
input[type=text] {
.input-prepend {
.add-on {
*margin-top: 1px; /* IE6-7 */
}
}
.input-append {
input {
float: left;
.border-radius(3px 0 0 3px);
}
.add-on {
.border-radius(0 3px 3px 0);
border-right-width: 1px;
border-left-width: 0;
margin-right: 0;
margin-left: -1px;
}
}
// Stacked options for forms (radio buttons or checkboxes)
ul.inputs-list {
.inputs-list {
margin: 0 0 5px;
width: 100%;
li {
display: block;
padding: 0;
width: 100%;
label {
display: block;
float: none;
width: auto;
padding: 0;
line-height: @baseline;
text-align: left;
white-space: normal;
strong {
color: @gray;
}
small {
font-size: 12px;
font-weight: normal;
}
}
label {
display: block;
float: none;
width: auto;
padding: 0;
margin-left: 20px;
line-height: @baseline;
text-align: left;
white-space: normal;
strong {
color: @gray;
}
ul.inputs-list {
margin-left: 25px;
margin-bottom: 10px;
padding-top: 0;
}
&:first-child {
padding-top: 5px;
small {
font-size: @basefont - 2;
font-weight: normal;
}
}
.inputs-list {
margin-left: 25px;
margin-bottom: 10px;
padding-top: 0;
}
&:first-child {
padding-top: 6px;
}
li + li {
padding-top: 2px;
}
input[type=radio],
input[type=checkbox] {
margin-bottom: 0;
margin-left: -20px;
float: left;
}
}
// Stacked forms
form.form-stacked {
.form-stacked {
padding-left: 20px;
fieldset {
padding-top: @baseline / 2;
}
legend {
margin-left: 0;
padding-left: 0;
}
label {
display: block;
@@ -314,13 +449,13 @@ form.form-stacked {
line-height: 20px;
padding-top: 0;
}
div.clearfix {
.clearfix {
margin-bottom: @baseline / 2;
div.input {
margin-left: 0;
}
}
ul.inputs-list {
.inputs-list {
margin-bottom: 0;
li {
padding-top: 0;
@@ -330,7 +465,14 @@ form.form-stacked {
}
}
}
div.actions {
div.clearfix.error {
padding-top: 10px;
padding-bottom: 10px;
padding-left: 10px;
margin-top: 0;
margin-left: -10px;
}
.actions {
margin-left: -20px;
padding-left: 20px;
}
+223
View File
@@ -0,0 +1,223 @@
/* Mixins.less
* Snippets of reusable CSS to develop faster and keep code readable
* ----------------------------------------------------------------- */
// Clearfix for clearing floats like a boss h5bp.com/q
.clearfix() {
zoom: 1;
&:before,
&:after {
display: table;
content: "";
zoom: 1;
}
&:after {
clear: both;
}
}
// Center-align a block level element
.center-block() {
display: block;
margin-left: auto;
margin-right: auto;
}
// Sizing shortcuts
.size(@height: 5px, @width: 5px) {
height: @height;
width: @width;
}
.square(@size: 5px) {
.size(@size, @size);
}
// Input placeholder text
.placeholder(@color: @grayLight) {
:-moz-placeholder {
color: @color;
}
::-webkit-input-placeholder {
color: @color;
}
}
// Font Stacks
#font {
.shorthand(@weight: normal, @size: 14px, @lineHeight: 20px) {
font-size: @size;
font-weight: @weight;
line-height: @lineHeight;
}
.sans-serif(@weight: normal, @size: 14px, @lineHeight: 20px) {
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size: @size;
font-weight: @weight;
line-height: @lineHeight;
}
.serif(@weight: normal, @size: 14px, @lineHeight: 20px) {
font-family: "Georgia", Times New Roman, Times, serif;
font-size: @size;
font-weight: @weight;
line-height: @lineHeight;
}
.monospace(@weight: normal, @size: 12px, @lineHeight: 20px) {
font-family: "Monaco", Courier New, monospace;
font-size: @size;
font-weight: @weight;
line-height: @lineHeight;
}
}
// Grid System
.fixed-container() {
width: @siteWidth;
margin-left: auto;
margin-right: auto;
.clearfix();
}
.columns(@columnSpan: 1) {
width: (@gridColumnWidth * @columnSpan) + (@gridGutterWidth * (@columnSpan - 1));
}
.offset(@columnOffset: 1) {
margin-left: (@gridColumnWidth * @columnOffset) + (@gridGutterWidth * (@columnOffset - 1)) + @extraSpace;
}
// Necessary grid styles for every column to make them appear next to each other horizontally
.gridColumn() {
display: inline;
float: left;
margin-left: @gridGutterWidth;
}
// makeColumn can be used to mark any element (e.g., .content-primary) as a column without changing markup to .span something
.makeColumn(@columnSpan: 1) {
.gridColumn();
.columns(@columnSpan);
}
// Border Radius
.border-radius(@radius: 5px) {
-webkit-border-radius: @radius;
-moz-border-radius: @radius;
border-radius: @radius;
}
// Drop shadows
.box-shadow(@shadow: 0 1px 3px rgba(0,0,0,.25)) {
-webkit-box-shadow: @shadow;
-moz-box-shadow: @shadow;
box-shadow: @shadow;
}
// Transitions
.transition(@transition) {
-webkit-transform-style: e(%("preserve-3d"));
-webkit-transition: @transition;
-moz-transition: @transition;
-ms-transition: @transition;
-o-transition: @transition;
transition: @transition;
}
// Background clipping
.background-clip(@clip) {
-webkit-background-clip: @clip;
-moz-background-clip: @clip;
background-clip: @clip;
}
// CSS3 Content Columns
.content-columns(@columnCount, @columnGap: 20px) {
-webkit-column-count: @columnCount;
-moz-column-count: @columnCount;
column-count: @columnCount;
-webkit-column-gap: @columnGap;
-moz-column-gap: @columnGap;
column-gap: @columnGap;
}
// Make any element resizable for prototyping
.resizable(@direction: both) {
resize: @direction; // Options are horizontal, vertical, both
overflow: auto; // Safari fix
}
// Add an alphatransparency value to any background or border color (via Elyse Holladay)
#translucent {
.background(@color: @white, @alpha: 1) {
background-color: hsla(hue(@color), saturation(@color), lightness(@color), @alpha);
}
.border(@color: @white, @alpha: 1) {
border-color: hsla(hue(@color), saturation(@color), lightness(@color), @alpha);
background-clip: padding-box;
}
}
// Gradient Bar Colors for buttons and allerts
.gradientBar(@primaryColor, @secondaryColor) {
#gradient > .vertical(@primaryColor, @secondaryColor);
text-shadow: 0 -1px 0 rgba(0,0,0,.25);
border-color: @secondaryColor @secondaryColor darken(@secondaryColor, 15%);
border-color: rgba(0,0,0,.1) rgba(0,0,0,.1) fadein(rgba(0,0,0,.1), 15%);
}
// Gradients
#gradient {
.horizontal (@startColor: #555, @endColor: #333) {
background-color: @endColor;
background-repeat: repeat-x;
background-image: -khtml-gradient(linear, left top, right top, from(@startColor), to(@endColor)); // Konqueror
background-image: -moz-linear-gradient(left, @startColor, @endColor); // FF 3.6+
background-image: -ms-linear-gradient(left, @startColor, @endColor); // IE10
background-image: -webkit-gradient(linear, left top, right top, color-stop(0%, @startColor), color-stop(100%, @endColor)); // Safari 4+, Chrome 2+
background-image: -webkit-linear-gradient(left, @startColor, @endColor); // Safari 5.1+, Chrome 10+
background-image: -o-linear-gradient(left, @startColor, @endColor); // Opera 11.10
background-image: linear-gradient(left, @startColor, @endColor); // Le standard
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",@startColor,@endColor)); // IE9 and down
}
.vertical (@startColor: #555, @endColor: #333) {
background-color: @endColor;
background-repeat: repeat-x;
background-image: -khtml-gradient(linear, left top, left bottom, from(@startColor), to(@endColor)); // Konqueror
background-image: -moz-linear-gradient(top, @startColor, @endColor); // FF 3.6+
background-image: -ms-linear-gradient(top, @startColor, @endColor); // IE10
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, @startColor), color-stop(100%, @endColor)); // Safari 4+, Chrome 2+
background-image: -webkit-linear-gradient(top, @startColor, @endColor); // Safari 5.1+, Chrome 10+
background-image: -o-linear-gradient(top, @startColor, @endColor); // Opera 11.10
background-image: linear-gradient(top, @startColor, @endColor); // The standard
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@startColor,@endColor)); // IE9 and down
}
.directional (@startColor: #555, @endColor: #333, @deg: 45deg) {
background-color: @endColor;
background-repeat: repeat-x;
background-image: -moz-linear-gradient(@deg, @startColor, @endColor); // FF 3.6+
background-image: -ms-linear-gradient(@deg, @startColor, @endColor); // IE10
background-image: -webkit-linear-gradient(@deg, @startColor, @endColor); // Safari 5.1+, Chrome 10+
background-image: -o-linear-gradient(@deg, @startColor, @endColor); // Opera 11.10
background-image: linear-gradient(@deg, @startColor, @endColor); // The standard
}
.vertical-three-colors(@startColor: #00b3ee, @midColor: #7a43b6, @colorStop: 50%, @endColor: #c3325f) {
background-color: @endColor;
background-repeat: no-repeat;
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), color-stop(@colorStop, @midColor), to(@endColor));
background-image: -webkit-linear-gradient(@startColor, @midColor @colorStop, @endColor);
background-image: -moz-linear-gradient(top, @startColor, @midColor @colorStop, @endColor);
background-image: -ms-linear-gradient(@startColor, @midColor @colorStop, @endColor);
background-image: -o-linear-gradient(@startColor, @midColor @colorStop, @endColor);
background-image: linear-gradient(@startColor, @midColor @colorStop, @endColor);
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@startColor,@endColor)); // IE9 and down, gets no color-stop at all for proper fallback
}
}
// Reset filters for IE
.reset-filter() {
filter: e(%("progid:DXImageTransform.Microsoft.gradient(enabled = false)"));
}
// Opacity
.opacity(@opacity: 100) {
filter: e(%("alpha(opacity=%d)", @opacity));
-khtml-opacity: @opacity / 100;
-moz-opacity: @opacity / 100;
opacity: @opacity / 100;
}
+854 -422
View File
File diff suppressed because it is too large Load Diff
-269
View File
@@ -1,269 +0,0 @@
/* Preboot.less
* Variables and mixins to pre-ignite any new web development project
* ------------------------------------------------------------------ */
// Variables
// ---------
// Links
@linkColor: #0069d6;
@linkColorHover: darken(@linkColor, 10);
// Grays
@black: #000;
@grayDark: lighten(@black, 25%);
@gray: lighten(@black, 50%);
@grayLight: lighten(@black, 75%);
@grayLighter: lighten(@black, 90%);
@white: #fff;
// Accent Colors
@blue: #049CDB;
@blueDark: #0064CD;
@green: #46a546;
@red: #9d261d;
@yellow: #ffc40d;
@orange: #f89406;
@pink: #c3325f;
@purple: #7a43b6;
// Baseline grid
@basefont: 13px;
@baseline: 18px;
// Griditude
@gridColumns: 16;
@gridColumnWidth: 40px;
@gridGutterWidth: 20px;
@siteWidth: (@gridColumns * @gridColumnWidth) + (@gridGutterWidth * (@gridColumns - 1));
// Color Scheme
// ------------
@baseColor: @blue; // Set a base color
@complement: spin(@baseColor, 180); // Determine a complementary color
@split1: spin(@baseColor, 158); // Split complements
@split2: spin(@baseColor, -158);
@triad1: spin(@baseColor, 135); // Triads colors
@triad2: spin(@baseColor, -135);
@tetra1: spin(@baseColor, 90); // Tetra colors
@tetra2: spin(@baseColor, -90);
@analog1: spin(@baseColor, 22); // Analogs colors
@analog2: spin(@baseColor, -22);
// Mixins
// ------
// Clearfix for clearing floats like a boss
.clearfix {
zoom: 1;
&:after {
display: block;
visibility: hidden;
height: 0;
clear: both;
content: ".";
}
}
// Center-align a block level element
.center-block {
display: block;
margin: 0 auto;
}
// Sizing shortcuts
.size(@height: 5px, @width: 5px) {
height: @height;
width: @width;
}
.square(@size: 5px) {
.size(@size, @size);
}
// Input placeholder text
.placeholder(@color: @grayLight) {
:-moz-placeholder {
color: @color;
}
::-webkit-input-placeholder {
color: @color;
}
}
// Font Stacks
#font {
.shorthand(@weight: normal, @size: 14px, @lineHeight: 20px) {
font-size: @size;
font-weight: @weight;
line-height: @lineHeight;
}
.sans-serif(@weight: normal, @size: 14px, @lineHeight: 20px) {
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size: @size;
font-weight: @weight;
line-height: @lineHeight;
}
.serif(@weight: normal, @size: 14px, @lineHeight: 20px) {
font-family: "Georgia", Times New Roman, Times, sans-serif;
font-size: @size;
font-weight: @weight;
line-height: @lineHeight;
}
.monospace(@weight: normal, @size: 12px, @lineHeight: 20px) {
font-family: "Monaco", Courier New, monospace;
font-size: @size;
font-weight: @weight;
line-height: @lineHeight;
}
}
// Grid System
.container {
width: @siteWidth;
margin: 0 auto;
.clearfix();
}
.columns(@columnSpan: 1) {
float: left;
width: (@gridColumnWidth * @columnSpan) + (@gridGutterWidth * (@columnSpan - 1));
margin-left: @gridGutterWidth;
&:first-child {
margin-left: 0;
}
}
.offsetMath(@extraSpace: 40px) {
margin-left: (@gridColumnWidth * @columnOffset) + (@gridGutterWidth * (@columnOffset - 1)) + @extraSpace !important;
}
.offset(@columnOffset: 1) {
.offsetMath(40px);
&:first-child {
.offsetMath(20px);
}
}
// Border Radius
.border-radius(@radius: 5px) {
-webkit-border-radius: @radius;
-moz-border-radius: @radius;
border-radius: @radius;
}
// Drop shadows
.box-shadow(@shadow: 0 1px 3px rgba(0,0,0,.25)) {
-webkit-box-shadow: @shadow;
-moz-box-shadow: @shadow;
box-shadow: @shadow;
}
// Transitions
.transition(@transition) {
-webkit-transition: @transition;
-moz-transition: @transition;
transition: @transition;
}
// Background clipping
.background-clip(@clip) {
-webkit-background-clip: @clip;
-moz-background-clip: @clip;
background-clip: @clip;
}
// CSS3 Content Columns
.content-columns(@columnCount, @columnGap: 20px) {
-webkit-column-count: @columnCount;
-webkit-column-gap: @columnGap;
-moz-column-count: @columnCount;
-moz-column-gap: @columnGap;
column-count: @columnCount;
column-gap: @columnGap;
}
// Buttons
.button(@color: #fff, @padding: 4px 14px, @textColor: #333, @textShadow: 0 1px 1px rgba(255,255,255,.75), @fontSize: 13px, @borderColor: rgba(0,0,0,.1), @borderRadius: 4px) {
display: inline-block;
#gradient > .vertical-three-colors(@color, @color, 0.25, darken(@color, 10%));
padding: @padding;
text-shadow: @textShadow;
color: @textColor;
font-size: @fontSize;
line-height: @baseline;
border: 1px solid @borderColor;
border-bottom-color: fadein(@borderColor, 15%);
.border-radius(@borderRadius);
@shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
.box-shadow(@shadow);
&:hover {
background-position: 0 -15px;
color: @textColor;
text-decoration: none;
}
}
// Add an alphatransparency value to any background or border color (via Elyse Holladay)
#translucent {
.background(@color: @white, @alpha: 1) {
background-color: hsla(hue(@color), saturation(@color), lightness(@color), @alpha);
}
.border(@color: @white, @alpha: 1) {
border-color: hsla(hue(@color), saturation(@color), lightness(@color), @alpha);
background-clip: padding-box;
}
}
// Gradients
#gradient {
.horizontal (@startColor: #555, @endColor: #333) {
background-color: @endColor;
background-repeat: repeat-x;
background-image: -khtml-gradient(linear, left top, right top, from(@startColor), to(@endColor)); // Konqueror
background-image: -moz-linear-gradient(left, @startColor, @endColor); // FF 3.6+
background-image: -ms-linear-gradient(left, @startColor, @endColor); // IE10
background-image: -webkit-gradient(linear, left top, right top, color-stop(0%, @startColor), color-stop(100%, @endColor)); // Safari 4+, Chrome 2+
background-image: -webkit-linear-gradient(left, @startColor, @endColor); // Safari 5.1+, Chrome 10+
background-image: -o-linear-gradient(left, @startColor, @endColor); // Opera 11.10
-ms-filter: %("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",@startColor,@endColor); // IE8+
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",@startColor,@endColor)); // IE6 & IE7
background-image: linear-gradient(left, @startColor, @endColor); // Le standard
}
.vertical (@startColor: #555, @endColor: #333) {
background-color: @endColor;
background-repeat: repeat-x;
background-image: -khtml-gradient(linear, left top, left bottom, from(@startColor), to(@endColor)); // Konqueror
background-image: -moz-linear-gradient(@startColor, @endColor); // FF 3.6+
background-image: -ms-linear-gradient(@startColor, @endColor); // IE10
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, @startColor), color-stop(100%, @endColor)); // Safari 4+, Chrome 2+
background-image: -webkit-linear-gradient(@startColor, @endColor); // Safari 5.1+, Chrome 10+
background-image: -o-linear-gradient(@startColor, @endColor); // Opera 11.10
-ms-filter: %("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@startColor,@endColor); // IE8+
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@startColor,@endColor)); // IE6 & IE7
background-image: linear-gradient(@startColor, @endColor); // The standard
}
.directional (@startColor: #555, @endColor: #333, @deg: 45deg) {
background-color: @endColor;
background-repeat: repeat-x;
background-image: -moz-linear-gradient(@deg, @startColor, @endColor); // FF 3.6+
background-image: -ms-linear-gradient(@deg, @startColor, @endColor); // IE10
background-image: -webkit-linear-gradient(@deg, @startColor, @endColor); // Safari 5.1+, Chrome 10+
background-image: -o-linear-gradient(@deg, @startColor, @endColor); // Opera 11.10
background-image: linear-gradient(@deg, @startColor, @endColor); // The standard
}
.vertical-three-colors(@startColor: #00b3ee, @midColor: #7a43b6, @colorStop: 0.5, @endColor: #c3325f) {
background-color: @endColor;
background-repeat: no-repeat;
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), color-stop(@colorStop, @midColor), to(@endColor));
background-image: -webkit-linear-gradient(@startColor, color-stop(@colorStop, @midColor), @endColor);
background-image: -moz-linear-gradient(@startColor, color-stop(@midColor, @colorStop), @endColor);
}
}
// Opacity
.opacity(@opacity: 100) {
filter: e(%("alpha(opacity=%d)", @opacity));
-khtml-opacity: @opacity / 100;
-moz-opacity: @opacity / 100;
opacity: @opacity / 100;
}
+130 -9
View File
@@ -1,20 +1,141 @@
/*
* Reset.less
/* Reset.less
* Props to Eric Meyer (meyerweb.com) for his CSS reset file. We're using an adapted version here that cuts out some of the reset HTML elements we will never need here (i.e., dfn, samp, etc).
*/
* ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
// ERIC MEYER RESET
// --------------------------------------------------
// Eric Meyer reset
html, body { margin: 0; padding: 0; }
h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, cite, code, del, dfn, em, img, q, s, samp, small, strike, strong, sub, sup, tt, var, dd, dl, dt, li, ol, ul, fieldset, form, label, legend, button, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; font-weight: normal; font-style: normal; font-size: 100%; line-height: 1; font-family: inherit; }
table { border-collapse: collapse; border-spacing: 0; }
ol, ul { list-style: none; }
q:before, q:after, blockquote:before, blockquote:after { content: ""; }
// HTML5
header,
section,
footer,
// Normalize.css
// Pulling in select resets form the normalize.css project
// --------------------------------------------------
// Display in IE6-9 and FF3
// -------------------------
// Source: http://github.com/necolas/normalize.css
html {
overflow-y: scroll;
font-size: 100%;
-webkit-text-size-adjust: 100%;
-ms-text-size-adjust: 100%;
}
// Focus states
a:focus {
outline: thin dotted;
}
// Hover & Active
a:hover,
a:active {
outline: 0;
}
// Display in IE6-9 and FF3
// -------------------------
// Source: http://github.com/necolas/normalize.css
article,
aside {
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
display: block;
}
// Display block in IE6-9 and FF3
// -------------------------
// Source: http://github.com/necolas/normalize.css
audio,
canvas,
video {
display: inline-block;
*display: inline;
*zoom: 1;
}
// Prevents modern browsers from displaying 'audio' without controls
// -------------------------
// Source: http://github.com/necolas/normalize.css
audio:not([controls]) {
display: none;
}
// Prevents sub and sup affecting line-height in all browsers
// -------------------------
// Source: http://github.com/necolas/normalize.css
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sup {
top: -0.5em;
}
sub {
bottom: -0.25em;
}
// Img border in a's and image quality
// -------------------------
// Source: http://github.com/necolas/normalize.css
img {
border: 0;
-ms-interpolation-mode: bicubic;
}
// Forms
// -------------------------
// Source: http://github.com/necolas/normalize.css
// Font size in all browsers, margin changes, misc consistency
button,
input,
select,
textarea {
font-size: 100%;
margin: 0;
vertical-align: baseline;
*vertical-align: middle;
}
button,
input {
line-height: normal; // FF3/4 have !important on line-height in UA stylesheet
*overflow: visible; // Inner spacing ie IE6/7
}
button::-moz-focus-inner,
input::-moz-focus-inner { // Inner padding and border oddities in FF3/4
border: 0;
padding: 0;
}
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
cursor: pointer; // Cursors on all buttons applied consistently
-webkit-appearance: button; // Style clicable inputs in iOS
}
input[type="search"] { // Appearance in Safari/Chrome
-webkit-appearance: textfield;
-webkit-box-sizing: content-box;
-moz-box-sizing: content-box;
box-sizing: content-box;
}
input[type="search"]::-webkit-search-decoration {
-webkit-appearance: none; // Inner-padding issues in Chrome OSX, Safari 5
}
textarea {
overflow: auto; // Remove vertical scrollbar in IE6-9
vertical-align: top; // Readability and alignment cross-browser
}
+100 -98
View File
@@ -1,135 +1,137 @@
/*
* Scaffolding
* Basic and global styles for generating a grid system, structural layout, and page templates
*/
/* Baseline Grid System
-------------------------------------------------- */
.row {
.clearfix();
// Default columns
.span1 { .columns(1); }
.span2 { .columns(2); }
.span3 { .columns(3); }
.span4 { .columns(4); }
.span5 { .columns(5); }
.span6 { .columns(6); }
.span7 { .columns(7); }
.span8 { .columns(8); }
.span9 { .columns(9); }
.span10 { .columns(10); }
.span11 { .columns(11); }
.span12 { .columns(12); }
.span13 { .columns(13); }
.span14 { .columns(14); }
.span15 { .columns(15); }
.span16 { .columns(16); }
// Offset column options
.offset1 { .offset(1); }
.offset2 { .offset(2); }
.offset3 { .offset(3); }
.offset4 { .offset(4); }
.offset5 { .offset(5); }
.offset6 { .offset(6); }
.offset7 { .offset(7); }
.offset8 { .offset(8); }
.offset9 { .offset(8); }
.offset10 { .offset(10); }
.offset11 { .offset(11); }
.offset12 { .offset(12); }
}
* ------------------------------------------------------------------------------------------- */
/* Structural Layout
-------------------------------------------------- */
// STRUCTURAL LAYOUT
// -----------------
html, body {
background-color: #fff;
}
body {
background-color: @white;
margin: 0;
#font > .sans-serif(normal,@basefont,@baseline);
color: @gray;
text-rendering: optimizeLegibility;
color: @grayDark;
}
// Container (centered, fixed-width layouts)
div.container {
width: 940px;
margin: 0 auto;
.container {
.fixed-container();
}
// Fluid layouts (left aligned, with sidebar, min- & max-width content)
div.container-fluid {
padding: 20px;
.container-fluid {
position: relative;
min-width: 940px;
padding-left: 20px;
padding-right: 20px;
.clearfix();
div.sidebar {
float: left;
> .sidebar {
position: absolute;
top: 0;
left: 20px;
width: 220px;
}
div.content {
min-width: 700px;
max-width: 1180px;
// TODO in v2: rename this and .popover .content to be more specific
> .content {
margin-left: 240px;
}
}
/* Base Styles
-------------------------------------------------- */
// BASE STYLES
// -----------
// Links
a {
color: @linkColor;
text-decoration: none;
line-height: inherit;
font-weight: inherit;
&:hover {
color: @linkColorHover;
text-decoration: underline;
}
}
// Buttons
.btn {
.button();
.transition(.1s linear all);
&.primary {
#gradient > .vertical(@blue, @blueDark);
color: #fff;
text-shadow: 0 -1px 0 rgba(0,0,0,.25);
&:hover {
color: #fff;
}
}
&.large {
font-size: 16px;
line-height: 28px;
.border-radius(6px);
}
&.small {
padding-right: 9px;
padding-left: 9px;
font-size: 11px;
}
&:disabled,
&.disabled {
background-image: none;
.opacity(65);
cursor: default;
}
&:active {
@shadow: inset 0 3px 7px rgba(0,0,0,.1), 0 1px 2px rgba(0,0,0,.05);
.box-shadow(@shadow);
}
// Quick floats
.pull-right {
float: right;
}
// Help Firefox not be a jerk about adding extra padding to buttons
button.btn,
input[type=submit].btn {
&::-moz-focus-inner {
padding: 0;
border: 0;
}
.pull-left {
float: left;
}
// Toggling content
.hide {
display: none;
}
.show {
display: block;
}
// GRID SYSTEM
// -----------
// To customize the grid system, bring up the variables.less file and change the column count, size, and gutter there
.row {
.clearfix();
margin-left: -@gridGutterWidth;
}
// Find all .span# classes within .row and give them the necessary properties for grid columns (supported by all browsers back to IE7)
// Credit to @dhg for the idea
.row > [class*="span"] {
.gridColumn();
}
// Default columns
.span1 { .columns(1); }
.span2 { .columns(2); }
.span3 { .columns(3); }
.span4 { .columns(4); }
.span5 { .columns(5); }
.span6 { .columns(6); }
.span7 { .columns(7); }
.span8 { .columns(8); }
.span9 { .columns(9); }
.span10 { .columns(10); }
.span11 { .columns(11); }
.span12 { .columns(12); }
.span13 { .columns(13); }
.span14 { .columns(14); }
.span15 { .columns(15); }
.span16 { .columns(16); }
// For optional 24-column grid
.span17 { .columns(17); }
.span18 { .columns(18); }
.span19 { .columns(19); }
.span20 { .columns(20); }
.span21 { .columns(21); }
.span22 { .columns(22); }
.span23 { .columns(23); }
.span24 { .columns(24); }
// Offset column options
.row {
& > .offset1 { .offset(1); }
& > .offset2 { .offset(2); }
& > .offset3 { .offset(3); }
& > .offset4 { .offset(4); }
& > .offset5 { .offset(5); }
& > .offset6 { .offset(6); }
& > .offset7 { .offset(7); }
& > .offset8 { .offset(8); }
& > .offset9 { .offset(9); }
& > .offset10 { .offset(10); }
& > .offset11 { .offset(11); }
& > .offset12 { .offset(12); }
}
// Unique column sizes for 16-column grid
.span-one-third { width: 300px; }
.span-two-thirds { width: 620px; }
.offset-one-third { margin-left: 340px; }
.offset-two-thirds { margin-left: 660px; }
+133 -53
View File
@@ -1,88 +1,162 @@
/*
* Tables.less
* Tables for, you guessed it, tabular data
*/
* ---------------------------------------- */
/* Baseline styles
-------------------------------------------------- */
// BASELINE STYLES
// ---------------
table {
width: 100%;
margin-bottom: @baseline;
padding: 0;
text-align: left;
border-collapse: separate;
font-size: 13px;
th, td {
font-size: @basefont;
border-collapse: collapse;
th,
td {
padding: 10px 10px 9px;
line-height: @baseline * .75;
vertical-align: middle;
border-bottom: 1px solid #ddd;
line-height: @baseline;
text-align: left;
}
th {
padding-top: 9px;
font-weight: bold;
border-bottom-width: 2px;
vertical-align: middle;
}
td {
vertical-align: top;
border-top: 1px solid #ddd;
}
// When scoped to row, fix th in tbody
tbody th {
border-top: 1px solid #ddd;
vertical-align: top;
}
}
/* Zebra-striping
-------------------------------------------------- */
// CONDENSED VERSION
// -----------------
.condensed-table {
th,
td {
padding: 5px 5px 4px;
}
}
// BORDERED VERSION
// ----------------
.bordered-table {
border: 1px solid #ddd;
border-collapse: separate; // Done so we can round those corners!
*border-collapse: collapse; /* IE7, collapse table to remove spacing */
.border-radius(4px);
th + th,
td + td,
th + td {
border-left: 1px solid #ddd;
}
thead tr:first-child th:first-child,
tbody tr:first-child td:first-child {
.border-radius(4px 0 0 0);
}
thead tr:first-child th:last-child,
tbody tr:first-child td:last-child {
.border-radius(0 4px 0 0);
}
tbody tr:last-child td:first-child {
.border-radius(0 0 0 4px);
}
tbody tr:last-child td:last-child {
.border-radius(0 0 4px 0);
}
}
// TABLE CELL SIZES
// ----------------
// This is a duplication of the main grid .columns() mixin, but subtracts 20px to account for input padding and border
.tableColumns(@columnSpan: 1) {
width: ((@gridColumnWidth - 20) * @columnSpan) + ((@gridColumnWidth - 20) * (@columnSpan - 1));
}
table {
// Default columns
.span1 { .tableColumns(1); }
.span2 { .tableColumns(2); }
.span3 { .tableColumns(3); }
.span4 { .tableColumns(4); }
.span5 { .tableColumns(5); }
.span6 { .tableColumns(6); }
.span7 { .tableColumns(7); }
.span8 { .tableColumns(8); }
.span9 { .tableColumns(9); }
.span10 { .tableColumns(10); }
.span11 { .tableColumns(11); }
.span12 { .tableColumns(12); }
.span13 { .tableColumns(13); }
.span14 { .tableColumns(14); }
.span15 { .tableColumns(15); }
.span16 { .tableColumns(16); }
}
// ZEBRA-STRIPING
// --------------
// Default zebra-stripe styles (alternating gray and transparent backgrounds)
table.zebra-striped {
.zebra-striped {
tbody {
tr:nth-child(odd) td {
tr:nth-child(odd) td,
tr:nth-child(odd) th {
background-color: #f9f9f9;
}
tr:hover td {
tr:hover td,
tr:hover th {
background-color: #f5f5f5;
}
}
}
table {
// Tablesorting styles w/ jQuery plugin
th.header { // For tablesorter tables, make THs have a pointer on hover
.header {
cursor: pointer;
&:after {
width: 0px;
height: 0px;
display: inline-block;
content: "";
float: right;
margin-top:7px;
content: "&darr;";
text-indent: -99999px;
vertical-align: top;
border-left: 4px solid transparent;
border-right: 4px solid transparent;
border-bottom: 4px solid #000;
visibility:hidden;
.box-shadow(0 1px 0 #fff);
.opacity(30);
margin-top: 7px;
border-width: 0 4px 4px;
border-style: solid;
border-color: #000 transparent;
visibility: hidden;
}
}
th.headerSortUp,
th.headerSortDown { // Style the sorted column headers (THs)
// Style the sorted column headers (THs)
.headerSortUp,
.headerSortDown {
background-color: rgba(141,192,219,.25);
text-shadow: 0 1px 1px rgba(255,255,255,.75);
.border-radius(3px 3px 0 0);
}
th.header:hover { // Style the ascending (reverse alphabetical) column header
// Style the ascending (reverse alphabetical) column header
.header:hover {
&:after {
visibility:visible;
}
}
th.actions:hover {
background-image: none;
}
th.headerSortDown,
th.headerSortDown:hover { // Style the descending (alphabetical) column header
// Style the descending (alphabetical) column header
.headerSortDown,
.headerSortDown:hover {
&:after {
visibility:visible;
.opacity(60);
}
}
th.headerSortUp { // Style the ascending (reverse alphabetical) column header
// Style the ascending (reverse alphabetical) column header
.headerSortUp {
&:after {
border-bottom: none;
border-left: 4px solid transparent;
@@ -94,51 +168,57 @@ table.zebra-striped {
}
}
// Blue Table Headings
th.blue {
.blue {
color: @blue;
border-bottom-color: @blue;
}
th.headerSortUp.blue, th.headerSortDown.blue {
.headerSortUp.blue,
.headerSortDown.blue {
background-color: lighten(@blue, 40%);
}
// Green Table Headings
th.green {
.green {
color: @green;
border-bottom-color: @green;
}
th.headerSortUp.green, th.headerSortDown.green { // backround color is 20% of border color
.headerSortUp.green,
.headerSortDown.green {
background-color: lighten(@green, 40%);
}
// Red Table Headings
th.red {
.red {
color: @red;
border-bottom-color: @red;
}
th.headerSortUp.red, th.headerSortDown.red { // backround color is 20% of border color
.headerSortUp.red,
.headerSortDown.red {
background-color: lighten(@red, 50%);
}
// Yellow Table Headings
th.yellow {
.yellow {
color: @yellow;
border-bottom-color: @yellow;
}
th.headerSortUp.yellow, th.headerSortDown.yellow { // backround color is 20% of border color
.headerSortUp.yellow,
.headerSortDown.yellow {
background-color: lighten(@yellow, 40%);
}
// Orange Table Headings
th.orange {
.orange {
color: @orange;
border-bottom-color: @orange;
}
th.headerSortUp.orange, th.headerSortDown.orange { // backround color is 20% of border color
.headerSortUp.orange,
.headerSortDown.orange {
background-color: lighten(@orange, 40%);
}
// Purple Table Headings
th.purple {
.purple {
color: @purple;
border-bottom-color: @purple;
}
th.headerSortUp.purple, th.headerSortDown.purple { // backround color is 20% of border color
.headerSortUp.purple,
.headerSortDown.purple {
background-color: lighten(@purple, 40%);
}
}
}
+16 -13
View File
@@ -3,19 +3,20 @@
* ---------------------------------------------------------------------------------------- */
// Body text
// BODY TEXT
// ---------
p {
#font > .shorthand(normal,@basefont,@baseline);
margin-bottom: @baseline;
margin-bottom: @baseline / 2;
small {
font-size: 11px;
font-size: @basefont - 2;
color: @grayLight;
}
}
// Headings
// HEADINGS
// --------
h1, h2, h3, h4, h5, h6 {
@@ -65,8 +66,7 @@ h6 {
}
// Colors
// COLORS
// ------
// Unordered and Ordered lists
@@ -108,12 +108,12 @@ dl {
}
}
// Misc
// MISC
// ----
// Horizontal rules
hr {
margin: 0 0 19px;
margin: 20px 0 19px;
border: 0;
border-bottom: 1px solid #eee;
}
@@ -122,7 +122,6 @@ hr {
strong {
font-style: inherit;
font-weight: bold;
line-height: inherit;
}
em {
font-style: italic;
@@ -130,7 +129,7 @@ em {
line-height: inherit;
}
.muted {
color: @grayLighter;
color: @grayLight;
}
// Blockquotes
@@ -142,7 +141,7 @@ blockquote {
#font > .shorthand(300,14px,@baseline);
margin-bottom: 0;
}
cite {
small {
display: block;
#font > .shorthand(300,12px,@baseline);
color: @grayLight;
@@ -169,16 +168,20 @@ code, pre {
code {
background-color: lighten(@orange, 40%);
color: rgba(0,0,0,.75);
padding: 2px 3px;
padding: 1px 3px;
}
pre {
background-color: #f5f5f5;
display: block;
padding: @baseline - 1;
padding: (@baseline - 1) / 2;
margin: 0 0 @baseline;
line-height: @baseline;
font-size: 12px;
border: 1px solid #ccc;
border: 1px solid rgba(0,0,0,.15);
.border-radius(3px);
white-space: pre;
white-space: pre-wrap;
word-wrap: break-word;
}
+60
View File
@@ -0,0 +1,60 @@
/* Variables.less
* Variables to customize the look and feel of Bootstrap
* ----------------------------------------------------- */
// Links
@linkColor: #0069d6;
@linkColorHover: darken(@linkColor, 15);
// Grays
@black: #000;
@grayDark: lighten(@black, 25%);
@gray: lighten(@black, 50%);
@grayLight: lighten(@black, 75%);
@grayLighter: lighten(@black, 90%);
@white: #fff;
// Accent Colors
@blue: #049CDB;
@blueDark: #0064CD;
@green: #46a546;
@red: #9d261d;
@yellow: #ffc40d;
@orange: #f89406;
@pink: #c3325f;
@purple: #7a43b6;
// Baseline grid
@basefont: 13px;
@baseline: 18px;
// Griditude
// Modify the grid styles in mixins.less
@gridColumns: 16;
@gridColumnWidth: 40px;
@gridGutterWidth: 20px;
@extraSpace: (@gridGutterWidth * 2); // For our grid calculations
@siteWidth: (@gridColumns * @gridColumnWidth) + (@gridGutterWidth * (@gridColumns - 1));
// Color Scheme
// Use this to roll your own color schemes if you like (unused by Bootstrap by default)
@baseColor: @blue; // Set a base color
@complement: spin(@baseColor, 180); // Determine a complementary color
@split1: spin(@baseColor, 158); // Split complements
@split2: spin(@baseColor, -158);
@triad1: spin(@baseColor, 135); // Triads colors
@triad2: spin(@baseColor, -135);
@tetra1: spin(@baseColor, 90); // Tetra colors
@tetra2: spin(@baseColor, -90);
@analog1: spin(@baseColor, 22); // Analogs colors
@analog2: spin(@baseColor, -22);
// More variables coming soon:
// - @basefont to @baseFontSize
// - @baseline to @baseLineHeight
// - @baseFontFamily
// - @primaryButtonColor
// - anything else? File an issue on GitHub