Compare commits
328 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 9376a7c221 | |||
| cacc213762 | |||
| b9292ff90c | |||
| 3bd9a26c01 | |||
| 820a3b27b6 | |||
| 1747caf19d | |||
| 437654030a | |||
| 10e72e158d | |||
| 91fbadad5b | |||
| c362e72660 | |||
| 66b70016d0 | |||
| 2526c3fdbe | |||
| a7eb9c294a | |||
| 1c5b8e967e | |||
| be45a821bb | |||
| 1413f976ae | |||
| cc6fda2262 | |||
| 2c7ab23d7a | |||
| 2877f84579 | |||
| f4466dd9c7 | |||
| 81679981c5 | |||
| 306c1b4914 | |||
| ed74992853 | |||
| 12916b06aa | |||
| e31c7fb8a5 | |||
| 8b959cacbc | |||
| 0f2a423b8d | |||
| 15a4399015 | |||
| 869b69c66c | |||
| 06582edb2a | |||
| d470fb72da | |||
| 68cbba347b | |||
| eca23e9b0f | |||
| f514c87d6b | |||
| 30d6a71ccd | |||
| 439ff09701 | |||
| c8862d91bc | |||
| 139f1be49d | |||
| ea61cdb740 | |||
| 32d425967a | |||
| 85c57c6ba8 | |||
| e8b3c36068 | |||
| dbb244cb97 | |||
| fbec803b55 | |||
| bca3ff4ed6 | |||
| f087b3428c | |||
| fe7b6decb1 | |||
| 322a56354f | |||
| 721b568303 | |||
| c5173cdb92 | |||
| 52e669d619 | |||
| 38c546c785 | |||
| 12aa060efd | |||
| e9c32fdf6d | |||
| acc037de15 | |||
| ddd154481b | |||
| fa6a6dbb92 | |||
| 78390d12af | |||
| cb69aa976f | |||
| fe8df5022b | |||
| f1349a2450 | |||
| 8fb36cb3dd | |||
| 296b838405 | |||
| bf3a5df371 | |||
| 783120dffa | |||
| 014d3cedf5 | |||
| bfc97fdaf6 | |||
| 693fd0db2a | |||
| fda5bb135e | |||
| 74f51105e9 | |||
| 942f9c5df4 | |||
| 02097700e8 | |||
| dc10e6bbf8 | |||
| e6e4d93d5e | |||
| 701f871e7d | |||
| e0d0190803 | |||
| 5d1b4206b1 | |||
| 8df2811d49 | |||
| 8b417c39e7 | |||
| ace6dc0c25 | |||
| a10d68f291 | |||
| a367fd4938 | |||
| 88c2497368 | |||
| 5702e1be6e | |||
| 4d593618e0 | |||
| 05655ff4ff | |||
| 1700e48e7f | |||
| 0df0b5f1f5 | |||
| cd1f72f484 | |||
| 303767350c | |||
| 6ec7c72e5b | |||
| 41889f74d0 | |||
| c8856eeff3 | |||
| 54486de88c | |||
| f2bbee2075 | |||
| ddf5ceccce | |||
| cf7d7a7b5d | |||
| 02c0b788cd | |||
| 0a1d296e19 | |||
| 79b7017227 | |||
| d38bda1480 | |||
| 62c78e46f8 | |||
| 91bcccd9a8 | |||
| ebed09ec01 | |||
| f3b3814606 | |||
| 823b5accd3 | |||
| 7e6cc0bf7e | |||
| 76f9c9128e | |||
| 51f293ba4c | |||
| 075e320a83 | |||
| 21957a3d9e | |||
| 953dc3a6f2 | |||
| fb51efcbd4 | |||
| 2320a09898 | |||
| 22d1506d23 | |||
| 28da31218f | |||
| 68f26d959f | |||
| e4866c4b3c | |||
| 5d6cf2ee19 | |||
| 2c93190283 | |||
| a8b9342aea | |||
| c9dbd2d601 | |||
| 72e2d4bb77 | |||
| 7ea343d570 | |||
| ead5dbeba5 | |||
| 2f39f86bd7 | |||
| 381d967ec8 | |||
| 46b5e0cbc6 | |||
| fc42ac6a56 | |||
| 46d38b10b8 | |||
| d0c75bbc83 | |||
| d350f577e9 | |||
| 46347fff01 | |||
| be03a53086 | |||
| 14b941744c | |||
| bf48c31406 | |||
| 64326322b4 | |||
| d5697fcf6b | |||
| 3b3dd3ac3c | |||
| 404e4d9e9a | |||
| cbf1dace2f | |||
| b5af762ef5 | |||
| 68cfedb34a | |||
| f1136228a7 | |||
| bf10a43ed9 | |||
| 5bb6c42405 | |||
| a6968c4934 | |||
| 9352fe1750 | |||
| f595e146d6 | |||
| 31c1eba51b | |||
| 92e7f166e7 | |||
| 81c3c1c68c | |||
| 41ad16fe40 | |||
| 233e050adf | |||
| c33169a6ba | |||
| ba2a99e7c4 | |||
| 45046544a6 | |||
| 0b9d4e78ad | |||
| 7f3b94c453 | |||
| d6ac499ca8 | |||
| 280d4aeb30 | |||
| 7426ced0fb | |||
| 24b5e6cb14 | |||
| a2fc01444e | |||
| edc3eee5ea | |||
| 21f29a7682 | |||
| 8e6697f2b2 | |||
| ac6625de5f | |||
| 0a3e034891 | |||
| 97bf02d787 | |||
| 3074737d90 | |||
| e0a007b929 | |||
| b06724a1a4 | |||
| 709870aa3e | |||
| 57eb2a8018 | |||
| 0ac50d28b5 | |||
| 78f7ad95f4 | |||
| bf78333531 | |||
| 463eae25b0 | |||
| e24b46b7f3 | |||
| ae0ba0686e | |||
| cd55963930 | |||
| 432eaff29c | |||
| 0048446db9 | |||
| 6b017b9bea | |||
| fda641fb6c | |||
| ed5c5994a7 | |||
| d19ca23f8f | |||
| fa778792c5 | |||
| df9a1c29f4 | |||
| 31007c01d8 | |||
| 5af5c2ed36 | |||
| b18c009051 | |||
| 48a8dd2a23 | |||
| 4702e75410 | |||
| ec8394cb6e | |||
| 7e534ce98a | |||
| e4f522990e | |||
| 6203535d2f | |||
| d76c305cbb | |||
| 7d649c9d4a | |||
| 3726ce24bb | |||
| 11ee1633b4 | |||
| dd8b745b88 | |||
| e73cd15fc8 | |||
| 630a88d3ce | |||
| a2369021ce | |||
| 1bd4723038 | |||
| b892a37320 | |||
| 7c9597f4e7 | |||
| 1b814458c9 | |||
| 7763cab608 | |||
| 5cf7c803e2 | |||
| d36e37214b | |||
| 86d5ed6f4f | |||
| fd1e9b1498 | |||
| f8ac403d8b | |||
| bc4f5d565e | |||
| 5035592988 | |||
| c6c1ada600 | |||
| a90334eebb | |||
| 239ce24f92 | |||
| 085d6d185d | |||
| 32181816f7 | |||
| c77d4266c0 | |||
| 46764a7165 | |||
| da43c7c27c | |||
| 40a8a93b22 | |||
| d49dd766c8 | |||
| a4a6244eb7 | |||
| 82715ae96d | |||
| a2690c6d86 | |||
| 57f8dbe25c | |||
| f8374a754d | |||
| 8ecffcb32f | |||
| e1f6458e36 | |||
| 0944e036ae | |||
| ecbb0ed4df | |||
| e9a648cd39 | |||
| 474471b831 | |||
| 24e277b85a | |||
| 498a28b4cd | |||
| b29d947477 | |||
| 0540b63ab0 | |||
| aec8b08930 | |||
| 88b1e44dd6 | |||
| 4a2443901f | |||
| bda3d57a00 | |||
| 003fcccceb | |||
| f4d3d7da2e | |||
| a4bf6ef0a0 | |||
| af871d57c9 | |||
| c3ea955661 | |||
| a419e70a42 | |||
| ebf94c53a5 | |||
| 1716b0fdb5 | |||
| fe38d12f12 | |||
| 667179f406 | |||
| c92a75999f | |||
| 532ee08213 | |||
| 443c43f6c4 | |||
| 67585bd34e | |||
| 6c3cd6fd9d | |||
| a6206c98d5 | |||
| 2d90c816ac | |||
| 2769241aeb | |||
| 37460e58d3 | |||
| cc3de8bd6e | |||
| 13be8b2031 | |||
| c15877445c | |||
| 78992bbf42 | |||
| 2a20761f07 | |||
| 3b3def4898 | |||
| 239e6a7d21 | |||
| cedb3c7c56 | |||
| 783f4885ab | |||
| 26ca131a95 | |||
| 143fef9f95 | |||
| 917b46a343 | |||
| caa79ed594 | |||
| 6881c193ca | |||
| 03a406d920 | |||
| f69e244a60 | |||
| cd876fb659 | |||
| 6f3bef195a | |||
| 1ea09b751e | |||
| 6e25aacc91 | |||
| 6aa15eb01f | |||
| 6c4b276cd4 | |||
| 7857089065 | |||
| 0bcbcf69ec | |||
| e4e2e37c5c | |||
| 5aa1018496 | |||
| faa760f563 | |||
| 2ead9a5bc3 | |||
| 5331fe39df | |||
| 595e1a189c | |||
| a40ab1cd66 | |||
| 15bb78ce80 | |||
| e1deba30aa | |||
| 537c5cc33d | |||
| 65d322958c | |||
| 38303dd997 | |||
| bbadd429a8 | |||
| 2c8eff0eec | |||
| 0489c708c7 | |||
| 39791a8ea8 | |||
| cd2b12f788 | |||
| 10faf28aef | |||
| 76e42edb29 | |||
| f29f98501c | |||
| 1f8e2d2617 | |||
| 61332d727e | |||
| f2bd7d9f27 | |||
| 6c5c3c81ec | |||
| 7a0f5c6c00 | |||
| cc4f8b9f6c | |||
| 501a2d69e1 | |||
| 7762a77c21 | |||
| 138b5a8c05 | |||
| d4a16d35eb | |||
| 3fa4ca2d87 | |||
| dfb3175d4b | |||
| 08b8571cb8 | |||
| 5ff5d351bf | |||
| 3aa89ded21 | |||
| 4fbb400754 | |||
| f5fd5e7523 |
@@ -1,85 +0,0 @@
|
||||
/* ==========================================================
|
||||
* issue-guidelines.js
|
||||
* http://twitter.github.com/bootstrap/javascript.html#alerts
|
||||
* ==========================================================
|
||||
* Copyright 2012 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.
|
||||
* ========================================================== */
|
||||
|
||||
var assert = require('assert')
|
||||
|
||||
module.exports = {
|
||||
|
||||
'pull-requests': {
|
||||
|
||||
'should always be made against -wip branches': function (pull) {
|
||||
assert.ok(/\-wip$/.test(pull.base.ref))
|
||||
},
|
||||
|
||||
'should always be made from feature branches': function (pull) {
|
||||
assert.notEqual(pull.head.ref, 'master')
|
||||
},
|
||||
|
||||
'should always include a unit test if changing js files': function (pull) {
|
||||
var hasJS = false
|
||||
var hasTests = false
|
||||
|
||||
pull.files.forEach(function (file) {
|
||||
if (/^js\/[^./]+.js/.test(file.filename)) hasJS = true
|
||||
if (/^js\/tests\/unit\/[^.]+.js/.test(file.filename)) hasTests = true
|
||||
})
|
||||
|
||||
assert.ok(!hasJS || hasJS && hasTests)
|
||||
},
|
||||
|
||||
'after': function (pull) {
|
||||
if (pull.reporter.stats.failures) {
|
||||
pull.reportFailures(pull.close.bind(pull))
|
||||
}
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
'issues': {
|
||||
|
||||
'before': function (issue) {
|
||||
var plus = {}
|
||||
var labels = issue.labels.map(function (label) { return label.name });
|
||||
|
||||
if (~labels.indexOf('popular')) return
|
||||
|
||||
issue.comments.forEach(function (comment) {
|
||||
if (/\+1/.test(comment.body)) plus[comment.user.login] = true
|
||||
})
|
||||
|
||||
if (Object.keys(plus).length > 5) {
|
||||
issue.tag('popular')
|
||||
issue.comment('Tagging this issue as popular, please stop commenting on this issue with +1. thanks!')
|
||||
}
|
||||
},
|
||||
|
||||
'should include a jsfiddle/jsbin illustrating the problem if tagged with js but not a feature': function (issue) {
|
||||
var labels = issue.labels.map(function (label) { return label.name });
|
||||
if (~labels.indexOf('js') && !~labels.indexOf('feature')) assert.ok(/(jsfiddle|jsbin)/.test(issue.body))
|
||||
},
|
||||
|
||||
'after': function (issue) {
|
||||
if (issue.reporter.stats.failures) {
|
||||
issue.reportFailures(issue.close.bind(issue))
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
# Contributing to Bootstrap
|
||||
|
||||
Looking to contribute something to Bootstrap? **Here's how you can help.**
|
||||
|
||||
|
||||
|
||||
## Reporting issues
|
||||
|
||||
We only accept issues that are bug reports or feature requests. Bugs must be isolated and reproducible problems that we can fix within the Bootstrap core. Please read the following guidelines before opening any issue.
|
||||
|
||||
1. **Search for existing issues.** We get a lot of duplicate issues, and you'd help us out a lot by first checking if someone else has reported the same issue. Moreover, the issue may have already been resolved with a fix available.
|
||||
2. **Create an isolated and reproducible test case.** Be sure the problem exists in Bootstrap's code with a [reduced test cases](http://css-tricks.com/reduced-test-cases/) that should be included in each bug report.
|
||||
3. **Include a live example.** Make use of jsFiddle or jsBin to share your isolated test cases.
|
||||
4. **Share as much information as possible.** Include operating system and version, browser and version, version of Bootstrap, customized or vanilla build, etc. where appropriate. Also include steps to reproduce the bug.
|
||||
|
||||
|
||||
|
||||
## Key branches
|
||||
|
||||
- `master` is the latest, deployed version.
|
||||
- `gh-pages` is the hosted docs (not to be used for pull requests).
|
||||
- `*-wip` is the official work in progress branch for the next release.
|
||||
|
||||
|
||||
|
||||
## Notes on the repo
|
||||
|
||||
As of v2.0.0, Bootstrap's documentation is powered by Mustache templates and built via `make` before each commit and release. This was done to enable internationalization (translation) in a future release by uploading our strings to the [Twitter Translation Center](http://translate.twttr.com/). Any edits to the docs should be first done in the Mustache files and then recompiled into the HTML.
|
||||
|
||||
|
||||
|
||||
## Pull requests
|
||||
|
||||
- Try to submit pull requests against the latest `*-wip` branch for easier merging
|
||||
- Any changes to the docs must be made to the Mustache templates, not just the compiled HTML pages
|
||||
- CSS changes must be done in .less files first, never just the compiled files
|
||||
- If modifying the .less files, always recompile and commit the compiled files bootstrap.css and bootstrap.min.css
|
||||
- Try not to pollute your pull request with unintended changes--keep them simple and small
|
||||
- Try to share which browsers your code has been tested in before submitting a pull request
|
||||
|
||||
|
||||
|
||||
## Coding standards: HTML
|
||||
|
||||
- Two spaces for indentation, never tabs
|
||||
- Double quotes only, never single quotes
|
||||
- Always use proper indentation
|
||||
- Use tags and elements appropriate for an HTML5 doctype (e.g., self-closing tags)
|
||||
|
||||
|
||||
|
||||
## Coding standards: CSS
|
||||
|
||||
- Adhere to the [Recess CSS property order](http://markdotto.com/2011/11/29/css-property-order/)
|
||||
- Multiple-line approach (one property and value per line)
|
||||
- Always a space after a property's colon (.e.g, `display: block;` and not `display:block;`)
|
||||
- End all lines with a semi-colon
|
||||
- For multiple, comma-separated selectors, place each selector on it's own line
|
||||
- Attribute selectors, like `input[type="text"]` should always wrap the attribute's value in double quotes, for consistency and safety (see this [blog post on unquoted attribute values](http://mathiasbynens.be/notes/unquoted-attribute-values) that can lead to XSS attacks).
|
||||
|
||||
|
||||
|
||||
## Coding standards: JS
|
||||
|
||||
- No semicolons
|
||||
- Comma first
|
||||
- 2 spaces (no tabs)
|
||||
- strict mode
|
||||
- "Attractive"
|
||||
|
||||
|
||||
|
||||
## License
|
||||
|
||||
By contributing your code, you agree to license your contribution under the terms of the APLv2: https://github.com/twitter/bootstrap/blob/master/LICENSE
|
||||
@@ -27,8 +27,8 @@ build:
|
||||
@cp js/tests/vendor/jquery.js docs/assets/js/
|
||||
@echo "Compiling documentation... ${CHECK} Done"
|
||||
@cat js/bootstrap-transition.js js/bootstrap-alert.js js/bootstrap-button.js js/bootstrap-carousel.js js/bootstrap-collapse.js js/bootstrap-dropdown.js js/bootstrap-modal.js js/bootstrap-tooltip.js js/bootstrap-popover.js js/bootstrap-scrollspy.js js/bootstrap-tab.js js/bootstrap-typeahead.js js/bootstrap-affix.js > docs/assets/js/bootstrap.js
|
||||
@uglifyjs -nc docs/assets/js/bootstrap.js > docs/assets/js/bootstrap.min.tmp.js
|
||||
@echo "/**\n* Bootstrap.js v2.1.1 by @fat & @mdo\n* Copyright 2012 Twitter, Inc.\n* http://www.apache.org/licenses/LICENSE-2.0.txt\n*/" > docs/assets/js/copyright.js
|
||||
@uglifyjs docs/assets/js/bootstrap.js -nc > docs/assets/js/bootstrap.min.tmp.js
|
||||
@echo "/**\n* Bootstrap.js v2.2.2 by @fat & @mdo\n* Copyright 2012 Twitter, Inc.\n* http://www.apache.org/licenses/LICENSE-2.0.txt\n*/" > docs/assets/js/copyright.js
|
||||
@cat docs/assets/js/copyright.js docs/assets/js/bootstrap.min.tmp.js > docs/assets/js/bootstrap.min.js
|
||||
@rm docs/assets/js/copyright.js docs/assets/js/bootstrap.min.tmp.js
|
||||
@echo "Compiling and minifying javascript... ${CHECK} Done"
|
||||
@@ -72,7 +72,7 @@ bootstrap:
|
||||
recess --compile ${BOOTSTRAP_RESPONSIVE_LESS} > bootstrap/css/bootstrap-responsive.css
|
||||
recess --compress ${BOOTSTRAP_RESPONSIVE_LESS} > bootstrap/css/bootstrap-responsive.min.css
|
||||
cat js/bootstrap-transition.js js/bootstrap-alert.js js/bootstrap-button.js js/bootstrap-carousel.js js/bootstrap-collapse.js js/bootstrap-dropdown.js js/bootstrap-modal.js js/bootstrap-tooltip.js js/bootstrap-popover.js js/bootstrap-scrollspy.js js/bootstrap-tab.js js/bootstrap-typeahead.js js/bootstrap-affix.js > bootstrap/js/bootstrap.js
|
||||
uglifyjs -nc bootstrap/js/bootstrap.js > bootstrap/js/bootstrap.min.tmp.js
|
||||
uglifyjs bootstrap/js/bootstrap.js -nc > bootstrap/js/bootstrap.min.tmp.js
|
||||
echo "/*!\n* Bootstrap.js by @fat & @mdo\n* Copyright 2012 Twitter, Inc.\n* http://www.apache.org/licenses/LICENSE-2.0.txt\n*/" > bootstrap/js/copyright.js
|
||||
cat bootstrap/js/copyright.js bootstrap/js/bootstrap.min.tmp.js > bootstrap/js/bootstrap.min.js
|
||||
rm bootstrap/js/copyright.js bootstrap/js/bootstrap.min.tmp.js
|
||||
@@ -97,12 +97,5 @@ watch:
|
||||
echo "Watching less files..."; \
|
||||
watchr -e "watch('less/.*\.less') { system 'make' }"
|
||||
|
||||
#
|
||||
# HAUNT GITHUB ISSUES 4 FAT & MDO ONLY (O_O )
|
||||
#
|
||||
|
||||
haunt:
|
||||
@haunt .issue-guidelines.js https://github.com/twitter/bootstrap
|
||||
|
||||
|
||||
.PHONY: docs watch gh-pages
|
||||
@@ -1,21 +1,22 @@
|
||||
[Twitter Bootstrap](http://twitter.github.com/bootstrap) [](http://travis-ci.org/twitter/bootstrap)
|
||||
=================
|
||||
# [Twitter Bootstrap v2.2.2](http://twitter.github.com/bootstrap) [](http://travis-ci.org/twitter/bootstrap)
|
||||
|
||||
Bootstrap is a sleek, intuitive, and powerful front-end framework for faster and easier web development, created and maintained by [Mark Otto](http://twitter.com/mdo) and [Jacob Thornton](http://twitter.com/fat) at Twitter.
|
||||
Bootstrap is a sleek, intuitive, and powerful front-end framework for faster and easier web development, created and maintained by [Mark Otto](http://twitter.com/mdo) and [Jacob Thornton](http://twitter.com/fat).
|
||||
|
||||
To get started, checkout http://getbootstrap.com!
|
||||
|
||||
|
||||
|
||||
Quick start
|
||||
-----------
|
||||
## Quick start
|
||||
|
||||
Clone the repo, `git clone git://github.com/twitter/bootstrap.git`, or [download the latest release](https://github.com/twitter/bootstrap/zipball/master).
|
||||
Three quick start options are available:
|
||||
|
||||
* [Download the latest release](https://github.com/twitter/bootstrap/zipball/master).
|
||||
* Clone the repo: `git clone git://github.com/twitter/bootstrap.git`.
|
||||
* Install with Twitter's [Bower](http://twitter.github.com/bower): `bower install bootstrap`.
|
||||
|
||||
|
||||
|
||||
Versioning
|
||||
----------
|
||||
## Versioning
|
||||
|
||||
For transparency and insight into our release cycle, and for striving to maintain backward compatibility, Bootstrap will be maintained under the Semantic Versioning guidelines as much as possible.
|
||||
|
||||
@@ -33,51 +34,24 @@ For more information on SemVer, please visit http://semver.org/.
|
||||
|
||||
|
||||
|
||||
Bug tracker
|
||||
-----------
|
||||
## Bug tracker
|
||||
|
||||
Have a bug? Please create an issue here on GitHub that conforms with [necolas's guidelines](https://github.com/necolas/issue-guidelines).
|
||||
|
||||
https://github.com/twitter/bootstrap/issues
|
||||
Have a bug or a feature request? [Please open a new issue](https://github.com/twitter/bootstrap/issues). Before opening any issue, please search for existing issues and read the [Issue Guidelines](https://github.com/necolas/issue-guidelines), written by [Nicolas Gallagher](https://github.com/necolas/).
|
||||
|
||||
|
||||
|
||||
Twitter account
|
||||
---------------
|
||||
## Community
|
||||
|
||||
Keep up to date on announcements and more by following Bootstrap on Twitter, [@TwBootstrap](http://twitter.com/TwBootstrap).
|
||||
Keep track of development and community news.
|
||||
|
||||
* Follow [@twbootstrap on Twitter](http://twitter.com/twbootstrap).
|
||||
* Read and subscribe to the [The Official Twitter Bootstrap Blog](http://blog.getbootstrap.com).
|
||||
* Have a question that's not a feature request or bug report? [Ask on the mailing list.](http://groups.google.com/group/twitter-bootstrap)
|
||||
* Chat with fellow Bootstrappers in IRC. On the `irc.freenode.net` server, in the `##twitter-bootstrap` channel.
|
||||
|
||||
|
||||
|
||||
Blog
|
||||
----
|
||||
|
||||
Read more detailed announcements, discussions, and more on [The Official Twitter Bootstrap Blog](http://blog.getbootstrap.com).
|
||||
|
||||
|
||||
|
||||
Mailing list
|
||||
------------
|
||||
|
||||
Have a question? Ask on our mailing list!
|
||||
|
||||
twitter-bootstrap@googlegroups.com
|
||||
|
||||
http://groups.google.com/group/twitter-bootstrap
|
||||
|
||||
|
||||
|
||||
IRC
|
||||
---
|
||||
|
||||
Server: irc.freenode.net
|
||||
|
||||
Channel: ##twitter-bootstrap (the double ## is not a typo)
|
||||
|
||||
|
||||
|
||||
Developers
|
||||
----------
|
||||
## Developers
|
||||
|
||||
We have included a makefile with convenience methods for working with the Bootstrap library.
|
||||
|
||||
@@ -89,7 +63,7 @@ $ npm install recess connect uglify-js jshint -g
|
||||
```
|
||||
|
||||
+ **build** - `make`
|
||||
Runs the recess compiler to rebuild the `/less` files and compiles the docs pages. Requires recess and uglify-js. <a href="http://twitter.github.com/bootstrap/less.html#compiling">Read more in our docs »</a>
|
||||
Runs the recess compiler to rebuild the `/less` files and compiles the docs pages. Requires recess and uglify-js. <a href="http://twitter.github.com/bootstrap/extend.html#compiling">Read more in our docs »</a>
|
||||
|
||||
+ **test** - `make test`
|
||||
Runs jshint and qunit tests headlessly in [phantomjs](http://code.google.com/p/phantomjs/) (used for ci). Depends on having phantomjs installed.
|
||||
@@ -99,20 +73,20 @@ This is a convenience method for watching just Less files and automatically buil
|
||||
|
||||
|
||||
|
||||
Contributing
|
||||
------------
|
||||
## Contributing
|
||||
|
||||
Please submit all pull requests against *-wip branches. If your unit test contains javascript patches or features, you must include relevant unit tests. Thanks!
|
||||
Please submit all pull requests against *-wip branches. If your pull request contains JavaScript patches or features, you must include relevant unit tests. All HTML and CSS should conform to the [Code Guide](http://github.com/mdo/code-guide), maintained by [Mark Otto](http://github.com/mdo).
|
||||
|
||||
Thanks!
|
||||
|
||||
|
||||
|
||||
Authors
|
||||
-------
|
||||
## Authors
|
||||
|
||||
**Mark Otto**
|
||||
|
||||
+ http://twitter.com/mdo
|
||||
+ http://github.com/markdotto
|
||||
+ http://github.com/mdo
|
||||
|
||||
**Jacob Thornton**
|
||||
|
||||
@@ -121,8 +95,7 @@ Authors
|
||||
|
||||
|
||||
|
||||
Copyright and license
|
||||
---------------------
|
||||
## Copyright and license
|
||||
|
||||
Copyright 2012 Twitter, Inc.
|
||||
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "bootstrap",
|
||||
"version": "2.2.2",
|
||||
"main": ["./docs/assets/js/bootstrap.js", "./docs/assets/css/bootstrap.css"],
|
||||
"dependencies": {
|
||||
"jquery": "~1.8.0"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"name": "twitter/bootstrap"
|
||||
, "description": "Sleek, intuitive, and powerful front-end framework for faster and easier web development."
|
||||
, "keywords": ["bootstrap", "css"]
|
||||
, "homepage": "http://twitter.github.com/bootstrap/"
|
||||
, "author": "Twitter Inc."
|
||||
, "license": "Apache-2.0"
|
||||
, "target-dir": "twitter/bootstrap"
|
||||
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
/*!
|
||||
* Bootstrap Responsive v2.1.1
|
||||
* Bootstrap Responsive v2.2.2
|
||||
*
|
||||
* Copyright 2012 Twitter, Inc
|
||||
* Licensed under the Apache License v2.0
|
||||
@@ -8,6 +8,10 @@
|
||||
* Designed and built with all the love in the world @twitter by @mdo and @fat.
|
||||
*/
|
||||
|
||||
@-ms-viewport {
|
||||
width: device-width;
|
||||
}
|
||||
|
||||
.clearfix {
|
||||
*zoom: 1;
|
||||
}
|
||||
@@ -215,6 +219,9 @@
|
||||
.row-fluid [class*="span"]:first-child {
|
||||
margin-left: 0;
|
||||
}
|
||||
.row-fluid .controls-row [class*="span"] + [class*="span"] {
|
||||
margin-left: 2.564102564102564%;
|
||||
}
|
||||
.row-fluid .span12 {
|
||||
width: 100%;
|
||||
*width: 99.94680851063829%;
|
||||
@@ -562,6 +569,9 @@
|
||||
.row-fluid [class*="span"]:first-child {
|
||||
margin-left: 0;
|
||||
}
|
||||
.row-fluid .controls-row [class*="span"] + [class*="span"] {
|
||||
margin-left: 2.7624309392265194%;
|
||||
}
|
||||
.row-fluid .span12 {
|
||||
width: 100%;
|
||||
*width: 99.94680851063829%;
|
||||
@@ -814,6 +824,7 @@
|
||||
margin-left: 0;
|
||||
}
|
||||
[class*="span"],
|
||||
.uneditable-input[class*="span"],
|
||||
.row-fluid [class*="span"] {
|
||||
display: block;
|
||||
float: none;
|
||||
@@ -830,6 +841,9 @@
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.row-fluid [class*="offset"]:first-child {
|
||||
margin-left: 0;
|
||||
}
|
||||
.input-large,
|
||||
.input-xlarge,
|
||||
.input-xxlarge,
|
||||
@@ -862,8 +876,11 @@
|
||||
width: auto;
|
||||
margin: 0;
|
||||
}
|
||||
.modal.fade {
|
||||
top: -100px;
|
||||
}
|
||||
.modal.fade.in {
|
||||
top: auto;
|
||||
top: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -895,6 +912,16 @@
|
||||
padding-right: 10px;
|
||||
padding-left: 10px;
|
||||
}
|
||||
.media .pull-left,
|
||||
.media .pull-right {
|
||||
display: block;
|
||||
float: none;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.media-object {
|
||||
margin-right: 0;
|
||||
margin-left: 0;
|
||||
}
|
||||
.modal {
|
||||
top: 10px;
|
||||
right: 10px;
|
||||
@@ -979,6 +1006,10 @@
|
||||
.nav-collapse .dropdown-menu a:hover {
|
||||
background-color: #f2f2f2;
|
||||
}
|
||||
.navbar-inverse .nav-collapse .nav > li > a,
|
||||
.navbar-inverse .nav-collapse .dropdown-menu a {
|
||||
color: #999999;
|
||||
}
|
||||
.navbar-inverse .nav-collapse .nav > li > a:hover,
|
||||
.navbar-inverse .nav-collapse .dropdown-menu a:hover {
|
||||
background-color: #111111;
|
||||
@@ -991,7 +1022,7 @@
|
||||
position: static;
|
||||
top: auto;
|
||||
left: auto;
|
||||
display: block;
|
||||
display: none;
|
||||
float: none;
|
||||
max-width: none;
|
||||
padding: 0;
|
||||
@@ -1005,6 +1036,9 @@
|
||||
-moz-box-shadow: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
.nav-collapse .open > .dropdown-menu {
|
||||
display: block;
|
||||
}
|
||||
.nav-collapse .dropdown-menu:before,
|
||||
.nav-collapse .dropdown-menu:after {
|
||||
display: none;
|
||||
|
||||
@@ -114,7 +114,7 @@ hr.soften {
|
||||
.jumbotron p {
|
||||
font-size: 24px;
|
||||
font-weight: 300;
|
||||
line-height: 30px;
|
||||
line-height: 1.25;
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
|
||||
@@ -133,7 +133,7 @@ hr.soften {
|
||||
|
||||
/* Download button */
|
||||
.masthead .btn {
|
||||
padding: 14px 24px;
|
||||
padding: 19px 24px;
|
||||
font-size: 24px;
|
||||
font-weight: 200;
|
||||
color: #fff; /* redeclare to override the `.jumbotron a` */
|
||||
@@ -177,6 +177,16 @@ hr.soften {
|
||||
background: url(../img/bs-docs-masthead-pattern.png) repeat center center;
|
||||
opacity: .4;
|
||||
}
|
||||
@media
|
||||
only screen and (-webkit-min-device-pixel-ratio: 2),
|
||||
only screen and ( min--moz-device-pixel-ratio: 2),
|
||||
only screen and ( -o-min-device-pixel-ratio: 2/1) {
|
||||
|
||||
.jumbotron:after {
|
||||
background-size: 150px 150px;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/* Masthead (docs home)
|
||||
------------------------- */
|
||||
@@ -275,12 +285,13 @@ hr.soften {
|
||||
margin-bottom: 40px;
|
||||
font-size: 20px;
|
||||
font-weight: 300;
|
||||
line-height: 25px;
|
||||
line-height: 1.25;
|
||||
color: #999;
|
||||
}
|
||||
.marketing img {
|
||||
.marketing-img {
|
||||
display: block;
|
||||
margin: 0 auto 30px;
|
||||
max-height: 145px;
|
||||
}
|
||||
|
||||
|
||||
@@ -289,7 +300,8 @@ hr.soften {
|
||||
-------------------------------------------------- */
|
||||
|
||||
.footer {
|
||||
padding: 70px 0;
|
||||
text-align: center;
|
||||
padding: 30px 0;
|
||||
margin-top: 70px;
|
||||
border-top: 1px solid #e5e5e5;
|
||||
background-color: #f5f5f5;
|
||||
@@ -303,7 +315,10 @@ hr.soften {
|
||||
}
|
||||
.footer-links li {
|
||||
display: inline;
|
||||
margin-right: 10px;
|
||||
padding: 0 2px;
|
||||
}
|
||||
.footer-links li:first-child {
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -332,8 +347,14 @@ hr.soften {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.show-grid .show-grid [class*="span"] {
|
||||
margin-top: 5px;
|
||||
}
|
||||
.show-grid [class*="span"] [class*="span"] {
|
||||
background-color: #ccc;
|
||||
}
|
||||
.show-grid [class*="span"] [class*="span"] [class*="span"] {
|
||||
background-color: #999;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -666,6 +687,21 @@ form.bs-docs-example {
|
||||
margin: 20px;
|
||||
}
|
||||
|
||||
/* Dropdowns */
|
||||
.bs-docs-example-submenus {
|
||||
min-height: 180px;
|
||||
}
|
||||
.bs-docs-example-submenus > .pull-left + .pull-left {
|
||||
margin-left: 20px;
|
||||
}
|
||||
.bs-docs-example-submenus .dropup > .dropdown-menu,
|
||||
.bs-docs-example-submenus .dropdown > .dropdown-menu {
|
||||
display: block;
|
||||
position: static;
|
||||
margin-bottom: 5px;
|
||||
*width: 180px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Responsive docs
|
||||
@@ -754,7 +790,7 @@ form.bs-docs-example {
|
||||
}
|
||||
.bs-docs-sidenav > li > a {
|
||||
display: block;
|
||||
*width: 190px;
|
||||
width: 190px \9;
|
||||
margin: 0 0 -1px;
|
||||
padding: 8px 14px;
|
||||
border: 1px solid #e5e5e5;
|
||||
@@ -821,6 +857,9 @@ form.bs-docs-example {
|
||||
.bs-docs-sidenav {
|
||||
width: 258px;
|
||||
}
|
||||
.bs-docs-sidenav > li > a {
|
||||
width: 230px \9; /* Override the previous IE8-9 hack */
|
||||
}
|
||||
}
|
||||
|
||||
/* Desktop
|
||||
@@ -843,6 +882,7 @@ form.bs-docs-example {
|
||||
/* When affixed, space properly */
|
||||
.bs-docs-sidenav {
|
||||
top: 0;
|
||||
width: 218px;
|
||||
margin-top: 30px;
|
||||
margin-right: 0;
|
||||
}
|
||||
@@ -850,7 +890,7 @@ form.bs-docs-example {
|
||||
|
||||
/* Tablet to desktop
|
||||
------------------------- */
|
||||
@media (min-width: 768px) and (max-width: 980px) {
|
||||
@media (min-width: 768px) and (max-width: 979px) {
|
||||
/* Remove any padding from the body */
|
||||
body {
|
||||
padding-top: 0;
|
||||
@@ -941,11 +981,11 @@ form.bs-docs-example {
|
||||
|
||||
/* Downsize the jumbotrons */
|
||||
.jumbotron h1 {
|
||||
font-size: 60px;
|
||||
font-size: 45px;
|
||||
}
|
||||
.jumbotron p,
|
||||
.jumbotron .btn {
|
||||
font-size: 20px;
|
||||
font-size: 18px;
|
||||
}
|
||||
.jumbotron .btn {
|
||||
display: block;
|
||||
@@ -960,7 +1000,10 @@ form.bs-docs-example {
|
||||
|
||||
/* Marketing on home */
|
||||
.marketing h1 {
|
||||
font-size: 40px;
|
||||
font-size: 30px;
|
||||
}
|
||||
.marketing-byline {
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
/* center example sites */
|
||||
@@ -985,7 +1028,26 @@ form.bs-docs-example {
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
/* Modal example */
|
||||
/* Examples: dropdowns */
|
||||
.bs-docs-example-submenus > .pull-left {
|
||||
float: none;
|
||||
clear: both;
|
||||
}
|
||||
.bs-docs-example-submenus > .pull-left,
|
||||
.bs-docs-example-submenus > .pull-left + .pull-left {
|
||||
margin-left: 0;
|
||||
}
|
||||
.bs-docs-example-submenus p {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.bs-docs-example-submenus .dropup > .dropdown-menu,
|
||||
.bs-docs-example-submenus .dropdown > .dropdown-menu {
|
||||
margin-bottom: 10px;
|
||||
float: none;
|
||||
max-width: 180px;
|
||||
}
|
||||
|
||||
/* Examples: modal */
|
||||
.modal-example .modal {
|
||||
position: relative;
|
||||
top: auto;
|
||||
@@ -994,8 +1056,9 @@ form.bs-docs-example {
|
||||
left: auto;
|
||||
}
|
||||
|
||||
/* Unfloat the back to top in footer to prevent odd text wrapping */
|
||||
.footer .pull-right {
|
||||
float: none;
|
||||
/* Tighten up footer */
|
||||
.footer {
|
||||
padding-top: 20px;
|
||||
padding-bottom: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
|
After Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 4.9 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 30 KiB |
|
After Width: | Height: | Size: 61 KiB |
|
After Width: | Height: | Size: 133 KiB |
|
After Width: | Height: | Size: 71 KiB |
|
After Width: | Height: | Size: 75 KiB |
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 47 KiB |
|
After Width: | Height: | Size: 53 KiB |
|
After Width: | Height: | Size: 21 KiB |
|
After Width: | Height: | Size: 4.1 KiB |
|
After Width: | Height: | Size: 9.5 KiB |
|
After Width: | Height: | Size: 54 KiB |
|
After Width: | Height: | Size: 172 KiB |
|
After Width: | Height: | Size: 205 KiB |
|
After Width: | Height: | Size: 81 KiB |
|
After Width: | Height: | Size: 134 KiB |
|
After Width: | Height: | Size: 134 KiB |
@@ -17,7 +17,7 @@ To target a specific plugin, just include the plugins name as a namespace along
|
||||
|
||||
---
|
||||
|
||||
### PROGRAMATIC API
|
||||
### PROGRAMMATIC API
|
||||
|
||||
We also believe you should be able to use all plugins provided by Bootstrap purely through the JS API.
|
||||
|
||||
|
||||
@@ -89,7 +89,7 @@
|
||||
})
|
||||
|
||||
// request built javascript
|
||||
$('.download-btn').on('click', function () {
|
||||
$('.download-btn .btn').on('click', function () {
|
||||
|
||||
var css = $("#components.download input:checked")
|
||||
.map(function () { return this.value })
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ==========================================================
|
||||
* bootstrap-affix.js v2.1.1
|
||||
* bootstrap-affix.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#affix
|
||||
* ==========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -28,7 +28,9 @@
|
||||
|
||||
var Affix = function (element, options) {
|
||||
this.options = $.extend({}, $.fn.affix.defaults, options)
|
||||
this.$window = $(window).on('scroll.affix.data-api', $.proxy(this.checkPosition, this))
|
||||
this.$window = $(window)
|
||||
.on('scroll.affix.data-api', $.proxy(this.checkPosition, this))
|
||||
.on('click.affix.data-api', $.proxy(function () { setTimeout($.proxy(this.checkPosition, this), 1) }, this))
|
||||
this.$element = $(element)
|
||||
this.checkPosition()
|
||||
}
|
||||
@@ -66,6 +68,8 @@
|
||||
/* AFFIX PLUGIN DEFINITION
|
||||
* ======================= */
|
||||
|
||||
var old = $.fn.affix
|
||||
|
||||
$.fn.affix = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -83,6 +87,15 @@
|
||||
}
|
||||
|
||||
|
||||
/* AFFIX NO CONFLICT
|
||||
* ================= */
|
||||
|
||||
$.fn.affix.noConflict = function () {
|
||||
$.fn.affix = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* AFFIX DATA-API
|
||||
* ============== */
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ==========================================================
|
||||
* bootstrap-alert.js v2.1.1
|
||||
* bootstrap-alert.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#alerts
|
||||
* ==========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -68,6 +68,8 @@
|
||||
/* ALERT PLUGIN DEFINITION
|
||||
* ======================= */
|
||||
|
||||
var old = $.fn.alert
|
||||
|
||||
$.fn.alert = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -80,11 +82,18 @@
|
||||
$.fn.alert.Constructor = Alert
|
||||
|
||||
|
||||
/* ALERT NO CONFLICT
|
||||
* ================= */
|
||||
|
||||
$.fn.alert.noConflict = function () {
|
||||
$.fn.alert = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* ALERT DATA-API
|
||||
* ============== */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.alert.data-api', dismiss, Alert.prototype.close)
|
||||
})
|
||||
$(document).on('click.alert.data-api', dismiss, Alert.prototype.close)
|
||||
|
||||
}(window.jQuery);
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ============================================================
|
||||
* bootstrap-button.js v2.1.1
|
||||
* bootstrap-button.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#buttons
|
||||
* ============================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -64,6 +64,8 @@
|
||||
/* BUTTON PLUGIN DEFINITION
|
||||
* ======================== */
|
||||
|
||||
var old = $.fn.button
|
||||
|
||||
$.fn.button = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -82,15 +84,22 @@
|
||||
$.fn.button.Constructor = Button
|
||||
|
||||
|
||||
/* BUTTON NO CONFLICT
|
||||
* ================== */
|
||||
|
||||
$.fn.button.noConflict = function () {
|
||||
$.fn.button = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* BUTTON DATA-API
|
||||
* =============== */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.button.data-api', '[data-toggle^=button]', function ( e ) {
|
||||
var $btn = $(e.target)
|
||||
if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
|
||||
$btn.button('toggle')
|
||||
})
|
||||
$(document).on('click.button.data-api', '[data-toggle^=button]', function (e) {
|
||||
var $btn = $(e.target)
|
||||
if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
|
||||
$btn.button('toggle')
|
||||
})
|
||||
|
||||
}(window.jQuery);
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ==========================================================
|
||||
* bootstrap-carousel.js v2.1.1
|
||||
* bootstrap-carousel.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#carousel
|
||||
* ==========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -29,7 +29,6 @@
|
||||
var Carousel = function (element, options) {
|
||||
this.$element = $(element)
|
||||
this.options = options
|
||||
this.options.slide && this.slide(this.options.slide)
|
||||
this.options.pause == 'hover' && this.$element
|
||||
.on('mouseenter', $.proxy(this.pause, this))
|
||||
.on('mouseleave', $.proxy(this.cycle, this))
|
||||
@@ -94,9 +93,7 @@
|
||||
, direction = type == 'next' ? 'left' : 'right'
|
||||
, fallback = type == 'next' ? 'first' : 'last'
|
||||
, that = this
|
||||
, e = $.Event('slide', {
|
||||
relatedTarget: $next[0]
|
||||
})
|
||||
, e
|
||||
|
||||
this.sliding = true
|
||||
|
||||
@@ -104,6 +101,10 @@
|
||||
|
||||
$next = $next.length ? $next : this.$element.find('.item')[fallback]()
|
||||
|
||||
e = $.Event('slide', {
|
||||
relatedTarget: $next[0]
|
||||
})
|
||||
|
||||
if ($next.hasClass('active')) return
|
||||
|
||||
if ($.support.transition && this.$element.hasClass('slide')) {
|
||||
@@ -139,6 +140,8 @@
|
||||
/* CAROUSEL PLUGIN DEFINITION
|
||||
* ========================== */
|
||||
|
||||
var old = $.fn.carousel
|
||||
|
||||
$.fn.carousel = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -160,17 +163,23 @@
|
||||
$.fn.carousel.Constructor = Carousel
|
||||
|
||||
|
||||
/* CAROUSEL NO CONFLICT
|
||||
* ==================== */
|
||||
|
||||
$.fn.carousel.noConflict = function () {
|
||||
$.fn.carousel = old
|
||||
return this
|
||||
}
|
||||
|
||||
/* CAROUSEL DATA-API
|
||||
* ================= */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.carousel.data-api', '[data-slide]', function ( e ) {
|
||||
var $this = $(this), href
|
||||
, $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
|
||||
, options = !$target.data('modal') && $.extend({}, $target.data(), $this.data())
|
||||
$target.carousel(options)
|
||||
e.preventDefault()
|
||||
})
|
||||
$(document).on('click.carousel.data-api', '[data-slide]', function (e) {
|
||||
var $this = $(this), href
|
||||
, $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
|
||||
, options = $.extend({}, $target.data(), $this.data())
|
||||
$target.carousel(options)
|
||||
e.preventDefault()
|
||||
})
|
||||
|
||||
}(window.jQuery);
|
||||
@@ -1,5 +1,5 @@
|
||||
/* =============================================================
|
||||
* bootstrap-collapse.js v2.1.1
|
||||
* bootstrap-collapse.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#collapse
|
||||
* =============================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -120,8 +120,10 @@
|
||||
}
|
||||
|
||||
|
||||
/* COLLAPSIBLE PLUGIN DEFINITION
|
||||
* ============================== */
|
||||
/* COLLAPSE PLUGIN DEFINITION
|
||||
* ========================== */
|
||||
|
||||
var old = $.fn.collapse
|
||||
|
||||
$.fn.collapse = function (option) {
|
||||
return this.each(function () {
|
||||
@@ -140,19 +142,26 @@
|
||||
$.fn.collapse.Constructor = Collapse
|
||||
|
||||
|
||||
/* COLLAPSIBLE DATA-API
|
||||
/* COLLAPSE NO CONFLICT
|
||||
* ==================== */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.collapse.data-api', '[data-toggle=collapse]', function (e) {
|
||||
var $this = $(this), href
|
||||
, target = $this.attr('data-target')
|
||||
|| e.preventDefault()
|
||||
|| (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7
|
||||
, option = $(target).data('collapse') ? 'toggle' : $this.data()
|
||||
$this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
|
||||
$(target).collapse(option)
|
||||
})
|
||||
$.fn.collapse.noConflict = function () {
|
||||
$.fn.collapse = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* COLLAPSE DATA-API
|
||||
* ================= */
|
||||
|
||||
$(document).on('click.collapse.data-api', '[data-toggle=collapse]', function (e) {
|
||||
var $this = $(this), href
|
||||
, target = $this.attr('data-target')
|
||||
|| e.preventDefault()
|
||||
|| (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7
|
||||
, option = $(target).data('collapse') ? 'toggle' : $this.data()
|
||||
$this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
|
||||
$(target).collapse(option)
|
||||
})
|
||||
|
||||
}(window.jQuery);
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ============================================================
|
||||
* bootstrap-dropdown.js v2.1.1
|
||||
* bootstrap-dropdown.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#dropdowns
|
||||
* ============================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -53,9 +53,10 @@
|
||||
|
||||
if (!isActive) {
|
||||
$parent.toggleClass('open')
|
||||
$this.focus()
|
||||
}
|
||||
|
||||
$this.focus()
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
@@ -82,7 +83,7 @@
|
||||
|
||||
if (!isActive || (isActive && e.keyCode == 27)) return $this.click()
|
||||
|
||||
$items = $('[role=menu] li:not(.divider) a', $parent)
|
||||
$items = $('[role=menu] li:not(.divider):visible a', $parent)
|
||||
|
||||
if (!$items.length) return
|
||||
|
||||
@@ -100,8 +101,9 @@
|
||||
}
|
||||
|
||||
function clearMenus() {
|
||||
getParent($(toggle))
|
||||
.removeClass('open')
|
||||
$(toggle).each(function () {
|
||||
getParent($(this)).removeClass('open')
|
||||
})
|
||||
}
|
||||
|
||||
function getParent($this) {
|
||||
@@ -123,6 +125,8 @@
|
||||
/* DROPDOWN PLUGIN DEFINITION
|
||||
* ========================== */
|
||||
|
||||
var old = $.fn.dropdown
|
||||
|
||||
$.fn.dropdown = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -135,16 +139,23 @@
|
||||
$.fn.dropdown.Constructor = Dropdown
|
||||
|
||||
|
||||
/* DROPDOWN NO CONFLICT
|
||||
* ==================== */
|
||||
|
||||
$.fn.dropdown.noConflict = function () {
|
||||
$.fn.dropdown = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* APPLY TO STANDARD DROPDOWN ELEMENTS
|
||||
* =================================== */
|
||||
|
||||
$(function () {
|
||||
$('html')
|
||||
.on('click.dropdown.data-api touchstart.dropdown.data-api', clearMenus)
|
||||
$('body')
|
||||
.on('click.dropdown touchstart.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
|
||||
.on('click.dropdown.data-api touchstart.dropdown.data-api' , toggle, Dropdown.prototype.toggle)
|
||||
.on('keydown.dropdown.data-api touchstart.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)
|
||||
})
|
||||
$(document)
|
||||
.on('click.dropdown.data-api touchstart.dropdown.data-api', clearMenus)
|
||||
.on('click.dropdown touchstart.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
|
||||
.on('touchstart.dropdown.data-api', '.dropdown-menu', function (e) { e.stopPropagation() })
|
||||
.on('click.dropdown.data-api touchstart.dropdown.data-api' , toggle, Dropdown.prototype.toggle)
|
||||
.on('keydown.dropdown.data-api touchstart.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)
|
||||
|
||||
}(window.jQuery);
|
||||
@@ -1,5 +1,5 @@
|
||||
/* =========================================================
|
||||
* bootstrap-modal.js v2.1.1
|
||||
* bootstrap-modal.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#modals
|
||||
* =========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -49,8 +49,6 @@
|
||||
|
||||
if (this.isShown || e.isDefaultPrevented()) return
|
||||
|
||||
$('body').addClass('modal-open')
|
||||
|
||||
this.isShown = true
|
||||
|
||||
this.escape()
|
||||
@@ -72,13 +70,12 @@
|
||||
that.$element
|
||||
.addClass('in')
|
||||
.attr('aria-hidden', false)
|
||||
.focus()
|
||||
|
||||
that.enforceFocus()
|
||||
|
||||
transition ?
|
||||
that.$element.one($.support.transition.end, function () { that.$element.trigger('shown') }) :
|
||||
that.$element.trigger('shown')
|
||||
that.$element.one($.support.transition.end, function () { that.$element.focus().trigger('shown') }) :
|
||||
that.$element.focus().trigger('shown')
|
||||
|
||||
})
|
||||
}
|
||||
@@ -96,8 +93,6 @@
|
||||
|
||||
this.isShown = false
|
||||
|
||||
$('body').removeClass('modal-open')
|
||||
|
||||
this.escape()
|
||||
|
||||
$(document).off('focusin.modal')
|
||||
@@ -167,9 +162,11 @@
|
||||
this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
|
||||
.appendTo(document.body)
|
||||
|
||||
if (this.options.backdrop != 'static') {
|
||||
this.$backdrop.click($.proxy(this.hide, this))
|
||||
}
|
||||
this.$backdrop.click(
|
||||
this.options.backdrop == 'static' ?
|
||||
$.proxy(this.$element[0].focus, this.$element[0])
|
||||
: $.proxy(this.hide, this)
|
||||
)
|
||||
|
||||
if (doAnimate) this.$backdrop[0].offsetWidth // force reflow
|
||||
|
||||
@@ -196,6 +193,8 @@
|
||||
/* MODAL PLUGIN DEFINITION
|
||||
* ======================= */
|
||||
|
||||
var old = $.fn.modal
|
||||
|
||||
$.fn.modal = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -216,24 +215,31 @@
|
||||
$.fn.modal.Constructor = Modal
|
||||
|
||||
|
||||
/* MODAL NO CONFLICT
|
||||
* ================= */
|
||||
|
||||
$.fn.modal.noConflict = function () {
|
||||
$.fn.modal = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* MODAL DATA-API
|
||||
* ============== */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.modal.data-api', '[data-toggle="modal"]', function ( e ) {
|
||||
var $this = $(this)
|
||||
, href = $this.attr('href')
|
||||
, $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for ie7
|
||||
, option = $target.data('modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())
|
||||
$(document).on('click.modal.data-api', '[data-toggle="modal"]', function (e) {
|
||||
var $this = $(this)
|
||||
, href = $this.attr('href')
|
||||
, $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for ie7
|
||||
, option = $target.data('modal') ? 'toggle' : $.extend({ remote:!/#/.test(href) && href }, $target.data(), $this.data())
|
||||
|
||||
e.preventDefault()
|
||||
e.preventDefault()
|
||||
|
||||
$target
|
||||
.modal(option)
|
||||
.one('hide', function () {
|
||||
$this.focus()
|
||||
})
|
||||
})
|
||||
$target
|
||||
.modal(option)
|
||||
.one('hide', function () {
|
||||
$this.focus()
|
||||
})
|
||||
})
|
||||
|
||||
}(window.jQuery);
|
||||
}(window.jQuery);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ===========================================================
|
||||
* bootstrap-popover.js v2.1.1
|
||||
* bootstrap-popover.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#popovers
|
||||
* ===========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -44,7 +44,7 @@
|
||||
, content = this.getContent()
|
||||
|
||||
$tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)
|
||||
$tip.find('.popover-content > *')[this.options.html ? 'html' : 'text'](content)
|
||||
$tip.find('.popover-content')[this.options.html ? 'html' : 'text'](content)
|
||||
|
||||
$tip.removeClass('fade top bottom left right in')
|
||||
}
|
||||
@@ -81,6 +81,8 @@
|
||||
/* POPOVER PLUGIN DEFINITION
|
||||
* ======================= */
|
||||
|
||||
var old = $.fn.popover
|
||||
|
||||
$.fn.popover = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -97,7 +99,16 @@
|
||||
placement: 'right'
|
||||
, trigger: 'click'
|
||||
, content: ''
|
||||
, template: '<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'
|
||||
, template: '<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"></div></div></div>'
|
||||
})
|
||||
|
||||
|
||||
/* POPOVER NO CONFLICT
|
||||
* =================== */
|
||||
|
||||
$.fn.popover.noConflict = function () {
|
||||
$.fn.popover = old
|
||||
return this
|
||||
}
|
||||
|
||||
}(window.jQuery);
|
||||
@@ -1,5 +1,5 @@
|
||||
/* =============================================================
|
||||
* bootstrap-scrollspy.js v2.1.1
|
||||
* bootstrap-scrollspy.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#scrollspy
|
||||
* =============================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -59,7 +59,7 @@
|
||||
, $href = /^#\w/.test(href) && $(href)
|
||||
return ( $href
|
||||
&& $href.length
|
||||
&& [[ $href.position().top, href ]] ) || null
|
||||
&& [[ $href.position().top + self.$scrollElement.scrollTop(), href ]] ) || null
|
||||
})
|
||||
.sort(function (a, b) { return a[0] - b[0] })
|
||||
.each(function () {
|
||||
@@ -121,6 +121,8 @@
|
||||
/* SCROLLSPY PLUGIN DEFINITION
|
||||
* =========================== */
|
||||
|
||||
var old = $.fn.scrollspy
|
||||
|
||||
$.fn.scrollspy = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -138,6 +140,15 @@
|
||||
}
|
||||
|
||||
|
||||
/* SCROLLSPY NO CONFLICT
|
||||
* ===================== */
|
||||
|
||||
$.fn.scrollspy.noConflict = function () {
|
||||
$.fn.scrollspy = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* SCROLLSPY DATA-API
|
||||
* ================== */
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ========================================================
|
||||
* bootstrap-tab.js v2.1.1
|
||||
* bootstrap-tab.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#tabs
|
||||
* ========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -49,7 +49,7 @@
|
||||
|
||||
if ( $this.parent('li').hasClass('active') ) return
|
||||
|
||||
previous = $ul.find('.active a').last()[0]
|
||||
previous = $ul.find('.active:last a')[0]
|
||||
|
||||
e = $.Event('show', {
|
||||
relatedTarget: previous
|
||||
@@ -110,6 +110,8 @@
|
||||
/* TAB PLUGIN DEFINITION
|
||||
* ===================== */
|
||||
|
||||
var old = $.fn.tab
|
||||
|
||||
$.fn.tab = function ( option ) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -122,14 +124,21 @@
|
||||
$.fn.tab.Constructor = Tab
|
||||
|
||||
|
||||
/* TAB NO CONFLICT
|
||||
* =============== */
|
||||
|
||||
$.fn.tab.noConflict = function () {
|
||||
$.fn.tab = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* TAB DATA-API
|
||||
* ============ */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function (e) {
|
||||
e.preventDefault()
|
||||
$(this).tab('show')
|
||||
})
|
||||
$(document).on('click.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function (e) {
|
||||
e.preventDefault()
|
||||
$(this).tab('show')
|
||||
})
|
||||
|
||||
}(window.jQuery);
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ===========================================================
|
||||
* bootstrap-tooltip.js v2.1.1
|
||||
* bootstrap-tooltip.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#tooltips
|
||||
* Inspired by the original jQuery.tipsy by Jason Frame
|
||||
* ===========================================================
|
||||
@@ -119,9 +119,9 @@
|
||||
inside = /in/.test(placement)
|
||||
|
||||
$tip
|
||||
.remove()
|
||||
.detach()
|
||||
.css({ top: 0, left: 0, display: 'block' })
|
||||
.appendTo(inside ? this.$element : document.body)
|
||||
.insertAfter(this.$element)
|
||||
|
||||
pos = this.getPosition(inside)
|
||||
|
||||
@@ -144,7 +144,7 @@
|
||||
}
|
||||
|
||||
$tip
|
||||
.css(tp)
|
||||
.offset(tp)
|
||||
.addClass(placement)
|
||||
.addClass('in')
|
||||
}
|
||||
@@ -166,18 +166,18 @@
|
||||
|
||||
function removeWithAnimation() {
|
||||
var timeout = setTimeout(function () {
|
||||
$tip.off($.support.transition.end).remove()
|
||||
$tip.off($.support.transition.end).detach()
|
||||
}, 500)
|
||||
|
||||
$tip.one($.support.transition.end, function () {
|
||||
clearTimeout(timeout)
|
||||
$tip.remove()
|
||||
$tip.detach()
|
||||
})
|
||||
}
|
||||
|
||||
$.support.transition && this.$tip.hasClass('fade') ?
|
||||
removeWithAnimation() :
|
||||
$tip.remove()
|
||||
$tip.detach()
|
||||
|
||||
return this
|
||||
}
|
||||
@@ -235,8 +235,9 @@
|
||||
this.enabled = !this.enabled
|
||||
}
|
||||
|
||||
, toggle: function () {
|
||||
this[this.tip().hasClass('in') ? 'hide' : 'show']()
|
||||
, toggle: function (e) {
|
||||
var self = $(e.currentTarget)[this.type](this._options).data(this.type)
|
||||
self[self.tip().hasClass('in') ? 'hide' : 'show']()
|
||||
}
|
||||
|
||||
, destroy: function () {
|
||||
@@ -249,6 +250,8 @@
|
||||
/* TOOLTIP PLUGIN DEFINITION
|
||||
* ========================= */
|
||||
|
||||
var old = $.fn.tooltip
|
||||
|
||||
$.fn.tooltip = function ( option ) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -269,7 +272,16 @@
|
||||
, trigger: 'hover'
|
||||
, title: ''
|
||||
, delay: 0
|
||||
, html: true
|
||||
, html: false
|
||||
}
|
||||
|
||||
}(window.jQuery);
|
||||
|
||||
/* TOOLTIP NO CONFLICT
|
||||
* =================== */
|
||||
|
||||
$.fn.tooltip.noConflict = function () {
|
||||
$.fn.tooltip = old
|
||||
return this
|
||||
}
|
||||
|
||||
}(window.jQuery);
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ===================================================
|
||||
* bootstrap-transition.js v2.1.1
|
||||
* bootstrap-transition.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#transitions
|
||||
* ===================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -20,14 +20,14 @@
|
||||
|
||||
!function ($) {
|
||||
|
||||
"use strict"; // jshint ;_;
|
||||
|
||||
|
||||
/* CSS TRANSITION SUPPORT (http://www.modernizr.com/)
|
||||
* ======================================================= */
|
||||
|
||||
$(function () {
|
||||
|
||||
"use strict"; // jshint ;_;
|
||||
|
||||
|
||||
/* CSS TRANSITION SUPPORT (http://www.modernizr.com/)
|
||||
* ======================================================= */
|
||||
|
||||
$.support.transition = (function () {
|
||||
|
||||
var transitionEnd = (function () {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* =============================================================
|
||||
* bootstrap-typeahead.js v2.1.1
|
||||
* bootstrap-typeahead.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#typeahead
|
||||
* =============================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -33,8 +33,8 @@
|
||||
this.sorter = this.options.sorter || this.sorter
|
||||
this.highlighter = this.options.highlighter || this.highlighter
|
||||
this.updater = this.options.updater || this.updater
|
||||
this.$menu = $(this.options.menu).appendTo('body')
|
||||
this.source = this.options.source
|
||||
this.$menu = $(this.options.menu)
|
||||
this.shown = false
|
||||
this.listen()
|
||||
}
|
||||
@@ -56,16 +56,18 @@
|
||||
}
|
||||
|
||||
, show: function () {
|
||||
var pos = $.extend({}, this.$element.offset(), {
|
||||
var pos = $.extend({}, this.$element.position(), {
|
||||
height: this.$element[0].offsetHeight
|
||||
})
|
||||
|
||||
this.$menu.css({
|
||||
top: pos.top + pos.height
|
||||
, left: pos.left
|
||||
})
|
||||
this.$menu
|
||||
.insertAfter(this.$element)
|
||||
.css({
|
||||
top: pos.top + pos.height
|
||||
, left: pos.left
|
||||
})
|
||||
.show()
|
||||
|
||||
this.$menu.show()
|
||||
this.shown = true
|
||||
return this
|
||||
}
|
||||
@@ -174,7 +176,7 @@
|
||||
.on('keypress', $.proxy(this.keypress, this))
|
||||
.on('keyup', $.proxy(this.keyup, this))
|
||||
|
||||
if ($.browser.chrome || $.browser.webkit || $.browser.msie) {
|
||||
if (this.eventSupported('keydown')) {
|
||||
this.$element.on('keydown', $.proxy(this.keydown, this))
|
||||
}
|
||||
|
||||
@@ -183,6 +185,15 @@
|
||||
.on('mouseenter', 'li', $.proxy(this.mouseenter, this))
|
||||
}
|
||||
|
||||
, eventSupported: function(eventName) {
|
||||
var isSupported = eventName in this.$element
|
||||
if (!isSupported) {
|
||||
this.$element.setAttribute(eventName, 'return;')
|
||||
isSupported = typeof this.$element[eventName] === 'function'
|
||||
}
|
||||
return isSupported
|
||||
}
|
||||
|
||||
, move: function (e) {
|
||||
if (!this.shown) return
|
||||
|
||||
@@ -208,7 +219,7 @@
|
||||
}
|
||||
|
||||
, keydown: function (e) {
|
||||
this.suppressKeyPressRepeat = !~$.inArray(e.keyCode, [40,38,9,13,27])
|
||||
this.suppressKeyPressRepeat = ~$.inArray(e.keyCode, [40,38,9,13,27])
|
||||
this.move(e)
|
||||
}
|
||||
|
||||
@@ -221,6 +232,9 @@
|
||||
switch(e.keyCode) {
|
||||
case 40: // down arrow
|
||||
case 38: // up arrow
|
||||
case 16: // shift
|
||||
case 17: // ctrl
|
||||
case 18: // alt
|
||||
break
|
||||
|
||||
case 9: // tab
|
||||
@@ -264,6 +278,8 @@
|
||||
/* TYPEAHEAD PLUGIN DEFINITION
|
||||
* =========================== */
|
||||
|
||||
var old = $.fn.typeahead
|
||||
|
||||
$.fn.typeahead = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -285,16 +301,23 @@
|
||||
$.fn.typeahead.Constructor = Typeahead
|
||||
|
||||
|
||||
/* TYPEAHEAD DATA-API
|
||||
/* TYPEAHEAD NO CONFLICT
|
||||
* =================== */
|
||||
|
||||
$.fn.typeahead.noConflict = function () {
|
||||
$.fn.typeahead = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* TYPEAHEAD DATA-API
|
||||
* ================== */
|
||||
|
||||
$(function () {
|
||||
$('body').on('focus.typeahead.data-api', '[data-provide="typeahead"]', function (e) {
|
||||
var $this = $(this)
|
||||
if ($this.data('typeahead')) return
|
||||
e.preventDefault()
|
||||
$this.typeahead($this.data())
|
||||
})
|
||||
$(document).on('focus.typeahead.data-api', '[data-provide="typeahead"]', function (e) {
|
||||
var $this = $(this)
|
||||
if ($this.data('typeahead')) return
|
||||
e.preventDefault()
|
||||
$this.typeahead($this.data())
|
||||
})
|
||||
|
||||
}(window.jQuery);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ===================================================
|
||||
* bootstrap-transition.js v2.1.1
|
||||
* bootstrap-transition.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#transitions
|
||||
* ===================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -20,14 +20,14 @@
|
||||
|
||||
!function ($) {
|
||||
|
||||
"use strict"; // jshint ;_;
|
||||
|
||||
|
||||
/* CSS TRANSITION SUPPORT (http://www.modernizr.com/)
|
||||
* ======================================================= */
|
||||
|
||||
$(function () {
|
||||
|
||||
"use strict"; // jshint ;_;
|
||||
|
||||
|
||||
/* CSS TRANSITION SUPPORT (http://www.modernizr.com/)
|
||||
* ======================================================= */
|
||||
|
||||
$.support.transition = (function () {
|
||||
|
||||
var transitionEnd = (function () {
|
||||
@@ -58,7 +58,7 @@
|
||||
})
|
||||
|
||||
}(window.jQuery);/* ==========================================================
|
||||
* bootstrap-alert.js v2.1.1
|
||||
* bootstrap-alert.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#alerts
|
||||
* ==========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -127,6 +127,8 @@
|
||||
/* ALERT PLUGIN DEFINITION
|
||||
* ======================= */
|
||||
|
||||
var old = $.fn.alert
|
||||
|
||||
$.fn.alert = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -139,15 +141,22 @@
|
||||
$.fn.alert.Constructor = Alert
|
||||
|
||||
|
||||
/* ALERT NO CONFLICT
|
||||
* ================= */
|
||||
|
||||
$.fn.alert.noConflict = function () {
|
||||
$.fn.alert = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* ALERT DATA-API
|
||||
* ============== */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.alert.data-api', dismiss, Alert.prototype.close)
|
||||
})
|
||||
$(document).on('click.alert.data-api', dismiss, Alert.prototype.close)
|
||||
|
||||
}(window.jQuery);/* ============================================================
|
||||
* bootstrap-button.js v2.1.1
|
||||
* bootstrap-button.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#buttons
|
||||
* ============================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -212,6 +221,8 @@
|
||||
/* BUTTON PLUGIN DEFINITION
|
||||
* ======================== */
|
||||
|
||||
var old = $.fn.button
|
||||
|
||||
$.fn.button = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -230,19 +241,26 @@
|
||||
$.fn.button.Constructor = Button
|
||||
|
||||
|
||||
/* BUTTON NO CONFLICT
|
||||
* ================== */
|
||||
|
||||
$.fn.button.noConflict = function () {
|
||||
$.fn.button = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* BUTTON DATA-API
|
||||
* =============== */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.button.data-api', '[data-toggle^=button]', function ( e ) {
|
||||
var $btn = $(e.target)
|
||||
if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
|
||||
$btn.button('toggle')
|
||||
})
|
||||
$(document).on('click.button.data-api', '[data-toggle^=button]', function (e) {
|
||||
var $btn = $(e.target)
|
||||
if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
|
||||
$btn.button('toggle')
|
||||
})
|
||||
|
||||
}(window.jQuery);/* ==========================================================
|
||||
* bootstrap-carousel.js v2.1.1
|
||||
* bootstrap-carousel.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#carousel
|
||||
* ==========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -272,7 +290,6 @@
|
||||
var Carousel = function (element, options) {
|
||||
this.$element = $(element)
|
||||
this.options = options
|
||||
this.options.slide && this.slide(this.options.slide)
|
||||
this.options.pause == 'hover' && this.$element
|
||||
.on('mouseenter', $.proxy(this.pause, this))
|
||||
.on('mouseleave', $.proxy(this.cycle, this))
|
||||
@@ -337,9 +354,7 @@
|
||||
, direction = type == 'next' ? 'left' : 'right'
|
||||
, fallback = type == 'next' ? 'first' : 'last'
|
||||
, that = this
|
||||
, e = $.Event('slide', {
|
||||
relatedTarget: $next[0]
|
||||
})
|
||||
, e
|
||||
|
||||
this.sliding = true
|
||||
|
||||
@@ -347,6 +362,10 @@
|
||||
|
||||
$next = $next.length ? $next : this.$element.find('.item')[fallback]()
|
||||
|
||||
e = $.Event('slide', {
|
||||
relatedTarget: $next[0]
|
||||
})
|
||||
|
||||
if ($next.hasClass('active')) return
|
||||
|
||||
if ($.support.transition && this.$element.hasClass('slide')) {
|
||||
@@ -382,6 +401,8 @@
|
||||
/* CAROUSEL PLUGIN DEFINITION
|
||||
* ========================== */
|
||||
|
||||
var old = $.fn.carousel
|
||||
|
||||
$.fn.carousel = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -403,21 +424,27 @@
|
||||
$.fn.carousel.Constructor = Carousel
|
||||
|
||||
|
||||
/* CAROUSEL NO CONFLICT
|
||||
* ==================== */
|
||||
|
||||
$.fn.carousel.noConflict = function () {
|
||||
$.fn.carousel = old
|
||||
return this
|
||||
}
|
||||
|
||||
/* CAROUSEL DATA-API
|
||||
* ================= */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.carousel.data-api', '[data-slide]', function ( e ) {
|
||||
var $this = $(this), href
|
||||
, $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
|
||||
, options = !$target.data('modal') && $.extend({}, $target.data(), $this.data())
|
||||
$target.carousel(options)
|
||||
e.preventDefault()
|
||||
})
|
||||
$(document).on('click.carousel.data-api', '[data-slide]', function (e) {
|
||||
var $this = $(this), href
|
||||
, $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
|
||||
, options = $.extend({}, $target.data(), $this.data())
|
||||
$target.carousel(options)
|
||||
e.preventDefault()
|
||||
})
|
||||
|
||||
}(window.jQuery);/* =============================================================
|
||||
* bootstrap-collapse.js v2.1.1
|
||||
* bootstrap-collapse.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#collapse
|
||||
* =============================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -538,8 +565,10 @@
|
||||
}
|
||||
|
||||
|
||||
/* COLLAPSIBLE PLUGIN DEFINITION
|
||||
* ============================== */
|
||||
/* COLLAPSE PLUGIN DEFINITION
|
||||
* ========================== */
|
||||
|
||||
var old = $.fn.collapse
|
||||
|
||||
$.fn.collapse = function (option) {
|
||||
return this.each(function () {
|
||||
@@ -558,23 +587,30 @@
|
||||
$.fn.collapse.Constructor = Collapse
|
||||
|
||||
|
||||
/* COLLAPSIBLE DATA-API
|
||||
/* COLLAPSE NO CONFLICT
|
||||
* ==================== */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.collapse.data-api', '[data-toggle=collapse]', function (e) {
|
||||
var $this = $(this), href
|
||||
, target = $this.attr('data-target')
|
||||
|| e.preventDefault()
|
||||
|| (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7
|
||||
, option = $(target).data('collapse') ? 'toggle' : $this.data()
|
||||
$this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
|
||||
$(target).collapse(option)
|
||||
})
|
||||
$.fn.collapse.noConflict = function () {
|
||||
$.fn.collapse = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* COLLAPSE DATA-API
|
||||
* ================= */
|
||||
|
||||
$(document).on('click.collapse.data-api', '[data-toggle=collapse]', function (e) {
|
||||
var $this = $(this), href
|
||||
, target = $this.attr('data-target')
|
||||
|| e.preventDefault()
|
||||
|| (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7
|
||||
, option = $(target).data('collapse') ? 'toggle' : $this.data()
|
||||
$this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
|
||||
$(target).collapse(option)
|
||||
})
|
||||
|
||||
}(window.jQuery);/* ============================================================
|
||||
* bootstrap-dropdown.js v2.1.1
|
||||
* bootstrap-dropdown.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#dropdowns
|
||||
* ============================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -628,9 +664,10 @@
|
||||
|
||||
if (!isActive) {
|
||||
$parent.toggleClass('open')
|
||||
$this.focus()
|
||||
}
|
||||
|
||||
$this.focus()
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
@@ -657,7 +694,7 @@
|
||||
|
||||
if (!isActive || (isActive && e.keyCode == 27)) return $this.click()
|
||||
|
||||
$items = $('[role=menu] li:not(.divider) a', $parent)
|
||||
$items = $('[role=menu] li:not(.divider):visible a', $parent)
|
||||
|
||||
if (!$items.length) return
|
||||
|
||||
@@ -675,8 +712,9 @@
|
||||
}
|
||||
|
||||
function clearMenus() {
|
||||
getParent($(toggle))
|
||||
.removeClass('open')
|
||||
$(toggle).each(function () {
|
||||
getParent($(this)).removeClass('open')
|
||||
})
|
||||
}
|
||||
|
||||
function getParent($this) {
|
||||
@@ -698,6 +736,8 @@
|
||||
/* DROPDOWN PLUGIN DEFINITION
|
||||
* ========================== */
|
||||
|
||||
var old = $.fn.dropdown
|
||||
|
||||
$.fn.dropdown = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -710,20 +750,27 @@
|
||||
$.fn.dropdown.Constructor = Dropdown
|
||||
|
||||
|
||||
/* DROPDOWN NO CONFLICT
|
||||
* ==================== */
|
||||
|
||||
$.fn.dropdown.noConflict = function () {
|
||||
$.fn.dropdown = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* APPLY TO STANDARD DROPDOWN ELEMENTS
|
||||
* =================================== */
|
||||
|
||||
$(function () {
|
||||
$('html')
|
||||
.on('click.dropdown.data-api touchstart.dropdown.data-api', clearMenus)
|
||||
$('body')
|
||||
.on('click.dropdown touchstart.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
|
||||
.on('click.dropdown.data-api touchstart.dropdown.data-api' , toggle, Dropdown.prototype.toggle)
|
||||
.on('keydown.dropdown.data-api touchstart.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)
|
||||
})
|
||||
$(document)
|
||||
.on('click.dropdown.data-api touchstart.dropdown.data-api', clearMenus)
|
||||
.on('click.dropdown touchstart.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
|
||||
.on('touchstart.dropdown.data-api', '.dropdown-menu', function (e) { e.stopPropagation() })
|
||||
.on('click.dropdown.data-api touchstart.dropdown.data-api' , toggle, Dropdown.prototype.toggle)
|
||||
.on('keydown.dropdown.data-api touchstart.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)
|
||||
|
||||
}(window.jQuery);/* =========================================================
|
||||
* bootstrap-modal.js v2.1.1
|
||||
* bootstrap-modal.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#modals
|
||||
* =========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -773,8 +820,6 @@
|
||||
|
||||
if (this.isShown || e.isDefaultPrevented()) return
|
||||
|
||||
$('body').addClass('modal-open')
|
||||
|
||||
this.isShown = true
|
||||
|
||||
this.escape()
|
||||
@@ -796,13 +841,12 @@
|
||||
that.$element
|
||||
.addClass('in')
|
||||
.attr('aria-hidden', false)
|
||||
.focus()
|
||||
|
||||
that.enforceFocus()
|
||||
|
||||
transition ?
|
||||
that.$element.one($.support.transition.end, function () { that.$element.trigger('shown') }) :
|
||||
that.$element.trigger('shown')
|
||||
that.$element.one($.support.transition.end, function () { that.$element.focus().trigger('shown') }) :
|
||||
that.$element.focus().trigger('shown')
|
||||
|
||||
})
|
||||
}
|
||||
@@ -820,8 +864,6 @@
|
||||
|
||||
this.isShown = false
|
||||
|
||||
$('body').removeClass('modal-open')
|
||||
|
||||
this.escape()
|
||||
|
||||
$(document).off('focusin.modal')
|
||||
@@ -891,9 +933,11 @@
|
||||
this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
|
||||
.appendTo(document.body)
|
||||
|
||||
if (this.options.backdrop != 'static') {
|
||||
this.$backdrop.click($.proxy(this.hide, this))
|
||||
}
|
||||
this.$backdrop.click(
|
||||
this.options.backdrop == 'static' ?
|
||||
$.proxy(this.$element[0].focus, this.$element[0])
|
||||
: $.proxy(this.hide, this)
|
||||
)
|
||||
|
||||
if (doAnimate) this.$backdrop[0].offsetWidth // force reflow
|
||||
|
||||
@@ -920,6 +964,8 @@
|
||||
/* MODAL PLUGIN DEFINITION
|
||||
* ======================= */
|
||||
|
||||
var old = $.fn.modal
|
||||
|
||||
$.fn.modal = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -940,28 +986,36 @@
|
||||
$.fn.modal.Constructor = Modal
|
||||
|
||||
|
||||
/* MODAL NO CONFLICT
|
||||
* ================= */
|
||||
|
||||
$.fn.modal.noConflict = function () {
|
||||
$.fn.modal = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* MODAL DATA-API
|
||||
* ============== */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.modal.data-api', '[data-toggle="modal"]', function ( e ) {
|
||||
var $this = $(this)
|
||||
, href = $this.attr('href')
|
||||
, $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for ie7
|
||||
, option = $target.data('modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())
|
||||
$(document).on('click.modal.data-api', '[data-toggle="modal"]', function (e) {
|
||||
var $this = $(this)
|
||||
, href = $this.attr('href')
|
||||
, $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for ie7
|
||||
, option = $target.data('modal') ? 'toggle' : $.extend({ remote:!/#/.test(href) && href }, $target.data(), $this.data())
|
||||
|
||||
e.preventDefault()
|
||||
e.preventDefault()
|
||||
|
||||
$target
|
||||
.modal(option)
|
||||
.one('hide', function () {
|
||||
$this.focus()
|
||||
})
|
||||
})
|
||||
$target
|
||||
.modal(option)
|
||||
.one('hide', function () {
|
||||
$this.focus()
|
||||
})
|
||||
})
|
||||
|
||||
}(window.jQuery);/* ===========================================================
|
||||
* bootstrap-tooltip.js v2.1.1
|
||||
}(window.jQuery);
|
||||
/* ===========================================================
|
||||
* bootstrap-tooltip.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#tooltips
|
||||
* Inspired by the original jQuery.tipsy by Jason Frame
|
||||
* ===========================================================
|
||||
@@ -1081,9 +1135,9 @@
|
||||
inside = /in/.test(placement)
|
||||
|
||||
$tip
|
||||
.remove()
|
||||
.detach()
|
||||
.css({ top: 0, left: 0, display: 'block' })
|
||||
.appendTo(inside ? this.$element : document.body)
|
||||
.insertAfter(this.$element)
|
||||
|
||||
pos = this.getPosition(inside)
|
||||
|
||||
@@ -1106,7 +1160,7 @@
|
||||
}
|
||||
|
||||
$tip
|
||||
.css(tp)
|
||||
.offset(tp)
|
||||
.addClass(placement)
|
||||
.addClass('in')
|
||||
}
|
||||
@@ -1128,18 +1182,18 @@
|
||||
|
||||
function removeWithAnimation() {
|
||||
var timeout = setTimeout(function () {
|
||||
$tip.off($.support.transition.end).remove()
|
||||
$tip.off($.support.transition.end).detach()
|
||||
}, 500)
|
||||
|
||||
$tip.one($.support.transition.end, function () {
|
||||
clearTimeout(timeout)
|
||||
$tip.remove()
|
||||
$tip.detach()
|
||||
})
|
||||
}
|
||||
|
||||
$.support.transition && this.$tip.hasClass('fade') ?
|
||||
removeWithAnimation() :
|
||||
$tip.remove()
|
||||
$tip.detach()
|
||||
|
||||
return this
|
||||
}
|
||||
@@ -1197,8 +1251,9 @@
|
||||
this.enabled = !this.enabled
|
||||
}
|
||||
|
||||
, toggle: function () {
|
||||
this[this.tip().hasClass('in') ? 'hide' : 'show']()
|
||||
, toggle: function (e) {
|
||||
var self = $(e.currentTarget)[this.type](this._options).data(this.type)
|
||||
self[self.tip().hasClass('in') ? 'hide' : 'show']()
|
||||
}
|
||||
|
||||
, destroy: function () {
|
||||
@@ -1211,6 +1266,8 @@
|
||||
/* TOOLTIP PLUGIN DEFINITION
|
||||
* ========================= */
|
||||
|
||||
var old = $.fn.tooltip
|
||||
|
||||
$.fn.tooltip = function ( option ) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -1231,12 +1288,20 @@
|
||||
, trigger: 'hover'
|
||||
, title: ''
|
||||
, delay: 0
|
||||
, html: true
|
||||
, html: false
|
||||
}
|
||||
|
||||
}(window.jQuery);
|
||||
/* ===========================================================
|
||||
* bootstrap-popover.js v2.1.1
|
||||
|
||||
/* TOOLTIP NO CONFLICT
|
||||
* =================== */
|
||||
|
||||
$.fn.tooltip.noConflict = function () {
|
||||
$.fn.tooltip = old
|
||||
return this
|
||||
}
|
||||
|
||||
}(window.jQuery);/* ===========================================================
|
||||
* bootstrap-popover.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#popovers
|
||||
* ===========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -1281,7 +1346,7 @@
|
||||
, content = this.getContent()
|
||||
|
||||
$tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)
|
||||
$tip.find('.popover-content > *')[this.options.html ? 'html' : 'text'](content)
|
||||
$tip.find('.popover-content')[this.options.html ? 'html' : 'text'](content)
|
||||
|
||||
$tip.removeClass('fade top bottom left right in')
|
||||
}
|
||||
@@ -1318,6 +1383,8 @@
|
||||
/* POPOVER PLUGIN DEFINITION
|
||||
* ======================= */
|
||||
|
||||
var old = $.fn.popover
|
||||
|
||||
$.fn.popover = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -1334,11 +1401,20 @@
|
||||
placement: 'right'
|
||||
, trigger: 'click'
|
||||
, content: ''
|
||||
, template: '<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'
|
||||
, template: '<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"></div></div></div>'
|
||||
})
|
||||
|
||||
|
||||
/* POPOVER NO CONFLICT
|
||||
* =================== */
|
||||
|
||||
$.fn.popover.noConflict = function () {
|
||||
$.fn.popover = old
|
||||
return this
|
||||
}
|
||||
|
||||
}(window.jQuery);/* =============================================================
|
||||
* bootstrap-scrollspy.js v2.1.1
|
||||
* bootstrap-scrollspy.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#scrollspy
|
||||
* =============================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -1398,7 +1474,7 @@
|
||||
, $href = /^#\w/.test(href) && $(href)
|
||||
return ( $href
|
||||
&& $href.length
|
||||
&& [[ $href.position().top, href ]] ) || null
|
||||
&& [[ $href.position().top + self.$scrollElement.scrollTop(), href ]] ) || null
|
||||
})
|
||||
.sort(function (a, b) { return a[0] - b[0] })
|
||||
.each(function () {
|
||||
@@ -1460,6 +1536,8 @@
|
||||
/* SCROLLSPY PLUGIN DEFINITION
|
||||
* =========================== */
|
||||
|
||||
var old = $.fn.scrollspy
|
||||
|
||||
$.fn.scrollspy = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -1477,6 +1555,15 @@
|
||||
}
|
||||
|
||||
|
||||
/* SCROLLSPY NO CONFLICT
|
||||
* ===================== */
|
||||
|
||||
$.fn.scrollspy.noConflict = function () {
|
||||
$.fn.scrollspy = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* SCROLLSPY DATA-API
|
||||
* ================== */
|
||||
|
||||
@@ -1488,7 +1575,7 @@
|
||||
})
|
||||
|
||||
}(window.jQuery);/* ========================================================
|
||||
* bootstrap-tab.js v2.1.1
|
||||
* bootstrap-tab.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#tabs
|
||||
* ========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -1538,7 +1625,7 @@
|
||||
|
||||
if ( $this.parent('li').hasClass('active') ) return
|
||||
|
||||
previous = $ul.find('.active a').last()[0]
|
||||
previous = $ul.find('.active:last a')[0]
|
||||
|
||||
e = $.Event('show', {
|
||||
relatedTarget: previous
|
||||
@@ -1599,6 +1686,8 @@
|
||||
/* TAB PLUGIN DEFINITION
|
||||
* ===================== */
|
||||
|
||||
var old = $.fn.tab
|
||||
|
||||
$.fn.tab = function ( option ) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -1611,18 +1700,25 @@
|
||||
$.fn.tab.Constructor = Tab
|
||||
|
||||
|
||||
/* TAB NO CONFLICT
|
||||
* =============== */
|
||||
|
||||
$.fn.tab.noConflict = function () {
|
||||
$.fn.tab = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* TAB DATA-API
|
||||
* ============ */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function (e) {
|
||||
e.preventDefault()
|
||||
$(this).tab('show')
|
||||
})
|
||||
$(document).on('click.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function (e) {
|
||||
e.preventDefault()
|
||||
$(this).tab('show')
|
||||
})
|
||||
|
||||
}(window.jQuery);/* =============================================================
|
||||
* bootstrap-typeahead.js v2.1.1
|
||||
* bootstrap-typeahead.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#typeahead
|
||||
* =============================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -1656,8 +1752,8 @@
|
||||
this.sorter = this.options.sorter || this.sorter
|
||||
this.highlighter = this.options.highlighter || this.highlighter
|
||||
this.updater = this.options.updater || this.updater
|
||||
this.$menu = $(this.options.menu).appendTo('body')
|
||||
this.source = this.options.source
|
||||
this.$menu = $(this.options.menu)
|
||||
this.shown = false
|
||||
this.listen()
|
||||
}
|
||||
@@ -1679,16 +1775,18 @@
|
||||
}
|
||||
|
||||
, show: function () {
|
||||
var pos = $.extend({}, this.$element.offset(), {
|
||||
var pos = $.extend({}, this.$element.position(), {
|
||||
height: this.$element[0].offsetHeight
|
||||
})
|
||||
|
||||
this.$menu.css({
|
||||
top: pos.top + pos.height
|
||||
, left: pos.left
|
||||
})
|
||||
this.$menu
|
||||
.insertAfter(this.$element)
|
||||
.css({
|
||||
top: pos.top + pos.height
|
||||
, left: pos.left
|
||||
})
|
||||
.show()
|
||||
|
||||
this.$menu.show()
|
||||
this.shown = true
|
||||
return this
|
||||
}
|
||||
@@ -1797,7 +1895,7 @@
|
||||
.on('keypress', $.proxy(this.keypress, this))
|
||||
.on('keyup', $.proxy(this.keyup, this))
|
||||
|
||||
if ($.browser.chrome || $.browser.webkit || $.browser.msie) {
|
||||
if (this.eventSupported('keydown')) {
|
||||
this.$element.on('keydown', $.proxy(this.keydown, this))
|
||||
}
|
||||
|
||||
@@ -1806,6 +1904,15 @@
|
||||
.on('mouseenter', 'li', $.proxy(this.mouseenter, this))
|
||||
}
|
||||
|
||||
, eventSupported: function(eventName) {
|
||||
var isSupported = eventName in this.$element
|
||||
if (!isSupported) {
|
||||
this.$element.setAttribute(eventName, 'return;')
|
||||
isSupported = typeof this.$element[eventName] === 'function'
|
||||
}
|
||||
return isSupported
|
||||
}
|
||||
|
||||
, move: function (e) {
|
||||
if (!this.shown) return
|
||||
|
||||
@@ -1831,7 +1938,7 @@
|
||||
}
|
||||
|
||||
, keydown: function (e) {
|
||||
this.suppressKeyPressRepeat = !~$.inArray(e.keyCode, [40,38,9,13,27])
|
||||
this.suppressKeyPressRepeat = ~$.inArray(e.keyCode, [40,38,9,13,27])
|
||||
this.move(e)
|
||||
}
|
||||
|
||||
@@ -1844,6 +1951,9 @@
|
||||
switch(e.keyCode) {
|
||||
case 40: // down arrow
|
||||
case 38: // up arrow
|
||||
case 16: // shift
|
||||
case 17: // ctrl
|
||||
case 18: // alt
|
||||
break
|
||||
|
||||
case 9: // tab
|
||||
@@ -1887,6 +1997,8 @@
|
||||
/* TYPEAHEAD PLUGIN DEFINITION
|
||||
* =========================== */
|
||||
|
||||
var old = $.fn.typeahead
|
||||
|
||||
$.fn.typeahead = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -1908,21 +2020,28 @@
|
||||
$.fn.typeahead.Constructor = Typeahead
|
||||
|
||||
|
||||
/* TYPEAHEAD DATA-API
|
||||
/* TYPEAHEAD NO CONFLICT
|
||||
* =================== */
|
||||
|
||||
$.fn.typeahead.noConflict = function () {
|
||||
$.fn.typeahead = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* TYPEAHEAD DATA-API
|
||||
* ================== */
|
||||
|
||||
$(function () {
|
||||
$('body').on('focus.typeahead.data-api', '[data-provide="typeahead"]', function (e) {
|
||||
var $this = $(this)
|
||||
if ($this.data('typeahead')) return
|
||||
e.preventDefault()
|
||||
$this.typeahead($this.data())
|
||||
})
|
||||
$(document).on('focus.typeahead.data-api', '[data-provide="typeahead"]', function (e) {
|
||||
var $this = $(this)
|
||||
if ($this.data('typeahead')) return
|
||||
e.preventDefault()
|
||||
$this.typeahead($this.data())
|
||||
})
|
||||
|
||||
}(window.jQuery);
|
||||
/* ==========================================================
|
||||
* bootstrap-affix.js v2.1.1
|
||||
* bootstrap-affix.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#affix
|
||||
* ==========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -1951,7 +2070,9 @@
|
||||
|
||||
var Affix = function (element, options) {
|
||||
this.options = $.extend({}, $.fn.affix.defaults, options)
|
||||
this.$window = $(window).on('scroll.affix.data-api', $.proxy(this.checkPosition, this))
|
||||
this.$window = $(window)
|
||||
.on('scroll.affix.data-api', $.proxy(this.checkPosition, this))
|
||||
.on('click.affix.data-api', $.proxy(function () { setTimeout($.proxy(this.checkPosition, this), 1) }, this))
|
||||
this.$element = $(element)
|
||||
this.checkPosition()
|
||||
}
|
||||
@@ -1989,6 +2110,8 @@
|
||||
/* AFFIX PLUGIN DEFINITION
|
||||
* ======================= */
|
||||
|
||||
var old = $.fn.affix
|
||||
|
||||
$.fn.affix = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -2006,6 +2129,15 @@
|
||||
}
|
||||
|
||||
|
||||
/* AFFIX NO CONFLICT
|
||||
* ================= */
|
||||
|
||||
$.fn.affix.noConflict = function () {
|
||||
$.fn.affix = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* AFFIX DATA-API
|
||||
* ============== */
|
||||
|
||||
|
||||
@@ -0,0 +1,342 @@
|
||||
/*
|
||||
|
||||
Holder - 1.6 - client side image placeholders
|
||||
(c) 2012 Ivan Malopinsky / http://imsky.co
|
||||
|
||||
Provided under the Apache 2.0 License: http://www.apache.org/licenses/LICENSE-2.0
|
||||
Commercial use requires attribution.
|
||||
|
||||
*/
|
||||
|
||||
var Holder = Holder || {};
|
||||
(function (app, win) {
|
||||
|
||||
var preempted = false,
|
||||
fallback = false,
|
||||
canvas = document.createElement('canvas');
|
||||
|
||||
//getElementsByClassName polyfill
|
||||
document.getElementsByClassName||(document.getElementsByClassName=function(e){var t=document,n,r,i,s=[];if(t.querySelectorAll)return t.querySelectorAll("."+e);if(t.evaluate){r=".//*[contains(concat(' ', @class, ' '), ' "+e+" ')]",n=t.evaluate(r,t,null,0,null);while(i=n.iterateNext())s.push(i)}else{n=t.getElementsByTagName("*"),r=new RegExp("(^|\\s)"+e+"(\\s|$)");for(i=0;i<n.length;i++)r.test(n[i].className)&&s.push(n[i])}return s})
|
||||
|
||||
//getComputedStyle polyfill
|
||||
window.getComputedStyle||(window.getComputedStyle=function(e,t){return this.el=e,this.getPropertyValue=function(t){var n=/(\-([a-z]){1})/g;return t=="float"&&(t="styleFloat"),n.test(t)&&(t=t.replace(n,function(){return arguments[2].toUpperCase()})),e.currentStyle[t]?e.currentStyle[t]:null},this})
|
||||
|
||||
//http://javascript.nwbox.com/ContentLoaded by Diego Perini with modifications
|
||||
function contentLoaded(n,t){var l="complete",s="readystatechange",u=!1,h=u,c=!0,i=n.document,a=i.documentElement,e=i.addEventListener?"addEventListener":"attachEvent",v=i.addEventListener?"removeEventListener":"detachEvent",f=i.addEventListener?"":"on",r=function(e){(e.type!=s||i.readyState==l)&&((e.type=="load"?n:i)[v](f+e.type,r,u),!h&&(h=!0)&&t.call(n,null))},o=function(){try{a.doScroll("left")}catch(n){setTimeout(o,50);return}r("poll")};if(i.readyState==l)t.call(n,"lazy");else{if(i.createEventObject&&a.doScroll){try{c=!n.frameElement}catch(y){}c&&o()}i[e](f+"DOMContentLoaded",r,u),i[e](f+s,r,u),n[e](f+"load",r,u)}};
|
||||
|
||||
//https://gist.github.com/991057 by Jed Schmidt with modifications
|
||||
function selector(a){
|
||||
a=a.match(/^(\W)?(.*)/);var b=document["getElement"+(a[1]?a[1]=="#"?"ById":"sByClassName":"sByTagName")](a[2]);
|
||||
var ret=[]; b!=null&&(b.length?ret=b:b.length==0?ret=b:ret=[b]); return ret;
|
||||
}
|
||||
|
||||
//shallow object property extend
|
||||
function extend(a,b){var c={};for(var d in a)c[d]=a[d];for(var e in b)c[e]=b[e];return c}
|
||||
|
||||
function text_size(width, height, template) {
|
||||
var dimension_arr = [height, width].sort();
|
||||
var maxFactor = Math.round(dimension_arr[1] / 16),
|
||||
minFactor = Math.round(dimension_arr[0] / 16);
|
||||
var text_height = Math.max(template.size, maxFactor);
|
||||
return {
|
||||
height: text_height
|
||||
}
|
||||
}
|
||||
|
||||
function draw(ctx, dimensions, template, ratio) {
|
||||
var ts = text_size(dimensions.width, dimensions.height, template);
|
||||
var text_height = ts.height;
|
||||
var width = dimensions.width * ratio, height = dimensions.height * ratio;
|
||||
canvas.width = width;
|
||||
canvas.height = height;
|
||||
ctx.textAlign = "center";
|
||||
ctx.textBaseline = "middle";
|
||||
ctx.fillStyle = template.background;
|
||||
ctx.fillRect(0, 0, width, height);
|
||||
ctx.fillStyle = template.foreground;
|
||||
ctx.font = "bold " + text_height + "px sans-serif";
|
||||
var text = template.text ? template.text : (dimensions.width + "x" + dimensions.height);
|
||||
if (ctx.measureText(text).width / width > 1) {
|
||||
text_height = template.size / (ctx.measureText(text).width / width);
|
||||
}
|
||||
ctx.font = "bold " + (text_height * ratio) + "px sans-serif";
|
||||
ctx.fillText(text, (width / 2), (height / 2), width);
|
||||
return canvas.toDataURL("image/png");
|
||||
}
|
||||
|
||||
function render(mode, el, holder, src) {
|
||||
|
||||
var dimensions = holder.dimensions,
|
||||
theme = holder.theme,
|
||||
text = holder.text;
|
||||
var dimensions_caption = dimensions.width + "x" + dimensions.height;
|
||||
theme = (text ? extend(theme, {
|
||||
text: text
|
||||
}) : theme);
|
||||
|
||||
var ratio = 1;
|
||||
if(window.devicePixelRatio && window.devicePixelRatio > 1){
|
||||
ratio = window.devicePixelRatio;
|
||||
}
|
||||
|
||||
if (mode == "image") {
|
||||
el.setAttribute("data-src", src);
|
||||
el.setAttribute("alt", text ? text : theme.text ? theme.text + " [" + dimensions_caption + "]" : dimensions_caption);
|
||||
el.style.width = dimensions.width + "px";
|
||||
el.style.height = dimensions.height + "px";
|
||||
|
||||
if (fallback) {
|
||||
el.style.backgroundColor = theme.background;
|
||||
}
|
||||
else{
|
||||
el.setAttribute("src", draw(ctx, dimensions, theme, ratio));
|
||||
}
|
||||
} else {
|
||||
if (!fallback) {
|
||||
el.style.backgroundImage = "url(" + draw(ctx, dimensions, theme, ratio) + ")";
|
||||
el.style.backgroundSize = dimensions.width+"px "+dimensions.height+"px";
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
function fluid(el, holder, src) {
|
||||
var dimensions = holder.dimensions,
|
||||
theme = holder.theme,
|
||||
text = holder.text;
|
||||
var dimensions_caption = dimensions.width + "x" + dimensions.height;
|
||||
theme = (text ? extend(theme, {
|
||||
text: text
|
||||
}) : theme);
|
||||
|
||||
var fluid = document.createElement("table");
|
||||
fluid.setAttribute("cellspacing",0)
|
||||
fluid.setAttribute("cellpadding",0)
|
||||
fluid.setAttribute("border",0)
|
||||
|
||||
var row = document.createElement("tr")
|
||||
.appendChild(document.createElement("td")
|
||||
.appendChild(document.createTextNode(theme.text)));
|
||||
|
||||
fluid.style.backgroundColor = theme.background;
|
||||
fluid.style.color = theme.foreground;
|
||||
fluid.className = el.className + " holderjs-fluid";
|
||||
fluid.style.width = holder.dimensions.width + (holder.dimensions.width.indexOf("%")>0?"":"px");
|
||||
fluid.style.height = holder.dimensions.height + (holder.dimensions.height.indexOf("%")>0?"":"px");
|
||||
fluid.id = el.id;
|
||||
|
||||
var frag = document.createDocumentFragment(),
|
||||
tbody = document.createElement("tbody"),
|
||||
tr = document.createElement("tr"),
|
||||
td = document.createElement("td");
|
||||
tr.appendChild(td);
|
||||
tbody.appendChild(tr);
|
||||
frag.appendChild(tbody);
|
||||
|
||||
if (theme.text) {
|
||||
td.appendChild(document.createTextNode(theme.text))
|
||||
fluid.appendChild(frag);
|
||||
} else {
|
||||
td.appendChild(document.createTextNode(dimensions_caption))
|
||||
fluid.appendChild(frag);
|
||||
fluid_images.push(fluid);
|
||||
setTimeout(fluid_update, 0);
|
||||
}
|
||||
|
||||
el.parentNode.replaceChild(fluid, el);
|
||||
}
|
||||
|
||||
function fluid_update() {
|
||||
for (i in fluid_images) {
|
||||
var el = fluid_images[i];
|
||||
var label = el.getElementsByTagName("td")[0].firstChild;
|
||||
label.data = el.offsetWidth + "x" + el.offsetHeight;
|
||||
}
|
||||
}
|
||||
|
||||
function parse_flags(flags, options) {
|
||||
|
||||
var ret = {
|
||||
theme: settings.themes.gray
|
||||
}, render = false;
|
||||
|
||||
for (sl = flags.length, j = 0; j < sl; j++) {
|
||||
var flag = flags[j];
|
||||
if (app.flags.dimensions.match(flag)) {
|
||||
render = true;
|
||||
ret.dimensions = app.flags.dimensions.output(flag);
|
||||
} else if (app.flags.fluid.match(flag)) {
|
||||
render = true;
|
||||
ret.dimensions = app.flags.fluid.output(flag);
|
||||
ret.fluid = true;
|
||||
} else if (app.flags.colors.match(flag)) {
|
||||
ret.theme = app.flags.colors.output(flag);
|
||||
} else if (options.themes[flag]) {
|
||||
//If a theme is specified, it will override custom colors
|
||||
ret.theme = options.themes[flag];
|
||||
} else if (app.flags.text.match(flag)) {
|
||||
ret.text = app.flags.text.output(flag);
|
||||
}
|
||||
}
|
||||
|
||||
return render ? ret : false;
|
||||
|
||||
};
|
||||
|
||||
if (!canvas.getContext) {
|
||||
fallback = true;
|
||||
} else {
|
||||
if (canvas.toDataURL("image/png")
|
||||
.indexOf("data:image/png") < 0) {
|
||||
//Android doesn't support data URI
|
||||
fallback = true;
|
||||
} else {
|
||||
var ctx = canvas.getContext("2d");
|
||||
}
|
||||
}
|
||||
|
||||
var fluid_images = [];
|
||||
|
||||
var settings = {
|
||||
domain: "holder.js",
|
||||
images: "img",
|
||||
elements: ".holderjs",
|
||||
themes: {
|
||||
"gray": {
|
||||
background: "#eee",
|
||||
foreground: "#aaa",
|
||||
size: 12
|
||||
},
|
||||
"social": {
|
||||
background: "#3a5a97",
|
||||
foreground: "#fff",
|
||||
size: 12
|
||||
},
|
||||
"industrial": {
|
||||
background: "#434A52",
|
||||
foreground: "#C2F200",
|
||||
size: 12
|
||||
}
|
||||
},
|
||||
stylesheet: ".holderjs-fluid {font-size:16px;font-weight:bold;text-align:center;font-family:sans-serif;border-collapse:collapse;border:0;vertical-align:middle;margin:0}"
|
||||
};
|
||||
|
||||
|
||||
app.flags = {
|
||||
dimensions: {
|
||||
regex: /(\d+)x(\d+)/,
|
||||
output: function (val) {
|
||||
var exec = this.regex.exec(val);
|
||||
return {
|
||||
width: +exec[1],
|
||||
height: +exec[2]
|
||||
}
|
||||
}
|
||||
},
|
||||
fluid: {
|
||||
regex: /([0-9%]+)x([0-9%]+)/,
|
||||
output: function (val) {
|
||||
var exec = this.regex.exec(val);
|
||||
return {
|
||||
width: exec[1],
|
||||
height: exec[2]
|
||||
}
|
||||
}
|
||||
},
|
||||
colors: {
|
||||
regex: /#([0-9a-f]{3,})\:#([0-9a-f]{3,})/i,
|
||||
output: function (val) {
|
||||
var exec = this.regex.exec(val);
|
||||
return {
|
||||
size: settings.themes.gray.size,
|
||||
foreground: "#" + exec[2],
|
||||
background: "#" + exec[1]
|
||||
}
|
||||
}
|
||||
},
|
||||
text: {
|
||||
regex: /text\:(.*)/,
|
||||
output: function (val) {
|
||||
return this.regex.exec(val)[1];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for (var flag in app.flags) {
|
||||
app.flags[flag].match = function (val) {
|
||||
return val.match(this.regex)
|
||||
}
|
||||
}
|
||||
|
||||
app.add_theme = function (name, theme) {
|
||||
name != null && theme != null && (settings.themes[name] = theme);
|
||||
return app;
|
||||
};
|
||||
|
||||
app.add_image = function (src, el) {
|
||||
var node = selector(el);
|
||||
if (node.length) {
|
||||
for (var i = 0, l = node.length; i < l; i++) {
|
||||
var img = document.createElement("img")
|
||||
img.setAttribute("data-src", src);
|
||||
node[i].appendChild(img);
|
||||
}
|
||||
}
|
||||
return app;
|
||||
};
|
||||
|
||||
app.run = function (o) {
|
||||
var options = extend(settings, o),
|
||||
images_nodes = selector(options.images),
|
||||
elements = selector(options.elements),
|
||||
preempted = true,
|
||||
images = [];
|
||||
|
||||
for (i = 0, l = images_nodes.length; i < l; i++) images.push(images_nodes[i]);
|
||||
|
||||
var holdercss = document.createElement("style");
|
||||
holdercss.type = "text/css";
|
||||
holdercss.styleSheet ? holdercss.styleSheet.cssText = options.stylesheet : holdercss.textContent = options.stylesheet;
|
||||
document.getElementsByTagName("head")[0].appendChild(holdercss);
|
||||
|
||||
var cssregex = new RegExp(options.domain + "\/(.*?)\"?\\)");
|
||||
|
||||
for (var l = elements.length, i = 0; i < l; i++) {
|
||||
var src = window.getComputedStyle(elements[i], null)
|
||||
.getPropertyValue("background-image");
|
||||
var flags = src.match(cssregex);
|
||||
if (flags) {
|
||||
var holder = parse_flags(flags[1].split("/"), options);
|
||||
if (holder) {
|
||||
render("background", elements[i], holder, src);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for (var l = images.length, i = 0; i < l; i++) {
|
||||
var src = images[i].getAttribute("src") || images[i].getAttribute("data-src");
|
||||
if (src != null && src.indexOf(options.domain) >= 0) {
|
||||
var holder = parse_flags(src.substr(src.lastIndexOf(options.domain) + options.domain.length + 1)
|
||||
.split("/"), options);
|
||||
if (holder) {
|
||||
if (holder.fluid) {
|
||||
fluid(images[i], holder, src);
|
||||
} else {
|
||||
render("image", images[i], holder, src);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return app;
|
||||
};
|
||||
|
||||
contentLoaded(win, function () {
|
||||
if (window.addEventListener) {
|
||||
window.addEventListener("resize", fluid_update, false);
|
||||
window.addEventListener("orientationchange", fluid_update, false);
|
||||
} else {
|
||||
window.attachEvent("onresize", fluid_update)
|
||||
}
|
||||
preempted || app.run();
|
||||
});
|
||||
|
||||
})(Holder, window);
|
||||
@@ -2,7 +2,7 @@
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Base · Twitter Bootstrap</title>
|
||||
<title>Base · Bootstrap</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
@@ -19,11 +19,11 @@
|
||||
<![endif]-->
|
||||
|
||||
<!-- Le fav and touch icons -->
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.ico">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.png">
|
||||
|
||||
</head>
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
<a href="./components.html">Components</a>
|
||||
</li>
|
||||
<li class="">
|
||||
<a href="./javascript.html">Javascript</a>
|
||||
<a href="./javascript.html">JavaScript</a>
|
||||
</li>
|
||||
<li class="">
|
||||
<a href="./customize.html">Customize</a>
|
||||
@@ -155,14 +155,14 @@
|
||||
</pre>
|
||||
|
||||
<h3>Bold</h3>
|
||||
<p>For emphasizing a snippet of text with <strong>important</strong></p>
|
||||
<p>For emphasizing a snippet of text with a heavier font-weight.</p>
|
||||
<div class="bs-docs-example">
|
||||
<p>The following snippet of text is <strong>rendered as bold text</strong>.</p>
|
||||
</div>
|
||||
<pre class="prettyprint"><strong>rendered as bold text</strong></pre>
|
||||
|
||||
<h3>Italics</h3>
|
||||
<p>For emphasizing a snippet of text with <em>stress</em></p>
|
||||
<p>For emphasizing a snippet of text with italics.</p>
|
||||
<div class="bs-docs-example">
|
||||
<p>The following snippet of text is <em>rendered as italicized text</em>.</p>
|
||||
</div>
|
||||
@@ -192,7 +192,7 @@
|
||||
|
||||
|
||||
<h2 id="abbreviations">Abbreviations</h2>
|
||||
<p>Stylized implemenation of HTML's <code><abbr></code> element for abbreviations and acronyms to show the expanded version on hover. Abbreviations with a <code>title</code> attribute have a light dotted bottom border and a help cursor on hover, providing additional context on hover.</p>
|
||||
<p>Stylized implementation of HTML's <code><abbr></code> element for abbreviations and acronyms to show the expanded version on hover. Abbreviations with a <code>title</code> attribute have a light dotted bottom border and a help cursor on hover, providing additional context on hover.</p>
|
||||
|
||||
<h3><code><abbr></code></h3>
|
||||
<p>For expanded text on long hover of an abbreviation, include the <code>title</code> attribute.</p>
|
||||
@@ -226,7 +226,7 @@
|
||||
</address>
|
||||
<address>
|
||||
<strong>Full Name</strong><br>
|
||||
<a href="mailto:#">first.last@gmail.com</a>
|
||||
<a href="mailto:#">first.last@example.com</a>
|
||||
</address>
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
@@ -239,7 +239,7 @@
|
||||
|
||||
<address>
|
||||
<strong>Full Name</strong><br>
|
||||
<a href="mailto:#">first.last@gmail.com</a>
|
||||
<a href="mailto:#">first.last@example.com</a>
|
||||
</address>
|
||||
</pre>
|
||||
|
||||
@@ -350,7 +350,7 @@
|
||||
</pre>
|
||||
|
||||
<h3>Unstyled</h3>
|
||||
<p>A list of items with no <code>list-style</code> or additional left padding.</p>
|
||||
<p>Remove the default <code>list-style</code> and left padding on list items (immediate children only).</p>
|
||||
<div class="bs-docs-example">
|
||||
<ul class="unstyled">
|
||||
<li>Lorem ipsum dolor sit amet</li>
|
||||
@@ -374,6 +374,21 @@
|
||||
<ul class="unstyled">
|
||||
<li>...</li>
|
||||
</ul>
|
||||
</pre>
|
||||
|
||||
<h3>Inline</h3>
|
||||
<p>Place all list items on a single line with <code>inline-block</code> and some light padding.</p>
|
||||
<div class="bs-docs-example">
|
||||
<ul class="inline">
|
||||
<li>Lorem ipsum</li>
|
||||
<li>Phasellus iaculis</li>
|
||||
<li>Nulla volutpat</li>
|
||||
</ul>
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<ul class="inline">
|
||||
<li>...</li>
|
||||
</ul>
|
||||
</pre>
|
||||
|
||||
<h3>Description</h3>
|
||||
@@ -509,7 +524,7 @@ For example, <code><section></code> should be wrapped as inlin
|
||||
|
||||
|
||||
<h2>Optional classes</h2>
|
||||
<p>Add any of the follow classes to the <code>.table</code> base class.</p>
|
||||
<p>Add any of the following classes to the <code>.table</code> base class.</p>
|
||||
|
||||
<h3><code>.table-striped</code></h3>
|
||||
<p>Adds zebra-striping to any table row within the <code><tbody></code> via the <code>:nth-child</code> CSS selector (not available in IE7-IE8).</p>
|
||||
@@ -875,25 +890,29 @@ For example, <code><section></code> should be wrapped as inlin
|
||||
<h2>Default styles</h2>
|
||||
<p>Individual form controls receive styling, but without any required base class on the <code><form></code> or large changes in markup. Results in stacked, left-aligned labels on top of form controls.</p>
|
||||
<form class="bs-docs-example">
|
||||
<legend>Legend</legend>
|
||||
<label>Label name</label>
|
||||
<input type="text" placeholder="Type something…">
|
||||
<span class="help-block">Example block-level help text here.</span>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox"> Check me out
|
||||
</label>
|
||||
<button type="submit" class="btn">Submit</button>
|
||||
<fieldset>
|
||||
<legend>Legend</legend>
|
||||
<label>Label name</label>
|
||||
<input type="text" placeholder="Type something…">
|
||||
<span class="help-block">Example block-level help text here.</span>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox"> Check me out
|
||||
</label>
|
||||
<button type="submit" class="btn">Submit</button>
|
||||
</fieldset>
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<form>
|
||||
<legend>Legend</legend>
|
||||
<label>Label name</label>
|
||||
<input type="text" placeholder="Type something…">
|
||||
<span class="help-block">Example block-level help text here.</span>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox"> Check me out
|
||||
</label>
|
||||
<button type="submit" class="btn">Submit</button>
|
||||
<fieldset>
|
||||
<legend>Legend</legend>
|
||||
<label>Label name</label>
|
||||
<input type="text" placeholder="Type something…">
|
||||
<span class="help-block">Example block-level help text here.</span>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox"> Check me out
|
||||
</label>
|
||||
<button type="submit" class="btn">Submit</button>
|
||||
</fieldset>
|
||||
</form>
|
||||
</pre>
|
||||
|
||||
@@ -947,7 +966,6 @@ For example, <code><section></code> should be wrapped as inlin
|
||||
<li>Wrap any associated controls in <code>.controls</code> for proper alignment</li>
|
||||
</ul>
|
||||
<form class="bs-docs-example form-horizontal">
|
||||
<legend>Legend</legend>
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="inputEmail">Email</label>
|
||||
<div class="controls">
|
||||
@@ -1131,20 +1149,22 @@ For example, <code><section></code> should be wrapped as inlin
|
||||
<form class="bs-docs-example">
|
||||
<div class="input-prepend">
|
||||
<span class="add-on">@</span>
|
||||
<input class="span2" id="prependedInput" size="16" type="text" placeholder="Username">
|
||||
<input class="span2" id="prependedInput" type="text" placeholder="Username">
|
||||
</div>
|
||||
<br>
|
||||
<div class="input-append">
|
||||
<input class="span2" id="appendedInput" size="16" type="text">
|
||||
<input class="span2" id="appendedInput" type="text">
|
||||
<span class="add-on">.00</span>
|
||||
</div>
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="input-prepend">
|
||||
<span class="add-on">@</span><input class="span2" id="prependedInput" size="16" type="text" placeholder="Username">
|
||||
<span class="add-on">@</span>
|
||||
<input class="span2" id="prependedInput" type="text" placeholder="Username">
|
||||
</div>
|
||||
<div class="input-append">
|
||||
<input class="span2" id="appendedInput" size="16" type="text"><span class="add-on">.00</span>
|
||||
<input class="span2" id="appendedInput" type="text">
|
||||
<span class="add-on">.00</span>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
@@ -1153,13 +1173,15 @@ For example, <code><section></code> should be wrapped as inlin
|
||||
<form class="bs-docs-example form-inline">
|
||||
<div class="input-prepend input-append">
|
||||
<span class="add-on">$</span>
|
||||
<input class="span2" id="appendedPrependedInput" size="16" type="text">
|
||||
<input class="span2" id="appendedPrependedInput" type="text">
|
||||
<span class="add-on">.00</span>
|
||||
</div>
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="input-prepend input-append">
|
||||
<span class="add-on">$</span><input class="span2" id="appendedPrependedInput" size="16" type="text"><span class="add-on">.00</span>
|
||||
<span class="add-on">$</span>
|
||||
<input class="span2" id="appendedPrependedInput" type="text">
|
||||
<span class="add-on">.00</span>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
@@ -1167,24 +1189,188 @@ For example, <code><section></code> should be wrapped as inlin
|
||||
<p>Instead of a <code><span></code> with text, use a <code>.btn</code> to attach a button (or two) to an input.</p>
|
||||
<form class="bs-docs-example">
|
||||
<div class="input-append">
|
||||
<input class="span2" id="appendedInputButton" size="16" type="text">
|
||||
<input class="span2" id="appendedInputButton" type="text">
|
||||
<button class="btn" type="button">Go!</button>
|
||||
</div>
|
||||
<br>
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="input-append">
|
||||
<input class="span2" id="appendedInputButton" type="text">
|
||||
<button class="btn" type="button">Go!</button>
|
||||
</div>
|
||||
</pre>
|
||||
<form class="bs-docs-example">
|
||||
<div class="input-append">
|
||||
<input class="span2" id="appendedInputButtons" size="16" type="text">
|
||||
<input class="span2" id="appendedInputButtons" type="text">
|
||||
<button class="btn" type="button">Search</button>
|
||||
<button class="btn" type="button">Options</button>
|
||||
</div>
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="input-append">
|
||||
<input class="span2" id="appendedInputButton" size="16" type="text"><button class="btn" type="button">Go!</button>
|
||||
<input class="span2" id="appendedInputButtons" type="text">
|
||||
<button class="btn" type="button">Search</button>
|
||||
<button class="btn" type="button">Options</button>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<h4>Button dropdowns</h4>
|
||||
<p></p>
|
||||
<form class="bs-docs-example">
|
||||
<div class="input-append">
|
||||
<input class="span2" id="appendedDropdownButton" type="text">
|
||||
<div class="btn-group">
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown">Action <span class="caret"></span></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="#">Action</a></li>
|
||||
<li><a href="#">Another action</a></li>
|
||||
<li><a href="#">Something else here</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="#">Separated link</a></li>
|
||||
</ul>
|
||||
</div><!-- /btn-group -->
|
||||
</div><!-- /input-append -->
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="input-append">
|
||||
<input class="span2" id="appendedInputButtons" size="16" type="text"><button class="btn" type="button">Search</button><button class="btn" type="button">Options</button>
|
||||
<input class="span2" id="appendedDropdownButton" type="text">
|
||||
<div class="btn-group">
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown">
|
||||
Action
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<form class="bs-docs-example">
|
||||
<div class="input-prepend">
|
||||
<div class="btn-group">
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown">Action <span class="caret"></span></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="#">Action</a></li>
|
||||
<li><a href="#">Another action</a></li>
|
||||
<li><a href="#">Something else here</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="#">Separated link</a></li>
|
||||
</ul>
|
||||
</div><!-- /btn-group -->
|
||||
<input class="span2" id="prependedDropdownButton" type="text">
|
||||
</div><!-- /input-prepend -->
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="input-prepend">
|
||||
<div class="btn-group">
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown">
|
||||
Action
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
<input class="span2" id="prependedDropdownButton" type="text">
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<form class="bs-docs-example">
|
||||
<div class="input-prepend input-append">
|
||||
<div class="btn-group">
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown">Action <span class="caret"></span></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="#">Action</a></li>
|
||||
<li><a href="#">Another action</a></li>
|
||||
<li><a href="#">Something else here</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="#">Separated link</a></li>
|
||||
</ul>
|
||||
</div><!-- /btn-group -->
|
||||
<input class="span2" id="appendedPrependedDropdownButton" type="text">
|
||||
<div class="btn-group">
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown">Action <span class="caret"></span></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="#">Action</a></li>
|
||||
<li><a href="#">Another action</a></li>
|
||||
<li><a href="#">Something else here</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="#">Separated link</a></li>
|
||||
</ul>
|
||||
</div><!-- /btn-group -->
|
||||
</div><!-- /input-prepend input-append -->
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="input-prepend input-append">
|
||||
<div class="btn-group">
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown">
|
||||
Action
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
<input class="span2" id="appendedPrependedDropdownButton" type="text">
|
||||
<div class="btn-group">
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown">
|
||||
Action
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<h4>Segmented dropdown groups</h4>
|
||||
<form class="bs-docs-example">
|
||||
<div class="input-prepend">
|
||||
<div class="btn-group">
|
||||
<button class="btn" tabindex="-1">Action</button>
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown" tabindex="-1">
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="#">Action</a></li>
|
||||
<li><a href="#">Another action</a></li>
|
||||
<li><a href="#">Something else here</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="#">Separated link</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<input type="text">
|
||||
</div>
|
||||
<div class="input-append">
|
||||
<input type="text">
|
||||
<div class="btn-group">
|
||||
<button class="btn" tabindex="-1">Action</button>
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown" tabindex="-1">
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="#">Action</a></li>
|
||||
<li><a href="#">Another action</a></li>
|
||||
<li><a href="#">Something else here</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="#">Separated link</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<form>
|
||||
<div class="input-prepend">
|
||||
<div class="btn-group">...</div>
|
||||
<input type="text">
|
||||
</div>
|
||||
<div class="input-append">
|
||||
<input type="text">
|
||||
<div class="btn-group">...</div>
|
||||
</div>
|
||||
</form>
|
||||
</pre>
|
||||
|
||||
<h4>Search form</h4>
|
||||
@@ -1214,6 +1400,17 @@ For example, <code><section></code> should be wrapped as inlin
|
||||
<h3>Control sizing</h3>
|
||||
<p>Use relative sizing classes like <code>.input-large</code> or match your inputs to the grid column sizes using <code>.span*</code> classes.</p>
|
||||
|
||||
<h4>Block level inputs</h4>
|
||||
<p>Make any <code><input></code> or <code><textarea></code> element behave like a block level element.</p>
|
||||
<form class="bs-docs-example" style="padding-bottom: 15px;">
|
||||
<div class="controls">
|
||||
<input class="input-block-level" type="text" placeholder=".input-block-level">
|
||||
</div>
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<input class="input-block-level" type="text" placeholder=".input-block-level">
|
||||
</pre>
|
||||
|
||||
<h4>Relative sizing</h4>
|
||||
<form class="bs-docs-example" style="padding-bottom: 15px;">
|
||||
<div class="controls docs-input-sizes">
|
||||
@@ -1282,7 +1479,7 @@ For example, <code><section></code> should be wrapped as inlin
|
||||
</select>
|
||||
</pre>
|
||||
|
||||
<p>For multiple grid inputs per line, <strong>use the <code>.controls-row</code> modifier class for proper spacing</strong>. It floats the inputs to collapse white-space, sets the proper margins, and the clears the float.</p>
|
||||
<p>For multiple grid inputs per line, <strong>use the <code>.controls-row</code> modifier class for proper spacing</strong>. It floats the inputs to collapse white-space, sets the proper margins, and clears the float.</p>
|
||||
<form class="bs-docs-example" style="padding-bottom: 15px;">
|
||||
<div class="controls">
|
||||
<input class="span5" type="text" placeholder=".span5">
|
||||
@@ -1372,6 +1569,15 @@ For example, <code><section></code> should be wrapped as inlin
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<input class="input-xlarge" id="focusedInput" type="text" value="This is focused...">
|
||||
</pre>
|
||||
|
||||
<h3>Invalid inputs</h3>
|
||||
<p>Style inputs via default browser functionality with <code>:invalid</code>. Specify a <code>type</code> and add the <code>required</code> attribute.</p>
|
||||
<form class="bs-docs-example form-inline">
|
||||
<input class="span3" type="email" placeholder="test@example.com" required>
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<input class="span3" type="email" required>
|
||||
</pre>
|
||||
|
||||
<h3>Disabled inputs</h3>
|
||||
@@ -1402,9 +1608,9 @@ For example, <code><section></code> should be wrapped as inlin
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group info">
|
||||
<label class="control-label" for="inputError">Input with info</label>
|
||||
<label class="control-label" for="inputInfo">Input with info</label>
|
||||
<div class="controls">
|
||||
<input type="text" id="inputError">
|
||||
<input type="text" id="inputInfo">
|
||||
<span class="help-inline">Username is taken</span>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1619,9 +1825,9 @@ For example, <code><section></code> should be wrapped as inlin
|
||||
|
||||
<p>Add classes to an <code><img></code> element to easily style images in any project.</p>
|
||||
<div class="bs-docs-example bs-docs-example-images">
|
||||
<img src="http://placehold.it/140x140" class="img-rounded">
|
||||
<img src="http://placehold.it/140x140" class="img-circle">
|
||||
<img src="http://placehold.it/140x140" class="img-polaroid">
|
||||
<img data-src="holder.js/140x140" class="img-rounded">
|
||||
<img data-src="holder.js/140x140" class="img-circle">
|
||||
<img data-src="holder.js/140x140" class="img-polaroid">
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<img src="..." class="img-rounded">
|
||||
@@ -1872,15 +2078,18 @@ For example, <code><section></code> should be wrapped as inlin
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<h5>Small button</h5>
|
||||
<h5>Button sizes</h5>
|
||||
<div class="bs-docs-example">
|
||||
<a class="btn btn-small" href="#"><i class="icon-star"></i></a>
|
||||
<a class="btn btn-large" href="#"><i class="icon-star"></i> Star</a>
|
||||
<a class="btn btn-small" href="#"><i class="icon-star"></i> Star</a>
|
||||
<a class="btn btn-mini" href="#"><i class="icon-star"></i> Star</a>
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<a class="btn btn-small" href="#"><i class="icon-star"></i></a>
|
||||
<a class="btn btn-large" href="#"><i class="icon-star"></i> Star</a>
|
||||
<a class="btn btn-small" href="#"><i class="icon-star"></i> Star</a>
|
||||
<a class="btn btn-mini" href="#"><i class="icon-star"></i> Star</a>
|
||||
</pre>
|
||||
|
||||
|
||||
<h4>Navigation</h4>
|
||||
<div class="bs-docs-example">
|
||||
<div class="well" style="padding: 8px 0; margin-bottom: 0;">
|
||||
@@ -1939,13 +2148,14 @@ For example, <code><section></code> should be wrapped as inlin
|
||||
================================================== -->
|
||||
<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>.</p>
|
||||
<p>Code licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>. Documentation licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p>Icons from <a href="http://glyphicons.com">Glyphicons Free</a>, licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p>Designed and built with all the love in the world by <a href="http://twitter.com/mdo" target="_blank">@mdo</a> and <a href="http://twitter.com/fat" target="_blank">@fat</a>.</p>
|
||||
<p>Code licensed under <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>, documentation under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p><a href="http://glyphicons.com">Glyphicons Free</a> licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<ul class="footer-links">
|
||||
<li><a href="http://blog.getbootstrap.com">Read the blog</a></li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Submit issues</a></li>
|
||||
<li><a href="http://blog.getbootstrap.com">Blog</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Issues</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/wiki">Roadmap and changelog</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
@@ -1958,7 +2168,6 @@ For example, <code><section></code> should be wrapped as inlin
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
|
||||
<script src="assets/js/jquery.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
<script src="assets/js/bootstrap-transition.js"></script>
|
||||
<script src="assets/js/bootstrap-alert.js"></script>
|
||||
<script src="assets/js/bootstrap-modal.js"></script>
|
||||
@@ -1972,6 +2181,10 @@ For example, <code><section></code> should be wrapped as inlin
|
||||
<script src="assets/js/bootstrap-carousel.js"></script>
|
||||
<script src="assets/js/bootstrap-typeahead.js"></script>
|
||||
<script src="assets/js/bootstrap-affix.js"></script>
|
||||
|
||||
<script src="assets/js/holder/holder.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
|
||||
<script src="assets/js/application.js"></script>
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
var hogan = require('hogan.js')
|
||||
, fs = require('fs')
|
||||
, prod = process.argv[2] == 'production'
|
||||
, title = 'Twitter Bootstrap'
|
||||
, title = 'Bootstrap'
|
||||
|
||||
var layout, pages
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Components · Twitter Bootstrap</title>
|
||||
<title>Components · Bootstrap</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
@@ -19,11 +19,11 @@
|
||||
<![endif]-->
|
||||
|
||||
<!-- Le fav and touch icons -->
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.ico">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.png">
|
||||
|
||||
</head>
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
<a href="./components.html">Components</a>
|
||||
</li>
|
||||
<li class="">
|
||||
<a href="./javascript.html">Javascript</a>
|
||||
<a href="./javascript.html">JavaScript</a>
|
||||
</li>
|
||||
<li class="">
|
||||
<a href="./customize.html">Customize</a>
|
||||
@@ -98,6 +98,7 @@
|
||||
<li><a href="#thumbnails"><i class="icon-chevron-right"></i> Thumbnails</a></li>
|
||||
<li><a href="#alerts"><i class="icon-chevron-right"></i> Alerts</a></li>
|
||||
<li><a href="#progress"><i class="icon-chevron-right"></i> Progress bars</a></li>
|
||||
<li><a href="#media"><i class="icon-chevron-right"></i> Media object</a></li>
|
||||
<li><a href="#misc"><i class="icon-chevron-right"></i> Misc</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
@@ -113,7 +114,7 @@
|
||||
</div>
|
||||
|
||||
<h2>Example</h2>
|
||||
<p>Toggleable, contextual menu for displaying lists of links. Made interactive with the <a href="./javascript.html#dropdowns">dropdown javascript plugin</a>.</p>
|
||||
<p>Toggleable, contextual menu for displaying lists of links. Made interactive with the <a href="./javascript.html#dropdowns">dropdown JavaScript plugin</a>.</p>
|
||||
<div class="bs-docs-example">
|
||||
<div class="dropdown clearfix">
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu" style="display: block; position: static; margin-bottom: 5px; *width: 180px;">
|
||||
@@ -164,25 +165,74 @@
|
||||
|
||||
<h3>Sub menus on dropdowns</h3>
|
||||
<p>Add an extra level of dropdown menus, appearing on hover like those of OS X, with some simple markup additions. Add <code>.dropdown-submenu</code> to any <code>li</code> in an existing dropdown menu for automatic styling.</p>
|
||||
<div class="bs-docs-example">
|
||||
<div class="dropdown clearfix">
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu" style="display: block; position: static; margin-bottom: 5px; *width: 180px;">
|
||||
<li><a tabindex="-1" href="#">Action</a></li>
|
||||
<li><a tabindex="-1" href="#">Another action</a></li>
|
||||
<li><a tabindex="-1" href="#">Something else here</a></li>
|
||||
<li class="divider"></li>
|
||||
<li class="dropdown-submenu">
|
||||
<a tabindex="-1" href="#">More options</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="bs-docs-example bs-docs-example-submenus">
|
||||
|
||||
<div class="pull-left">
|
||||
<p class="muted">Default</p>
|
||||
<div class="dropdown clearfix">
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu">
|
||||
<li><a tabindex="-1" href="#">Action</a></li>
|
||||
<li><a tabindex="-1" href="#">Another action</a></li>
|
||||
<li><a tabindex="-1" href="#">Something else here</a></li>
|
||||
<li class="divider"></li>
|
||||
<li class="dropdown-submenu">
|
||||
<a tabindex="-1" href="#">More options</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="pull-left">
|
||||
<p class="muted">Dropup</p>
|
||||
<div class="dropup">
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu">
|
||||
<li><a tabindex="-1" href="#">Action</a></li>
|
||||
<li><a tabindex="-1" href="#">Another action</a></li>
|
||||
<li><a tabindex="-1" href="#">Something else here</a></li>
|
||||
<li class="divider"></li>
|
||||
<li class="dropdown-submenu">
|
||||
<a tabindex="-1" href="#">More options</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="pull-left">
|
||||
<p class="muted">Left submenu</p>
|
||||
<div class="dropdown">
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu">
|
||||
<li><a tabindex="-1" href="#">Action</a></li>
|
||||
<li><a tabindex="-1" href="#">Another action</a></li>
|
||||
<li><a tabindex="-1" href="#">Something else here</a></li>
|
||||
<li class="divider"></li>
|
||||
<li class="dropdown-submenu pull-left">
|
||||
<a tabindex="-1" href="#">More options</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
<li><a tabindex="-1" href="#">Second level link</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="dLabel">
|
||||
@@ -277,7 +327,7 @@
|
||||
|
||||
|
||||
<h4>Checkbox and radio flavors</h4>
|
||||
<p>Button groups can also function as radios, where only one button may be active, or checkboxes, where any number of buttons may be active. View <a href="./javascript.html#buttons">the Javascript docs</a> for that.</p>
|
||||
<p>Button groups can also function as radios, where only one button may be active, or checkboxes, where any number of buttons may be active. View <a href="./javascript.html#buttons">the JavaScript docs</a> for that.</p>
|
||||
|
||||
<h4>Dropdowns in button groups</h4>
|
||||
<p><span class="label label-info">Heads up!</span> Buttons with dropdowns must be individually wrapped in their own <code>.btn-group</code> within a <code>.btn-toolbar</code> for proper rendering.</p>
|
||||
@@ -418,9 +468,9 @@
|
||||
</div><!-- /btn-toolbar -->
|
||||
</div>
|
||||
|
||||
<h3>Requires javascript</h3>
|
||||
<h3>Requires JavaScript</h3>
|
||||
<p>Button dropdowns require the <a href="./javascript.html#dropdowns">Bootstrap dropdown plugin</a> to function.</p>
|
||||
<p>In some cases—like mobile—dropdown menus will extend outside the viewport. You need to resolve the alignment manually or with custom javascript.</p>
|
||||
<p>In some cases—like mobile—dropdown menus will extend outside the viewport. You need to resolve the alignment manually or with custom JavaScript.</p>
|
||||
|
||||
|
||||
<hr class="bs-docs-separator">
|
||||
@@ -669,7 +719,7 @@
|
||||
</pre>
|
||||
|
||||
<h3>Disabled state</h3>
|
||||
<p>For any nav component (tabs, pills, or list), add <code>.disabled</code> for <strong>gray links and no hover effects</strong>. Links will remain clickable, however, unless custom javascript is implemented to prevent those clicks.</p>
|
||||
<p>For any nav component (tabs, pills, or list), add <code>.disabled</code> for <strong>gray links and no hover effects</strong>. Links will remain clickable, however, unless you remove the <code>href</code> attribute. Alternatively, you could implement custom JavaScript to prevent those clicks.</p>
|
||||
<div class="bs-docs-example">
|
||||
<ul class="nav nav-pills">
|
||||
<li><a href="#">Clickable link</a></li>
|
||||
@@ -728,7 +778,7 @@
|
||||
|
||||
|
||||
<h2>Dropdowns</h2>
|
||||
<p>Add dropdown menus with a little extra HTML and the <a href="./javascript.html#dropdowns">dropdowns javascript plugin</a>.</p>
|
||||
<p>Add dropdown menus with a little extra HTML and the <a href="./javascript.html#dropdowns">dropdowns JavaScript plugin</a>.</p>
|
||||
|
||||
<h3>Tabs with dropdowns</h3>
|
||||
<div class="bs-docs-example">
|
||||
@@ -893,7 +943,7 @@
|
||||
<p>To make tabs fade in, add <code>.fade</code> to each <code>.tab-pane</code>.</p>
|
||||
|
||||
<h4>Requires jQuery plugin</h4>
|
||||
<p>All tabbable tabs are powered by our lightweight jQuery plugin. Read more about how to bring tabbable tabs to life <a href="./javascript.html#tabs">on the javascript docs page</a>.</p>
|
||||
<p>All tabbable tabs are powered by our lightweight jQuery plugin. Read more about how to bring tabbable tabs to life <a href="./javascript.html#tabs">on the JavaScript docs page</a>.</p>
|
||||
|
||||
<h3>Tabbable in any direction</h3>
|
||||
|
||||
@@ -1139,7 +1189,7 @@
|
||||
<p>Align nav links, search form, or text, use the <code>.pull-left</code> or <code>.pull-right</code> utility classes. Both classes will add a CSS float in the specified direction.</p>
|
||||
|
||||
<h3>Using dropdowns</h3>
|
||||
<p>Add dropdowns and dropups to the nav with a bit of markup and the <a href="./javascript.html#dropdowns">dropdowns javascript plugin</a>.</p>
|
||||
<p>Add dropdowns and dropups to the nav with a bit of markup and the <a href="./javascript.html#dropdowns">dropdowns JavaScript plugin</a>.</p>
|
||||
<pre class="prettyprint linenums">
|
||||
<ul class="nav">
|
||||
<li class="dropdown">
|
||||
@@ -1153,7 +1203,7 @@
|
||||
</li>
|
||||
</ul>
|
||||
</pre>
|
||||
<p>Visit the <a href="./javascript.html#dropdowns">javascript dropdowns documentation</a> for more markup and information on calling dropdowns.</p>
|
||||
<p>Visit the <a href="./javascript.html#dropdowns">JavaScript dropdowns documentation</a> for more markup and information on calling dropdowns.</p>
|
||||
|
||||
<h3>Text</h3>
|
||||
<p>Wrap strings of text in an element with <code>.navbar-text</code>, usually on a <code><p></code> tag for proper leading and color.</p>
|
||||
@@ -1241,13 +1291,13 @@
|
||||
<div class="navbar">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".navbar-responsive-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</a>
|
||||
<a class="brand" href="#">Title</a>
|
||||
<div class="nav-collapse">
|
||||
<div class="nav-collapse collapse navbar-responsive-collapse">
|
||||
<ul class="nav">
|
||||
<li class="active"><a href="#">Home</a></li>
|
||||
<li><a href="#">Link</a></li>
|
||||
@@ -1303,7 +1353,7 @@
|
||||
<a class="brand" href="#">Project name</a>
|
||||
|
||||
<!-- Everything you want hidden at 940px or less, place within here -->
|
||||
<div class="nav-collapse">
|
||||
<div class="nav-collapse collapse">
|
||||
<!-- .nav, .navbar-search, .navbar-form, etc -->
|
||||
</div>
|
||||
|
||||
@@ -1325,13 +1375,13 @@
|
||||
<div class="navbar navbar-inverse" style="position: static;">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".subnav-collapse">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".navbar-inverse-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</a>
|
||||
<a class="brand" href="#">Title</a>
|
||||
<div class="nav-collapse subnav-collapse">
|
||||
<div class="nav-collapse collapse navbar-inverse-collapse">
|
||||
<ul class="nav">
|
||||
<li class="active"><a href="#">Home</a></li>
|
||||
<li><a href="#">Link</a></li>
|
||||
@@ -1490,6 +1540,77 @@
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<h3>Sizes</h3>
|
||||
<p>Fancy larger or smaller pagination? Add <code>.pagination-large</code>, <code>.pagination-small</code>, or <code>.pagination-mini</code> for additional sizes.</p>
|
||||
<div class="bs-docs-example">
|
||||
<div class="pagination pagination-large">
|
||||
<ul>
|
||||
<li><a href="#">«</a></li>
|
||||
<li><a href="#">1</a></li>
|
||||
<li><a href="#">2</a></li>
|
||||
<li><a href="#">3</a></li>
|
||||
<li><a href="#">4</a></li>
|
||||
<li><a href="#">5</a></li>
|
||||
<li><a href="#">»</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="pagination">
|
||||
<ul>
|
||||
<li><a href="#">«</a></li>
|
||||
<li><a href="#">1</a></li>
|
||||
<li><a href="#">2</a></li>
|
||||
<li><a href="#">3</a></li>
|
||||
<li><a href="#">4</a></li>
|
||||
<li><a href="#">5</a></li>
|
||||
<li><a href="#">»</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="pagination pagination-small">
|
||||
<ul>
|
||||
<li><a href="#">«</a></li>
|
||||
<li><a href="#">1</a></li>
|
||||
<li><a href="#">2</a></li>
|
||||
<li><a href="#">3</a></li>
|
||||
<li><a href="#">4</a></li>
|
||||
<li><a href="#">5</a></li>
|
||||
<li><a href="#">»</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="pagination pagination-mini">
|
||||
<ul>
|
||||
<li><a href="#">«</a></li>
|
||||
<li><a href="#">1</a></li>
|
||||
<li><a href="#">2</a></li>
|
||||
<li><a href="#">3</a></li>
|
||||
<li><a href="#">4</a></li>
|
||||
<li><a href="#">5</a></li>
|
||||
<li><a href="#">»</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="pagination pagination-large">
|
||||
<ul>
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
<div class="pagination">
|
||||
<ul>
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
<div class="pagination pagination-small">
|
||||
<ul>
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
<div class="pagination pagination-mini">
|
||||
<ul>
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<h3>Alignment</h3>
|
||||
@@ -1738,6 +1859,9 @@
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h3>Easily collapsible</h3>
|
||||
<p>For easy implementation, labels and badges will simply collapse (via CSS's <code>:empty</code> selector) when no content exists within.</p>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
@@ -1800,22 +1924,22 @@
|
||||
<ul class="thumbnails">
|
||||
<li class="span3">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/260x180" alt="">
|
||||
<img data-src="holder.js/260x180" alt="">
|
||||
</a>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/260x180" alt="">
|
||||
<img data-src="holder.js/260x180" alt="">
|
||||
</a>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/260x180" alt="">
|
||||
<img data-src="holder.js/260x180" alt="">
|
||||
</a>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/260x180" alt="">
|
||||
<img data-src="holder.js/260x180" alt="">
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
@@ -1827,7 +1951,7 @@
|
||||
<ul class="thumbnails">
|
||||
<li class="span4">
|
||||
<div class="thumbnail">
|
||||
<img src="http://placehold.it/300x200" alt="">
|
||||
<img data-src="holder.js/300x200" alt="">
|
||||
<div class="caption">
|
||||
<h3>Thumbnail label</h3>
|
||||
<p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
|
||||
@@ -1837,7 +1961,7 @@
|
||||
</li>
|
||||
<li class="span4">
|
||||
<div class="thumbnail">
|
||||
<img src="http://placehold.it/300x200" alt="">
|
||||
<img data-src="holder.js/300x200" alt="">
|
||||
<div class="caption">
|
||||
<h3>Thumbnail label</h3>
|
||||
<p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
|
||||
@@ -1847,7 +1971,7 @@
|
||||
</li>
|
||||
<li class="span4">
|
||||
<div class="thumbnail">
|
||||
<img src="http://placehold.it/300x200" alt="">
|
||||
<img data-src="holder.js/300x200" alt="">
|
||||
<div class="caption">
|
||||
<h3>Thumbnail label</h3>
|
||||
<p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
|
||||
@@ -1873,7 +1997,7 @@
|
||||
<ul class="thumbnails">
|
||||
<li class="span4">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/300x200" alt="">
|
||||
<img data-src="holder.js/300x200" alt="">
|
||||
</a>
|
||||
</li>
|
||||
...
|
||||
@@ -1884,7 +2008,7 @@
|
||||
<ul class="thumbnails">
|
||||
<li class="span4">
|
||||
<div class="thumbnail">
|
||||
<img src="http://placehold.it/300x200" alt="">
|
||||
<img data-src="holder.js/300x200" alt="">
|
||||
<h3>Thumbnail label</h3>
|
||||
<p>Thumbnail caption...</p>
|
||||
</div>
|
||||
@@ -1898,27 +2022,27 @@
|
||||
<ul class="thumbnails">
|
||||
<li class="span4">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/360x270" alt="">
|
||||
<img data-src="holder.js/360x270" alt="">
|
||||
</a>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/260x120" alt="">
|
||||
<img data-src="holder.js/260x120" alt="">
|
||||
</a>
|
||||
</li>
|
||||
<li class="span2">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/160x120" alt="">
|
||||
<img data-src="holder.js/160x120" alt="">
|
||||
</a>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/260x120" alt="">
|
||||
<img data-src="holder.js/260x120" alt="">
|
||||
</a>
|
||||
</li>
|
||||
<li class="span2">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/160x120" alt="">
|
||||
<img data-src="holder.js/160x120" alt="">
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
@@ -1927,6 +2051,7 @@
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Alerts
|
||||
================================================== -->
|
||||
<section id="alerts">
|
||||
@@ -1944,18 +2069,18 @@
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="alert">
|
||||
<button type="button" class="close" data-dismiss="alert">×</button>
|
||||
<button type="button" class="close" data-dismiss="alert">&times;</button>
|
||||
<strong>Warning!</strong> Best check yo self, you're not looking too good.
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<h3>Dismiss buttons</h3>
|
||||
<p>Mobile Safari and Mobile Opera browsers, in addition to the <code>data-dismiss="alert"</code> attribute, require an <code>href="#"</code> for the dismissal of alerts when using an <code><a></code> tag.</p>
|
||||
<pre class="prettyprint linenums"><a href="#" class="close" data-dismiss="alert">×</a></pre>
|
||||
<pre class="prettyprint linenums"><a href="#" class="close" data-dismiss="alert">&times;</a></pre>
|
||||
<p>Alternatively, you may use a <code><button></code> element with the data attribute, which we have opted to do for our docs. When using <code><button></code>, you must include <code>type="button"</code> or your forms may not submit.</p>
|
||||
<pre class="prettyprint linenums"><button type="button" class="close" data-dismiss="alert">×</button></pre>
|
||||
<pre class="prettyprint linenums"><button type="button" class="close" data-dismiss="alert">&times;</button></pre>
|
||||
|
||||
<h3>Dismiss alerts via javascript</h3>
|
||||
<h3>Dismiss alerts via JavaScript</h3>
|
||||
<p>Use the <a href="./javascript.html#alerts">alerts jQuery plugin</a> for quick and easy dismissal of alerts.</p>
|
||||
|
||||
|
||||
@@ -1973,7 +2098,7 @@
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="alert alert-block">
|
||||
<button type="button" class="close" data-dismiss="alert">×</button>
|
||||
<button type="button" class="close" data-dismiss="alert">&times;</button>
|
||||
<h4>Warning!</h4>
|
||||
Best check yo self, you're not...
|
||||
</div>
|
||||
@@ -2029,6 +2154,7 @@
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Progress bars
|
||||
================================================== -->
|
||||
<section id="progress">
|
||||
@@ -2175,6 +2301,144 @@
|
||||
|
||||
|
||||
|
||||
<!-- Media object
|
||||
================================================== -->
|
||||
<section id="media">
|
||||
<div class="page-header">
|
||||
<h1>Media object</h1>
|
||||
</div>
|
||||
<p class="lead">Abstract object styles for building various types of components (like blog comments, Tweets, etc) that feature a left- or right-aligned image alongside textual content.</p>
|
||||
|
||||
<h2>Default example</h2>
|
||||
<p>The default media allow to float a media object (images, video, audio) to the left or right of a content block.</p>
|
||||
<div class="bs-docs-example">
|
||||
<div class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">Media heading</h4>
|
||||
Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
|
||||
</div>
|
||||
</div>
|
||||
<div class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">Media heading</h4>
|
||||
Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
|
||||
<div class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">Media heading</h4>
|
||||
Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">Media heading</h4>
|
||||
...
|
||||
|
||||
<!-- Nested media object -->
|
||||
<div class="media">
|
||||
...
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
|
||||
<hr class="bs-docs-separator">
|
||||
|
||||
|
||||
<h2>Media list</h2>
|
||||
<p>With a bit of extra markup, you can use media inside list (useful for comment threads or articles lists).</p>
|
||||
<div class="bs-docs-example">
|
||||
<ul class="media-list">
|
||||
<li class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">Media heading</h4>
|
||||
<p>Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis.</p>
|
||||
<!-- Nested media object -->
|
||||
<div class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">Nested media heading</h4>
|
||||
Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis.
|
||||
<!-- Nested media object -->
|
||||
<div class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">Nested media heading</h4>
|
||||
Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Nested media object -->
|
||||
<div class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">Nested media heading</h4>
|
||||
Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="media">
|
||||
<a class="pull-right" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">Media heading</h4>
|
||||
Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis.
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<ul class="media-list">
|
||||
<li class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">Media heading</h4>
|
||||
...
|
||||
|
||||
<!-- Nested media object -->
|
||||
<div class="media">
|
||||
...
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</pre>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Miscellaneous
|
||||
================================================== -->
|
||||
@@ -2224,7 +2488,7 @@
|
||||
<p><button class="close" style="float: none;">×</button></p>
|
||||
</div>
|
||||
<pre class="prettyprint linenums"><button class="close">&times;</button></pre>
|
||||
<p>iOS devices require an href="#" for click events if you rather use an anchor.</p>
|
||||
<p>iOS devices require an href="#" for click events if you would rather use an anchor.</p>
|
||||
<pre class="prettyprint linenums"><a class="close" href="#">&times;</a></pre>
|
||||
|
||||
<h2>Helper classes</h2>
|
||||
@@ -2297,13 +2561,14 @@ class="clearfix"
|
||||
================================================== -->
|
||||
<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>.</p>
|
||||
<p>Code licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>. Documentation licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p>Icons from <a href="http://glyphicons.com">Glyphicons Free</a>, licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p>Designed and built with all the love in the world by <a href="http://twitter.com/mdo" target="_blank">@mdo</a> and <a href="http://twitter.com/fat" target="_blank">@fat</a>.</p>
|
||||
<p>Code licensed under <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>, documentation under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p><a href="http://glyphicons.com">Glyphicons Free</a> licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<ul class="footer-links">
|
||||
<li><a href="http://blog.getbootstrap.com">Read the blog</a></li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Submit issues</a></li>
|
||||
<li><a href="http://blog.getbootstrap.com">Blog</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Issues</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/wiki">Roadmap and changelog</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
@@ -2316,7 +2581,6 @@ class="clearfix"
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
|
||||
<script src="assets/js/jquery.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
<script src="assets/js/bootstrap-transition.js"></script>
|
||||
<script src="assets/js/bootstrap-alert.js"></script>
|
||||
<script src="assets/js/bootstrap-modal.js"></script>
|
||||
@@ -2330,6 +2594,10 @@ class="clearfix"
|
||||
<script src="assets/js/bootstrap-carousel.js"></script>
|
||||
<script src="assets/js/bootstrap-typeahead.js"></script>
|
||||
<script src="assets/js/bootstrap-affix.js"></script>
|
||||
|
||||
<script src="assets/js/holder/holder.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
|
||||
<script src="assets/js/application.js"></script>
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Customize · Twitter Bootstrap</title>
|
||||
<title>Customize · Bootstrap</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
@@ -19,11 +19,11 @@
|
||||
<![endif]-->
|
||||
|
||||
<!-- Le fav and touch icons -->
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.ico">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.png">
|
||||
|
||||
</head>
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
<a href="./components.html">Components</a>
|
||||
</li>
|
||||
<li class="">
|
||||
<a href="./javascript.html">Javascript</a>
|
||||
<a href="./javascript.html">JavaScript</a>
|
||||
</li>
|
||||
<li class="active">
|
||||
<a href="./customize.html">Customize</a>
|
||||
@@ -74,7 +74,7 @@
|
||||
<header class="jumbotron subhead" id="overview">
|
||||
<div class="container">
|
||||
<h1>Customize and download</h1>
|
||||
<p class="lead"><a href="https://github.com/twitter/bootstrap/zipball/master">Download Bootstrap</a> or customize variables, components, javascript plugins, and more.</p>
|
||||
<p class="lead"><a href="https://github.com/twitter/bootstrap/zipball/master">Download Bootstrap</a> or customize variables, components, JavaScript plugins, and more.</p>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
@@ -133,6 +133,7 @@
|
||||
<label class="checkbox"><input checked="checked" type="checkbox" value="alerts.less"> Alerts</label>
|
||||
<label class="checkbox"><input checked="checked" type="checkbox" value="progress-bars.less"> Progress bars</label>
|
||||
<label class="checkbox"><input checked="checked" type="checkbox" value="hero-unit.less"> Hero unit</label>
|
||||
<label class="checkbox"><input checked="checked" type="checkbox" value="media.less"> Media component</label>
|
||||
<h3>JS Components</h3>
|
||||
<label class="checkbox"><input checked="checked" type="checkbox" value="tooltip.less"> Tooltips</label>
|
||||
<label class="checkbox"><input checked="checked" type="checkbox" value="popovers.less"> Popovers</label>
|
||||
@@ -297,12 +298,14 @@
|
||||
<input type="text" class="span3" placeholder="Georgia, 'Times New Roman', Times, serif">
|
||||
<label>@monoFontFamily</label>
|
||||
<input type="text" class="span3" placeholder="Menlo, Monaco, 'Courier New', monospace">
|
||||
|
||||
<label>@baseFontSize</label>
|
||||
<input type="text" class="span3" placeholder="14px">
|
||||
<label>@baseFontFamily</label>
|
||||
<input type="text" class="span3" placeholder="@sansFontFamily">
|
||||
<label>@baseLineHeight</label>
|
||||
<input type="text" class="span3" placeholder="20px">
|
||||
|
||||
<label>@altFontFamily</label>
|
||||
<input type="text" class="span3" placeholder="@serifFontFamily">
|
||||
<label>@headingsFontFamily</label>
|
||||
@@ -311,6 +314,28 @@
|
||||
<input type="text" class="span3" placeholder="bold">
|
||||
<label>@headingsColor</label>
|
||||
<input type="text" class="span3" placeholder="inherit">
|
||||
|
||||
<label>@fontSizeLarge</label>
|
||||
<input type="text" class="span3" placeholder="@baseFontSize * 1.25">
|
||||
<label>@fontSizeSmall</label>
|
||||
<input type="text" class="span3" placeholder="@baseFontSize * 0.85">
|
||||
<label>@fontSizeMini</label>
|
||||
<input type="text" class="span3" placeholder="@baseFontSize * 0.75">
|
||||
|
||||
<label>@paddingLarge</label>
|
||||
<input type="text" class="span3" placeholder="11px 19px">
|
||||
<label>@paddingSmall</label>
|
||||
<input type="text" class="span3" placeholder="2px 10px">
|
||||
<label>@paddingMini</label>
|
||||
<input type="text" class="span3" placeholder="1px 6px">
|
||||
|
||||
<label>@baseBorderRadius</label>
|
||||
<input type="text" class="span3" placeholder="4px">
|
||||
<label>@borderRadiusLarge</label>
|
||||
<input type="text" class="span3" placeholder="6px">
|
||||
<label>@borderRadiusSmall</label>
|
||||
<input type="text" class="span3" placeholder="3px">
|
||||
|
||||
<label>@heroUnitBackground</label>
|
||||
<input type="text" class="span3" placeholder="@grayLighter">
|
||||
<label>@heroUnitHeadingColor</label>
|
||||
@@ -344,7 +369,7 @@
|
||||
<label>@btnPrimaryBackground</label>
|
||||
<input type="text" class="span3" placeholder="@linkColor">
|
||||
<label>@btnPrimaryBackgroundHighlight</label>
|
||||
<input type="text" class="span3" placeholder="darken(@white, 10%);">
|
||||
<input type="text" class="span3" placeholder="darken(@white, 10%)">
|
||||
|
||||
</div><!-- /span -->
|
||||
<div class="span3">
|
||||
@@ -397,6 +422,11 @@
|
||||
<label>@navbarSearchPlaceholderColor</label>
|
||||
<input type="text" class="span3" placeholder="#ccc">
|
||||
|
||||
<label>@navbarCollapseWidth</label>
|
||||
<input type="text" class="span3" placeholder="979px">
|
||||
<label>@navbarCollapseDesktopWidth</label>
|
||||
<input type="text" class="span3" placeholder="@navbarCollapseWidth + 1">
|
||||
|
||||
<h3>Dropdowns</h3>
|
||||
<label>@dropdownBackground</label>
|
||||
<input type="text" class="span3" placeholder="@white">
|
||||
@@ -439,13 +469,14 @@
|
||||
================================================== -->
|
||||
<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>.</p>
|
||||
<p>Code licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>. Documentation licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p>Icons from <a href="http://glyphicons.com">Glyphicons Free</a>, licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p>Designed and built with all the love in the world by <a href="http://twitter.com/mdo" target="_blank">@mdo</a> and <a href="http://twitter.com/fat" target="_blank">@fat</a>.</p>
|
||||
<p>Code licensed under <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>, documentation under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p><a href="http://glyphicons.com">Glyphicons Free</a> licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<ul class="footer-links">
|
||||
<li><a href="http://blog.getbootstrap.com">Read the blog</a></li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Submit issues</a></li>
|
||||
<li><a href="http://blog.getbootstrap.com">Blog</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Issues</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/wiki">Roadmap and changelog</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
@@ -458,7 +489,6 @@
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
|
||||
<script src="assets/js/jquery.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
<script src="assets/js/bootstrap-transition.js"></script>
|
||||
<script src="assets/js/bootstrap-alert.js"></script>
|
||||
<script src="assets/js/bootstrap-modal.js"></script>
|
||||
@@ -472,6 +502,10 @@
|
||||
<script src="assets/js/bootstrap-carousel.js"></script>
|
||||
<script src="assets/js/bootstrap-typeahead.js"></script>
|
||||
<script src="assets/js/bootstrap-affix.js"></script>
|
||||
|
||||
<script src="assets/js/holder/holder.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
|
||||
<script src="assets/js/application.js"></script>
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,452 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Carousel Template · Bootstrap</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<!-- Le styles -->
|
||||
<link href="../assets/css/bootstrap.css" rel="stylesheet">
|
||||
<link href="../assets/css/bootstrap-responsive.css" rel="stylesheet">
|
||||
<style>
|
||||
|
||||
/* GLOBAL STYLES
|
||||
-------------------------------------------------- */
|
||||
/* Padding below the footer and lighter body text */
|
||||
|
||||
body {
|
||||
padding-bottom: 40px;
|
||||
color: #5a5a5a;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* CUSTOMIZE THE NAVBAR
|
||||
-------------------------------------------------- */
|
||||
|
||||
/* Special class on .container surrounding .navbar, used for positioning it into place. */
|
||||
.navbar-wrapper {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
z-index: 10;
|
||||
margin-top: 20px;
|
||||
margin-bottom: -90px; /* Negative margin to pull up carousel. 90px is roughly margins and height of navbar. */
|
||||
}
|
||||
.navbar-wrapper .navbar {
|
||||
|
||||
}
|
||||
|
||||
/* Remove border and change up box shadow for more contrast */
|
||||
.navbar .navbar-inner {
|
||||
border: 0;
|
||||
-webkit-box-shadow: 0 2px 10px rgba(0,0,0,.25);
|
||||
-moz-box-shadow: 0 2px 10px rgba(0,0,0,.25);
|
||||
box-shadow: 0 2px 10px rgba(0,0,0,.25);
|
||||
}
|
||||
|
||||
/* Downsize the brand/project name a bit */
|
||||
.navbar .brand {
|
||||
padding: 14px 20px 16px; /* Increase vertical padding to match navbar links */
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
text-shadow: 0 -1px 0 rgba(0,0,0,.5);
|
||||
}
|
||||
|
||||
/* Navbar links: increase padding for taller navbar */
|
||||
.navbar .nav > li > a {
|
||||
padding: 15px 20px;
|
||||
}
|
||||
|
||||
/* Offset the responsive button for proper vertical alignment */
|
||||
.navbar .btn-navbar {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* CUSTOMIZE THE NAVBAR
|
||||
-------------------------------------------------- */
|
||||
|
||||
/* Carousel base class */
|
||||
.carousel {
|
||||
margin-bottom: 60px;
|
||||
}
|
||||
|
||||
.carousel .container {
|
||||
position: relative;
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
.carousel-control {
|
||||
height: 80px;
|
||||
margin-top: 0;
|
||||
font-size: 120px;
|
||||
text-shadow: 0 1px 1px rgba(0,0,0,.4);
|
||||
background-color: transparent;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
.carousel .item {
|
||||
height: 500px;
|
||||
}
|
||||
.carousel img {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
min-width: 100%;
|
||||
height: 500px;
|
||||
}
|
||||
|
||||
.carousel-caption {
|
||||
background-color: transparent;
|
||||
position: static;
|
||||
max-width: 550px;
|
||||
padding: 0 20px;
|
||||
margin-top: 200px;
|
||||
}
|
||||
.carousel-caption h1,
|
||||
.carousel-caption .lead {
|
||||
margin: 0;
|
||||
line-height: 1.25;
|
||||
color: #fff;
|
||||
text-shadow: 0 1px 1px rgba(0,0,0,.4);
|
||||
}
|
||||
.carousel-caption .btn {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* MARKETING CONTENT
|
||||
-------------------------------------------------- */
|
||||
|
||||
/* Center align the text within the three columns below the carousel */
|
||||
.marketing .span4 {
|
||||
text-align: center;
|
||||
}
|
||||
.marketing h2 {
|
||||
font-weight: normal;
|
||||
}
|
||||
.marketing .span4 p {
|
||||
margin-left: 10px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
|
||||
/* Featurettes
|
||||
------------------------- */
|
||||
|
||||
.featurette-divider {
|
||||
margin: 80px 0; /* Space out the Bootstrap <hr> more */
|
||||
}
|
||||
.featurette {
|
||||
padding-top: 120px; /* Vertically center images part 1: add padding above and below text. */
|
||||
overflow: hidden; /* Vertically center images part 2: clear their floats. */
|
||||
}
|
||||
.featurette-image {
|
||||
margin-top: -120px; /* Vertically center images part 3: negative margin up the image the same amount of the padding to center it. */
|
||||
}
|
||||
|
||||
/* Give some space on the sides of the floated elements so text doesn't run right into it. */
|
||||
.featurette-image.pull-left {
|
||||
margin-right: 40px;
|
||||
}
|
||||
.featurette-image.pull-right {
|
||||
margin-left: 40px;
|
||||
}
|
||||
|
||||
/* Thin out the marketing headings */
|
||||
.featurette-heading {
|
||||
font-size: 50px;
|
||||
font-weight: 300;
|
||||
line-height: 1;
|
||||
letter-spacing: -1px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* RESPONSIVE CSS
|
||||
-------------------------------------------------- */
|
||||
|
||||
@media (max-width: 979px) {
|
||||
|
||||
.container.navbar-wrapper {
|
||||
margin-bottom: 0;
|
||||
width: auto;
|
||||
}
|
||||
.navbar-inner {
|
||||
border-radius: 0;
|
||||
margin: -20px 0;
|
||||
}
|
||||
|
||||
.carousel .item {
|
||||
height: 500px;
|
||||
}
|
||||
.carousel img {
|
||||
width: auto;
|
||||
height: 500px;
|
||||
}
|
||||
|
||||
.featurette {
|
||||
height: auto;
|
||||
padding: 0;
|
||||
}
|
||||
.featurette-image.pull-left,
|
||||
.featurette-image.pull-right {
|
||||
display: block;
|
||||
float: none;
|
||||
max-width: 40%;
|
||||
margin: 0 auto 20px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@media (max-width: 767px) {
|
||||
|
||||
.navbar-inner {
|
||||
margin: -20px;
|
||||
}
|
||||
|
||||
.carousel {
|
||||
margin-left: -20px;
|
||||
margin-right: -20px;
|
||||
}
|
||||
.carousel .container {
|
||||
|
||||
}
|
||||
.carousel .item {
|
||||
height: 300px;
|
||||
}
|
||||
.carousel img {
|
||||
height: 300px;
|
||||
}
|
||||
.carousel-caption {
|
||||
width: 65%;
|
||||
padding: 0 70px;
|
||||
margin-top: 100px;
|
||||
}
|
||||
.carousel-caption h1 {
|
||||
font-size: 30px;
|
||||
}
|
||||
.carousel-caption .lead,
|
||||
.carousel-caption .btn {
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
.marketing .span4 + .span4 {
|
||||
margin-top: 40px;
|
||||
}
|
||||
|
||||
.featurette-heading {
|
||||
font-size: 30px;
|
||||
}
|
||||
.featurette .lead {
|
||||
font-size: 18px;
|
||||
line-height: 1.5;
|
||||
}
|
||||
|
||||
}
|
||||
</style>
|
||||
|
||||
<!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
|
||||
<!--[if lt IE 9]>
|
||||
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
|
||||
<!-- Fav and touch icons -->
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="../assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="../assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="../assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="../assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="../assets/ico/favicon.png">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
|
||||
|
||||
<!-- NAVBAR
|
||||
================================================== -->
|
||||
<div class="navbar-wrapper">
|
||||
<!-- Wrap the .navbar in .container to center it within the absolutely positioned parent. -->
|
||||
<div class="container">
|
||||
|
||||
<div class="navbar navbar-inverse">
|
||||
<div class="navbar-inner">
|
||||
<!-- Responsive Navbar Part 1: Button for triggering responsive navbar (not covered in tutorial). Include responsive CSS to utilize. -->
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</a>
|
||||
<a class="brand" href="#">Project name</a>
|
||||
<!-- Responsive Navbar Part 2: Place all navbar contents you want collapsed withing .navbar-collapse.collapse. -->
|
||||
<div class="nav-collapse collapse">
|
||||
<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>
|
||||
<!-- Read about Bootstrap dropdowns at http://twitter.github.com/bootstrap/javascript.html#dropdowns -->
|
||||
<li class="dropdown">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="#">Action</a></li>
|
||||
<li><a href="#">Another action</a></li>
|
||||
<li><a href="#">Something else here</a></li>
|
||||
<li class="divider"></li>
|
||||
<li class="nav-header">Nav header</li>
|
||||
<li><a href="#">Separated link</a></li>
|
||||
<li><a href="#">One more separated link</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div><!--/.nav-collapse -->
|
||||
</div><!-- /.navbar-inner -->
|
||||
</div><!-- /.navbar -->
|
||||
|
||||
</div> <!-- /.container -->
|
||||
</div><!-- /.navbar-wrapper -->
|
||||
|
||||
|
||||
|
||||
<!-- Carousel
|
||||
================================================== -->
|
||||
<div id="myCarousel" class="carousel slide">
|
||||
<div class="carousel-inner">
|
||||
<div class="item active">
|
||||
<img src="../assets/img/examples/slide-01.jpg" alt="">
|
||||
<div class="container">
|
||||
<div class="carousel-caption">
|
||||
<h1>Example headline.</h1>
|
||||
<p class="lead">Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
|
||||
<a class="btn btn-large btn-primary" href="#">Sign up today</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<img src="../assets/img/examples/slide-02.jpg" alt="">
|
||||
<div class="container">
|
||||
<div class="carousel-caption">
|
||||
<h1>Another example headline.</h1>
|
||||
<p class="lead">Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
|
||||
<a class="btn btn-large btn-primary" href="#">Learn more</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<img src="../assets/img/examples/slide-03.jpg" alt="">
|
||||
<div class="container">
|
||||
<div class="carousel-caption">
|
||||
<h1>One more for good measure.</h1>
|
||||
<p class="lead">Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
|
||||
<a class="btn btn-large btn-primary" href="#">Browse gallery</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a class="left carousel-control" href="#myCarousel" data-slide="prev">‹</a>
|
||||
<a class="right carousel-control" href="#myCarousel" data-slide="next">›</a>
|
||||
</div><!-- /.carousel -->
|
||||
|
||||
|
||||
|
||||
<!-- Marketing messaging and featurettes
|
||||
================================================== -->
|
||||
<!-- Wrap the rest of the page in another container to center all the content. -->
|
||||
|
||||
<div class="container marketing">
|
||||
|
||||
<!-- Three columns of text below the carousel -->
|
||||
<div class="row">
|
||||
<div class="span4">
|
||||
<img class="img-circle" data-src="holder.js/140x140">
|
||||
<h2>Heading</h2>
|
||||
<p>Donec sed odio dui. Etiam porta sem malesuada magna mollis euismod. Nullam id dolor id nibh ultricies vehicula ut id elit. Morbi leo risus, porta ac consectetur ac, vestibulum at eros. Praesent commodo cursus magna, vel scelerisque nisl consectetur et.</p>
|
||||
<p><a class="btn" href="#">View details »</a></p>
|
||||
</div><!-- /.span4 -->
|
||||
<div class="span4">
|
||||
<img class="img-circle" data-src="holder.js/140x140">
|
||||
<h2>Heading</h2>
|
||||
<p>Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum. 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 »</a></p>
|
||||
</div><!-- /.span4 -->
|
||||
<div class="span4">
|
||||
<img class="img-circle" data-src="holder.js/140x140">
|
||||
<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 »</a></p>
|
||||
</div><!-- /.span4 -->
|
||||
</div><!-- /.row -->
|
||||
|
||||
|
||||
<!-- START THE FEATURETTES -->
|
||||
|
||||
<hr class="featurette-divider">
|
||||
|
||||
<div class="featurette">
|
||||
<img class="featurette-image pull-right" src="../assets/img/examples/browser-icon-chrome.png">
|
||||
<h2 class="featurette-heading">First featurette headling. <span class="muted">It'll blow your mind.</span></h2>
|
||||
<p class="lead">Donec ullamcorper nulla non metus auctor fringilla. Vestibulum id ligula porta felis euismod semper. Praesent commodo cursus magna, vel scelerisque nisl consectetur. Fusce dapibus, tellus ac cursus commodo.</p>
|
||||
</div>
|
||||
|
||||
<hr class="featurette-divider">
|
||||
|
||||
<div class="featurette">
|
||||
<img class="featurette-image pull-left" src="../assets/img/examples/browser-icon-firefox.png">
|
||||
<h2 class="featurette-heading">Oh yeah, it's that good. <span class="muted">See for yourself.</span></h2>
|
||||
<p class="lead">Donec ullamcorper nulla non metus auctor fringilla. Vestibulum id ligula porta felis euismod semper. Praesent commodo cursus magna, vel scelerisque nisl consectetur. Fusce dapibus, tellus ac cursus commodo.</p>
|
||||
</div>
|
||||
|
||||
<hr class="featurette-divider">
|
||||
|
||||
<div class="featurette">
|
||||
<img class="featurette-image pull-right" src="../assets/img/examples/browser-icon-safari.png">
|
||||
<h2 class="featurette-heading">And lastly, this one. <span class="muted">Checkmate.</span></h2>
|
||||
<p class="lead">Donec ullamcorper nulla non metus auctor fringilla. Vestibulum id ligula porta felis euismod semper. Praesent commodo cursus magna, vel scelerisque nisl consectetur. Fusce dapibus, tellus ac cursus commodo.</p>
|
||||
</div>
|
||||
|
||||
<hr class="featurette-divider">
|
||||
|
||||
<!-- /END THE FEATURETTES -->
|
||||
|
||||
|
||||
<!-- FOOTER -->
|
||||
<footer>
|
||||
<p class="pull-right"><a href="#">Back to top</a></p>
|
||||
<p>© 2012 Company, Inc. · <a href="#">Privacy</a> · <a href="#">Terms</a></p>
|
||||
</footer>
|
||||
|
||||
</div><!-- /.container -->
|
||||
|
||||
|
||||
|
||||
<!-- Le javascript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script src="../assets/js/jquery.js"></script>
|
||||
<script src="../assets/js/bootstrap-transition.js"></script>
|
||||
<script src="../assets/js/bootstrap-alert.js"></script>
|
||||
<script src="../assets/js/bootstrap-modal.js"></script>
|
||||
<script src="../assets/js/bootstrap-dropdown.js"></script>
|
||||
<script src="../assets/js/bootstrap-scrollspy.js"></script>
|
||||
<script src="../assets/js/bootstrap-tab.js"></script>
|
||||
<script src="../assets/js/bootstrap-tooltip.js"></script>
|
||||
<script src="../assets/js/bootstrap-popover.js"></script>
|
||||
<script src="../assets/js/bootstrap-button.js"></script>
|
||||
<script src="../assets/js/bootstrap-collapse.js"></script>
|
||||
<script src="../assets/js/bootstrap-carousel.js"></script>
|
||||
<script src="../assets/js/bootstrap-typeahead.js"></script>
|
||||
<script>
|
||||
!function ($) {
|
||||
$(function(){
|
||||
// carousel demo
|
||||
$('#myCarousel').carousel()
|
||||
})
|
||||
}(window.jQuery)
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -20,17 +20,17 @@
|
||||
</style>
|
||||
<link href="../assets/css/bootstrap-responsive.css" rel="stylesheet">
|
||||
|
||||
<!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
|
||||
<!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
|
||||
<!--[if lt IE 9]>
|
||||
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
|
||||
<!-- Le fav and touch icons -->
|
||||
<link rel="shortcut icon" href="../assets/ico/favicon.ico">
|
||||
<!-- Fav and touch icons -->
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="../assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="../assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="../assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="../assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="../assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="../assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="../assets/ico/favicon.png">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
@@ -17,17 +17,17 @@
|
||||
</style>
|
||||
<link href="../assets/css/bootstrap-responsive.css" rel="stylesheet">
|
||||
|
||||
<!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
|
||||
<!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
|
||||
<!--[if lt IE 9]>
|
||||
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
|
||||
<!-- Le fav and touch icons -->
|
||||
<link rel="shortcut icon" href="../assets/ico/favicon.ico">
|
||||
<!-- Fav and touch icons -->
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="../assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="../assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="../assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="../assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="../assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="../assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="../assets/ico/favicon.png">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
@@ -0,0 +1,172 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Template · Bootstrap</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<!-- Le styles -->
|
||||
<link href="../assets/css/bootstrap.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
body {
|
||||
padding-top: 20px;
|
||||
padding-bottom: 60px;
|
||||
}
|
||||
|
||||
/* Custom container */
|
||||
.container {
|
||||
margin: 0 auto;
|
||||
max-width: 1000px;
|
||||
}
|
||||
.container > hr {
|
||||
margin: 60px 0;
|
||||
}
|
||||
|
||||
/* Main marketing message and sign up button */
|
||||
.jumbotron {
|
||||
margin: 80px 0;
|
||||
text-align: center;
|
||||
}
|
||||
.jumbotron h1 {
|
||||
font-size: 100px;
|
||||
line-height: 1;
|
||||
}
|
||||
.jumbotron .lead {
|
||||
font-size: 24px;
|
||||
line-height: 1.25;
|
||||
}
|
||||
.jumbotron .btn {
|
||||
font-size: 21px;
|
||||
padding: 14px 24px;
|
||||
}
|
||||
|
||||
/* Supporting marketing content */
|
||||
.marketing {
|
||||
margin: 60px 0;
|
||||
}
|
||||
.marketing p + h4 {
|
||||
margin-top: 28px;
|
||||
}
|
||||
|
||||
|
||||
/* Customize the navbar links to be fill the entire space of the .navbar */
|
||||
.navbar .navbar-inner {
|
||||
padding: 0;
|
||||
}
|
||||
.navbar .nav {
|
||||
margin: 0;
|
||||
}
|
||||
.navbar .nav li {
|
||||
display: table-cell;
|
||||
width: 1%;
|
||||
float: none;
|
||||
}
|
||||
.navbar .nav li a {
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
border-left: 1px solid rgba(255,255,255,.75);
|
||||
border-right: 1px solid rgba(0,0,0,.1);
|
||||
}
|
||||
.navbar .nav li:first-child a {
|
||||
border-left: 0;
|
||||
border-radius: 3px 0 0 3px;
|
||||
}
|
||||
.navbar .nav li:last-child a {
|
||||
border-right: 0;
|
||||
border-radius: 0 3px 3px 0;
|
||||
}
|
||||
</style>
|
||||
<link href="../assets/css/bootstrap-responsive.css" rel="stylesheet">
|
||||
|
||||
<!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
|
||||
<!--[if lt IE 9]>
|
||||
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
|
||||
<!-- Fav and touch icons -->
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="../assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="../assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="../assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="../assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="../assets/ico/favicon.png">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<div class="container">
|
||||
|
||||
<div class="masthead">
|
||||
<h3 class="muted">Project name</h3>
|
||||
<div class="navbar">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<ul class="nav">
|
||||
<li class="active"><a href="#">Home</a></li>
|
||||
<li><a href="#">Projects</a></li>
|
||||
<li><a href="#">Services</a></li>
|
||||
<li><a href="#">Downloads</a></li>
|
||||
<li><a href="#">About</a></li>
|
||||
<li><a href="#">Contact</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- /.navbar -->
|
||||
</div>
|
||||
|
||||
<!-- Jumbotron -->
|
||||
<div class="jumbotron">
|
||||
<h1>Marketing stuff!</h1>
|
||||
<p class="lead">Cras justo odio, dapibus ac facilisis in, egestas eget quam. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p>
|
||||
<a class="btn btn-large btn-success" href="#">Get started today</a>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<!-- Example row of columns -->
|
||||
<div class="row-fluid">
|
||||
<div class="span4">
|
||||
<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 »</a></p>
|
||||
</div>
|
||||
<div class="span4">
|
||||
<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 »</a></p>
|
||||
</div>
|
||||
<div class="span4">
|
||||
<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.</p>
|
||||
<p><a class="btn" href="#">View details »</a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<div class="footer">
|
||||
<p>© Company 2012</p>
|
||||
</div>
|
||||
|
||||
</div> <!-- /container -->
|
||||
|
||||
<!-- Le javascript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script src="../assets/js/jquery.js"></script>
|
||||
<script src="../assets/js/bootstrap-transition.js"></script>
|
||||
<script src="../assets/js/bootstrap-alert.js"></script>
|
||||
<script src="../assets/js/bootstrap-modal.js"></script>
|
||||
<script src="../assets/js/bootstrap-dropdown.js"></script>
|
||||
<script src="../assets/js/bootstrap-scrollspy.js"></script>
|
||||
<script src="../assets/js/bootstrap-tab.js"></script>
|
||||
<script src="../assets/js/bootstrap-tooltip.js"></script>
|
||||
<script src="../assets/js/bootstrap-popover.js"></script>
|
||||
<script src="../assets/js/bootstrap-button.js"></script>
|
||||
<script src="../assets/js/bootstrap-collapse.js"></script>
|
||||
<script src="../assets/js/bootstrap-carousel.js"></script>
|
||||
<script src="../assets/js/bootstrap-typeahead.js"></script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,137 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Template · Bootstrap</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<!-- Le styles -->
|
||||
<link href="../assets/css/bootstrap.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
body {
|
||||
padding-top: 20px;
|
||||
padding-bottom: 40px;
|
||||
}
|
||||
|
||||
/* Custom container */
|
||||
.container-narrow {
|
||||
margin: 0 auto;
|
||||
max-width: 700px;
|
||||
}
|
||||
.container-narrow > hr {
|
||||
margin: 30px 0;
|
||||
}
|
||||
|
||||
/* Main marketing message and sign up button */
|
||||
.jumbotron {
|
||||
margin: 60px 0;
|
||||
text-align: center;
|
||||
}
|
||||
.jumbotron h1 {
|
||||
font-size: 72px;
|
||||
line-height: 1;
|
||||
}
|
||||
.jumbotron .btn {
|
||||
font-size: 21px;
|
||||
padding: 14px 24px;
|
||||
}
|
||||
|
||||
/* Supporting marketing content */
|
||||
.marketing {
|
||||
margin: 60px 0;
|
||||
}
|
||||
.marketing p + h4 {
|
||||
margin-top: 28px;
|
||||
}
|
||||
</style>
|
||||
<link href="../assets/css/bootstrap-responsive.css" rel="stylesheet">
|
||||
|
||||
<!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
|
||||
<!--[if lt IE 9]>
|
||||
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
|
||||
<!-- Fav and touch icons -->
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="../assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="../assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="../assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="../assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="../assets/ico/favicon.png">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<div class="container-narrow">
|
||||
|
||||
<div class="masthead">
|
||||
<ul class="nav nav-pills pull-right">
|
||||
<li class="active"><a href="#">Home</a></li>
|
||||
<li><a href="#">About</a></li>
|
||||
<li><a href="#">Contact</a></li>
|
||||
</ul>
|
||||
<h3 class="muted">Project name</h3>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<div class="jumbotron">
|
||||
<h1>Super awesome marketing speak!</h1>
|
||||
<p class="lead">Cras justo odio, dapibus ac facilisis in, egestas eget quam. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p>
|
||||
<a class="btn btn-large btn-success" href="#">Sign up today</a>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<div class="row-fluid marketing">
|
||||
<div class="span6">
|
||||
<h4>Subheading</h4>
|
||||
<p>Donec id elit non mi porta gravida at eget metus. Maecenas faucibus mollis interdum.</p>
|
||||
|
||||
<h4>Subheading</h4>
|
||||
<p>Morbi leo risus, porta ac consectetur ac, vestibulum at eros. Cras mattis consectetur purus sit amet fermentum.</p>
|
||||
|
||||
<h4>Subheading</h4>
|
||||
<p>Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
</div>
|
||||
|
||||
<div class="span6">
|
||||
<h4>Subheading</h4>
|
||||
<p>Donec id elit non mi porta gravida at eget metus. Maecenas faucibus mollis interdum.</p>
|
||||
|
||||
<h4>Subheading</h4>
|
||||
<p>Morbi leo risus, porta ac consectetur ac, vestibulum at eros. Cras mattis consectetur purus sit amet fermentum.</p>
|
||||
|
||||
<h4>Subheading</h4>
|
||||
<p>Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<div class="footer">
|
||||
<p>© Company 2012</p>
|
||||
</div>
|
||||
|
||||
</div> <!-- /container -->
|
||||
|
||||
<!-- Le javascript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script src="../assets/js/jquery.js"></script>
|
||||
<script src="../assets/js/bootstrap-transition.js"></script>
|
||||
<script src="../assets/js/bootstrap-alert.js"></script>
|
||||
<script src="../assets/js/bootstrap-modal.js"></script>
|
||||
<script src="../assets/js/bootstrap-dropdown.js"></script>
|
||||
<script src="../assets/js/bootstrap-scrollspy.js"></script>
|
||||
<script src="../assets/js/bootstrap-tab.js"></script>
|
||||
<script src="../assets/js/bootstrap-tooltip.js"></script>
|
||||
<script src="../assets/js/bootstrap-popover.js"></script>
|
||||
<script src="../assets/js/bootstrap-button.js"></script>
|
||||
<script src="../assets/js/bootstrap-collapse.js"></script>
|
||||
<script src="../assets/js/bootstrap-carousel.js"></script>
|
||||
<script src="../assets/js/bootstrap-typeahead.js"></script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,94 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Sign in · Twitter Bootstrap</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<!-- Le styles -->
|
||||
<link href="../assets/css/bootstrap.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
body {
|
||||
padding-top: 40px;
|
||||
padding-bottom: 40px;
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
.form-signin {
|
||||
max-width: 300px;
|
||||
padding: 19px 29px 29px;
|
||||
margin: 0 auto 20px;
|
||||
background-color: #fff;
|
||||
border: 1px solid #e5e5e5;
|
||||
-webkit-border-radius: 5px;
|
||||
-moz-border-radius: 5px;
|
||||
border-radius: 5px;
|
||||
-webkit-box-shadow: 0 1px 2px rgba(0,0,0,.05);
|
||||
-moz-box-shadow: 0 1px 2px rgba(0,0,0,.05);
|
||||
box-shadow: 0 1px 2px rgba(0,0,0,.05);
|
||||
}
|
||||
.form-signin .form-signin-heading,
|
||||
.form-signin .checkbox {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.form-signin input[type="text"],
|
||||
.form-signin input[type="password"] {
|
||||
font-size: 16px;
|
||||
height: auto;
|
||||
margin-bottom: 15px;
|
||||
padding: 7px 9px;
|
||||
}
|
||||
|
||||
</style>
|
||||
<link href="../assets/css/bootstrap-responsive.css" rel="stylesheet">
|
||||
|
||||
<!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
|
||||
<!--[if lt IE 9]>
|
||||
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
|
||||
<!-- Fav and touch icons -->
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="../assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="../assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="../assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="../assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="../assets/ico/favicon.png">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<div class="container">
|
||||
|
||||
<form class="form-signin">
|
||||
<h2 class="form-signin-heading">Please sign in</h2>
|
||||
<input type="text" class="input-block-level" placeholder="Email address">
|
||||
<input type="password" class="input-block-level" placeholder="Password">
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" value="remember-me"> Remember me
|
||||
</label>
|
||||
<button class="btn btn-large btn-primary" type="submit">Sign in</button>
|
||||
</form>
|
||||
|
||||
</div> <!-- /container -->
|
||||
|
||||
<!-- Le javascript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script src="../assets/js/jquery.js"></script>
|
||||
<script src="../assets/js/bootstrap-transition.js"></script>
|
||||
<script src="../assets/js/bootstrap-alert.js"></script>
|
||||
<script src="../assets/js/bootstrap-modal.js"></script>
|
||||
<script src="../assets/js/bootstrap-dropdown.js"></script>
|
||||
<script src="../assets/js/bootstrap-scrollspy.js"></script>
|
||||
<script src="../assets/js/bootstrap-tab.js"></script>
|
||||
<script src="../assets/js/bootstrap-tooltip.js"></script>
|
||||
<script src="../assets/js/bootstrap-popover.js"></script>
|
||||
<script src="../assets/js/bootstrap-button.js"></script>
|
||||
<script src="../assets/js/bootstrap-collapse.js"></script>
|
||||
<script src="../assets/js/bootstrap-carousel.js"></script>
|
||||
<script src="../assets/js/bootstrap-typeahead.js"></script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -16,17 +16,17 @@
|
||||
</style>
|
||||
<link href="../assets/css/bootstrap-responsive.css" rel="stylesheet">
|
||||
|
||||
<!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
|
||||
<!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
|
||||
<!--[if lt IE 9]>
|
||||
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
|
||||
<!-- Le fav and touch icons -->
|
||||
<link rel="shortcut icon" href="../assets/ico/favicon.ico">
|
||||
<!-- Fav and touch icons -->
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="../assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="../assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="../assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="../assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="../assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="../assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="../assets/ico/favicon.png">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
@@ -0,0 +1,124 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Sticky footer · Twitter Bootstrap</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<!-- CSS -->
|
||||
<link href="../assets/css/bootstrap.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
|
||||
/* Sticky footer styles
|
||||
-------------------------------------------------- */
|
||||
|
||||
html,
|
||||
body {
|
||||
height: 100%;
|
||||
/* The html and body elements cannot have any padding or margin. */
|
||||
}
|
||||
|
||||
/* Wrapper for page content to push down footer */
|
||||
#wrap {
|
||||
min-height: 100%;
|
||||
height: auto !important;
|
||||
height: 100%;
|
||||
/* Negative indent footer by it's height */
|
||||
margin: 0 auto -60px;
|
||||
}
|
||||
|
||||
/* Set the fixed height of the footer here */
|
||||
#push,
|
||||
#footer {
|
||||
height: 60px;
|
||||
}
|
||||
#footer {
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
/* Lastly, apply responsive CSS fixes as necessary */
|
||||
@media (max-width: 767px) {
|
||||
#footer {
|
||||
margin-left: -20px;
|
||||
margin-right: -20px;
|
||||
padding-left: 20px;
|
||||
padding-right: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Custom page CSS
|
||||
-------------------------------------------------- */
|
||||
/* Not required for template or sticky footer method. */
|
||||
|
||||
.container {
|
||||
width: auto;
|
||||
max-width: 680px;
|
||||
}
|
||||
.container .credit {
|
||||
margin: 20px 0;
|
||||
}
|
||||
|
||||
</style>
|
||||
<link href="../assets/css/bootstrap-responsive.css" rel="stylesheet">
|
||||
|
||||
<!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
|
||||
<!--[if lt IE 9]>
|
||||
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
|
||||
<!-- Fav and touch icons -->
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="../assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="../assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="../assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="../assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="../assets/ico/favicon.png">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
|
||||
<!-- Part 1: Wrap all page content here -->
|
||||
<div id="wrap">
|
||||
|
||||
<!-- Begin page content -->
|
||||
<div class="container">
|
||||
<div class="page-header">
|
||||
<h1>Sticky footer</h1>
|
||||
</div>
|
||||
<p class="lead">Pin a fixed-height footer to the bottom of the viewport in desktop browsers with this custom HTML and CSS.</p>
|
||||
</div>
|
||||
|
||||
<div id="push"></div>
|
||||
</div>
|
||||
|
||||
<div id="footer">
|
||||
<div class="container">
|
||||
<p class="muted credit">Example courtesy <a href="http://martinbean.co.uk">Martin Bean</a> and <a href="http://ryanfait.com/sticky-footer/">Ryan Fait</a>.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Le javascript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script src="../assets/js/jquery.js"></script>
|
||||
<script src="../assets/js/bootstrap-transition.js"></script>
|
||||
<script src="../assets/js/bootstrap-alert.js"></script>
|
||||
<script src="../assets/js/bootstrap-modal.js"></script>
|
||||
<script src="../assets/js/bootstrap-dropdown.js"></script>
|
||||
<script src="../assets/js/bootstrap-scrollspy.js"></script>
|
||||
<script src="../assets/js/bootstrap-tab.js"></script>
|
||||
<script src="../assets/js/bootstrap-tooltip.js"></script>
|
||||
<script src="../assets/js/bootstrap-popover.js"></script>
|
||||
<script src="../assets/js/bootstrap-button.js"></script>
|
||||
<script src="../assets/js/bootstrap-collapse.js"></script>
|
||||
<script src="../assets/js/bootstrap-carousel.js"></script>
|
||||
<script src="../assets/js/bootstrap-typeahead.js"></script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -2,7 +2,7 @@
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Extend · Twitter Bootstrap</title>
|
||||
<title>Extend · Bootstrap</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
@@ -19,11 +19,11 @@
|
||||
<![endif]-->
|
||||
|
||||
<!-- Le fav and touch icons -->
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.ico">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.png">
|
||||
|
||||
</head>
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
<a href="./components.html">Components</a>
|
||||
</li>
|
||||
<li class="">
|
||||
<a href="./javascript.html">Javascript</a>
|
||||
<a href="./javascript.html">JavaScript</a>
|
||||
</li>
|
||||
<li class="">
|
||||
<a href="./customize.html">Customize</a>
|
||||
@@ -147,7 +147,7 @@
|
||||
<pre>$ lessc ./less/bootstrap.less > bootstrap.css</pre>
|
||||
<p>Be sure to include <code>--compress</code> in that command if you're trying to save some bytes!</p>
|
||||
|
||||
<h3>Javascript</h3>
|
||||
<h3>JavaScript</h3>
|
||||
<p><a href="http://lesscss.org/">Download the latest Less.js</a> and include the path to it (and Bootstrap) in the <code><head></code>.</p>
|
||||
<pre class="prettyprint">
|
||||
<link rel="stylesheet/less" href="/path/to/bootstrap.less">
|
||||
@@ -180,18 +180,18 @@
|
||||
|
||||
<h3>Setup file structure</h3>
|
||||
<p>Download the latest compiled Bootstrap and place into your project. For example, you might have something like this:</p>
|
||||
<pre class="prettyprint">
|
||||
app/
|
||||
├── layouts/
|
||||
└── templates/
|
||||
public/
|
||||
├── css/
|
||||
│ ├── bootstrap.min.css
|
||||
├── js/
|
||||
│ ├── bootstrap.min.js
|
||||
└── img/
|
||||
├── glyphicons-halflings.png
|
||||
└── glyphicons-halflings-white.png
|
||||
<pre>
|
||||
<span class="icon-folder-open"></span> app/
|
||||
<span class="icon-folder-open"></span> layouts/
|
||||
<span class="icon-folder-open"></span> templates/
|
||||
<span class="icon-folder-open"></span> public/
|
||||
<span class="icon-folder-open"></span> css/
|
||||
<span class="icon-file"></span> bootstrap.min.css
|
||||
<span class="icon-folder-open"></span> js/
|
||||
<span class="icon-file"></span> bootstrap.min.js
|
||||
<span class="icon-folder-open"></span> img/
|
||||
<span class="icon-file"></span> glyphicons-halflings.png
|
||||
<span class="icon-file"></span> glyphicons-halflings-white.png
|
||||
</pre>
|
||||
|
||||
<h3>Utilize starter template</h3>
|
||||
@@ -245,13 +245,14 @@
|
||||
================================================== -->
|
||||
<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>.</p>
|
||||
<p>Code licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>. Documentation licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p>Icons from <a href="http://glyphicons.com">Glyphicons Free</a>, licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p>Designed and built with all the love in the world by <a href="http://twitter.com/mdo" target="_blank">@mdo</a> and <a href="http://twitter.com/fat" target="_blank">@fat</a>.</p>
|
||||
<p>Code licensed under <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>, documentation under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p><a href="http://glyphicons.com">Glyphicons Free</a> licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<ul class="footer-links">
|
||||
<li><a href="http://blog.getbootstrap.com">Read the blog</a></li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Submit issues</a></li>
|
||||
<li><a href="http://blog.getbootstrap.com">Blog</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Issues</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/wiki">Roadmap and changelog</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
@@ -264,7 +265,6 @@
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
|
||||
<script src="assets/js/jquery.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
<script src="assets/js/bootstrap-transition.js"></script>
|
||||
<script src="assets/js/bootstrap-alert.js"></script>
|
||||
<script src="assets/js/bootstrap-modal.js"></script>
|
||||
@@ -278,6 +278,10 @@
|
||||
<script src="assets/js/bootstrap-carousel.js"></script>
|
||||
<script src="assets/js/bootstrap-typeahead.js"></script>
|
||||
<script src="assets/js/bootstrap-affix.js"></script>
|
||||
|
||||
<script src="assets/js/holder/holder.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
|
||||
<script src="assets/js/application.js"></script>
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Getting · Twitter Bootstrap</title>
|
||||
<title>Getting · Bootstrap</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
@@ -19,11 +19,11 @@
|
||||
<![endif]-->
|
||||
|
||||
<!-- Le fav and touch icons -->
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.ico">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.png">
|
||||
|
||||
</head>
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
<a href="./components.html">Components</a>
|
||||
</li>
|
||||
<li class="">
|
||||
<a href="./javascript.html">Javascript</a>
|
||||
<a href="./javascript.html">JavaScript</a>
|
||||
</li>
|
||||
<li class="">
|
||||
<a href="./customize.html">Customize</a>
|
||||
@@ -138,10 +138,9 @@
|
||||
├── js/
|
||||
│ ├── bootstrap.js
|
||||
│ ├── bootstrap.min.js
|
||||
├── img/
|
||||
│ ├── glyphicons-halflings.png
|
||||
│ ├── glyphicons-halflings-white.png
|
||||
└── README.md
|
||||
└── img/
|
||||
├── glyphicons-halflings.png
|
||||
└── glyphicons-halflings-white.png
|
||||
</pre>
|
||||
<p>This is the most basic form of Bootstrap: compiled files for quick drop-in usage in nearly any web project. We provide compiled CSS and JS (<code>bootstrap.*</code>), as well as compiled and minified CSS and JS (<code>bootstrap.min.*</code>). The image files are compressed using <a href="http://imageoptim.com/">ImageOptim</a>, a Mac app for compressing PNGs.</p>
|
||||
<p>Please note that all JavaScript plugins require jQuery to be included.</p>
|
||||
@@ -164,11 +163,11 @@
|
||||
<p>Styles for common HTML elements like typography, code, tables, forms, and buttons. Also includes <a href="http://glyphicons.com">Glyphicons</a>, a great little icon set.</p>
|
||||
<h4><a href="http://twitter.github.com/bootstrap/components.html">Components</a></h4>
|
||||
<p>Basic styles for common interface components like tabs and pills, navbar, alerts, page headers, and more.</p>
|
||||
<h4><a href="http://twitter.github.com/bootstrap/javascript.html">Javascript plugins</a></h4>
|
||||
<p>Similar to Components, these Javascript plugins are interactive components for things like tooltips, popovers, modals, and more.</p>
|
||||
<h4><a href="http://twitter.github.com/bootstrap/javascript.html">JavaScript plugins</a></h4>
|
||||
<p>Similar to Components, these JavaScript plugins are interactive components for things like tooltips, popovers, modals, and more.</p>
|
||||
|
||||
<h2>List of components</h2>
|
||||
<p>Together, the <strong>Components</strong> and <strong>Javascript plugins</strong> sections provide the following interface elements:</p>
|
||||
<p>Together, the <strong>Components</strong> and <strong>JavaScript plugins</strong> sections provide the following interface elements:</p>
|
||||
<ul>
|
||||
<li>Button groups</li>
|
||||
<li>Button dropdowns</li>
|
||||
@@ -199,7 +198,7 @@
|
||||
<div class="page-header">
|
||||
<h1>4. Basic HTML template</h1>
|
||||
</div>
|
||||
<p class="lead">With a brief intro into the contents out of the way, we can focus putting Bootstrap to use. To do that, we'll utilize a basic HTML template that includes everything we mentioned in the <a href="#file-structure">File structure</a>.</p>
|
||||
<p class="lead">With a brief intro into the contents out of the way, we can focus on putting Bootstrap to use. To do that, we'll utilize a basic HTML template that includes everything we mentioned in the <a href="#file-structure">File structure</a>.</p>
|
||||
<p>Now, here's a look at a <strong>typical HTML file</strong>:</p>
|
||||
<pre class="prettyprint linenums">
|
||||
<!DOCTYPE html>
|
||||
@@ -220,7 +219,7 @@
|
||||
<head>
|
||||
<title>Bootstrap 101 Template</title>
|
||||
<!-- Bootstrap -->
|
||||
<link href="css/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
|
||||
</head>
|
||||
<body>
|
||||
<h1>Hello, world!</h1>
|
||||
@@ -242,6 +241,13 @@
|
||||
</div>
|
||||
<p class="lead">Move beyond the base template with a few example layouts. We encourage folks to iterate on these examples and not simply use them as an end result.</p>
|
||||
<ul class="thumbnails bootstrap-examples">
|
||||
<li class="span3">
|
||||
<a class="thumbnail" href="examples/starter-template.html">
|
||||
<img src="assets/img/examples/bootstrap-example-starter.jpg" alt="">
|
||||
</a>
|
||||
<h4>Starter template</h4>
|
||||
<p>A barebones HTML document with all the Bootstrap CSS and JavaScript included.</p>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a class="thumbnail" href="examples/hero.html">
|
||||
<img src="assets/img/examples/bootstrap-example-hero.jpg" alt="">
|
||||
@@ -256,12 +262,35 @@
|
||||
<h4>Fluid layout</h4>
|
||||
<p>Uses our new responsive, fluid grid system to create a seamless liquid layout.</p>
|
||||
</li>
|
||||
|
||||
<li class="span3">
|
||||
<a class="thumbnail" href="examples/starter-template.html">
|
||||
<img src="assets/img/examples/bootstrap-example-starter.jpg" alt="">
|
||||
<a class="thumbnail" href="examples/marketing-narrow.html">
|
||||
<img src="assets/img/examples/bootstrap-example-marketing-narrow.png" alt="">
|
||||
</a>
|
||||
<h4>Starter template</h4>
|
||||
<p>A barebones HTML document with all the Bootstrap CSS and javascript included.</p>
|
||||
<h4>Narrow marketing</h4>
|
||||
<p>Slim, lightweight marketing template for small projects or teams.</p>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a class="thumbnail" href="examples/signin.html">
|
||||
<img src="assets/img/examples/bootstrap-example-signin.png" alt="">
|
||||
</a>
|
||||
<h4>Sign in</h4>
|
||||
<p>Barebones sign in form with custom, larger form controls and a flexible layout.</p>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a class="thumbnail" href="examples/sticky-footer.html">
|
||||
<img src="assets/img/examples/bootstrap-example-sticky-footer.png" alt="">
|
||||
</a>
|
||||
<h4>Sticky footer</h4>
|
||||
<p>Pin a fixed-height footer to the bottom of the user's viewport.</p>
|
||||
</li>
|
||||
|
||||
<li class="span3">
|
||||
<a class="thumbnail" href="examples/carousel.html">
|
||||
<img src="assets/img/examples/bootstrap-example-carousel.png" alt="">
|
||||
</a>
|
||||
<h4>Carousel jumbotron</h4>
|
||||
<p>A more interactive riff on the basic marketing site featuring a prominent carousel.</p>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
@@ -294,13 +323,14 @@
|
||||
================================================== -->
|
||||
<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>.</p>
|
||||
<p>Code licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>. Documentation licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p>Icons from <a href="http://glyphicons.com">Glyphicons Free</a>, licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p>Designed and built with all the love in the world by <a href="http://twitter.com/mdo" target="_blank">@mdo</a> and <a href="http://twitter.com/fat" target="_blank">@fat</a>.</p>
|
||||
<p>Code licensed under <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>, documentation under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p><a href="http://glyphicons.com">Glyphicons Free</a> licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<ul class="footer-links">
|
||||
<li><a href="http://blog.getbootstrap.com">Read the blog</a></li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Submit issues</a></li>
|
||||
<li><a href="http://blog.getbootstrap.com">Blog</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Issues</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/wiki">Roadmap and changelog</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
@@ -313,7 +343,6 @@
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
|
||||
<script src="assets/js/jquery.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
<script src="assets/js/bootstrap-transition.js"></script>
|
||||
<script src="assets/js/bootstrap-alert.js"></script>
|
||||
<script src="assets/js/bootstrap-modal.js"></script>
|
||||
@@ -327,6 +356,10 @@
|
||||
<script src="assets/js/bootstrap-carousel.js"></script>
|
||||
<script src="assets/js/bootstrap-typeahead.js"></script>
|
||||
<script src="assets/js/bootstrap-affix.js"></script>
|
||||
|
||||
<script src="assets/js/holder/holder.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
|
||||
<script src="assets/js/application.js"></script>
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Twitter Bootstrap</title>
|
||||
<title>Bootstrap</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
@@ -19,11 +19,11 @@
|
||||
<![endif]-->
|
||||
|
||||
<!-- Le fav and touch icons -->
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.ico">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.png">
|
||||
|
||||
</head>
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
<a href="./components.html">Components</a>
|
||||
</li>
|
||||
<li class="">
|
||||
<a href="./javascript.html">Javascript</a>
|
||||
<a href="./javascript.html">JavaScript</a>
|
||||
</li>
|
||||
<li class="">
|
||||
<a href="./customize.html">Customize</a>
|
||||
@@ -73,11 +73,22 @@
|
||||
<div class="container">
|
||||
<h1>Bootstrap</h1>
|
||||
<p>Sleek, intuitive, and powerful front-end framework for faster and easier web development.</p>
|
||||
<p><a href="assets/bootstrap.zip" class="btn btn-primary btn-large" >Download Bootstrap</a></p>
|
||||
<p>
|
||||
<a href="assets/bootstrap.zip" class="btn btn-primary btn-large" >Download Bootstrap</a>
|
||||
</p>
|
||||
<ul class="masthead-links">
|
||||
<li><a href="http://github.com/twitter/bootstrap" >GitHub project</a></li>
|
||||
<li><a href="./extend.html" >Extend</a></li>
|
||||
<li>Version 2.1.1</li>
|
||||
<li>
|
||||
<a href="http://github.com/twitter/bootstrap" >GitHub project</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="./getting-started.html#examples" >Examples</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="./extend.html" >Extend</a>
|
||||
</li>
|
||||
<li>
|
||||
Version 2.2.2
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
@@ -89,7 +100,7 @@
|
||||
<iframe class="github-btn" src="http://ghbtns.com/github-btn.html?user=twitter&repo=bootstrap&type=watch&count=true" allowtransparency="true" frameborder="0" scrolling="0" width="100px" height="20px"></iframe>
|
||||
</li>
|
||||
<li>
|
||||
<iframe class="github-btn" src="http://ghbtns.com/github-btn.html?user=twitter&repo=bootstrap&type=fork&count=true" allowtransparency="true" frameborder="0" scrolling="0" width="98px" height="20px"></iframe>
|
||||
<iframe class="github-btn" src="http://ghbtns.com/github-btn.html?user=twitter&repo=bootstrap&type=fork&count=true" allowtransparency="true" frameborder="0" scrolling="0" width="102px" height="20px"></iframe>
|
||||
</li>
|
||||
<li class="follow-btn">
|
||||
<a href="https://twitter.com/twbootstrap" class="twitter-follow-button" data-link-color="#0069D6" data-show-count="true">Follow @twbootstrap</a>
|
||||
@@ -110,19 +121,19 @@
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span4">
|
||||
<img src="assets/img/bs-docs-twitter-github.png">
|
||||
<img class="marketing-img" src="assets/img/bs-docs-twitter-github.png">
|
||||
<h2>By nerds, for nerds.</h2>
|
||||
<p>Built at Twitter by <a href="http://twitter.com/mdo">@mdo</a> and <a href="http://twitter.com/fat">@fat</a>, Bootstrap utilizes <a href="http://lesscss.org">LESS CSS</a>, is compiled via <a href="http://nodejs.org">Node</a>, and is managed through <a href="http://github.com">GitHub</a> to help nerds do awesome stuff on the web.</p>
|
||||
</div>
|
||||
<div class="span4">
|
||||
<img src="assets/img/bs-docs-responsive-illustrations.png">
|
||||
<img class="marketing-img" src="assets/img/bs-docs-responsive-illustrations.png">
|
||||
<h2>Made for everyone.</h2>
|
||||
<p>Bootstrap was made to not only look and behave great in the latest desktop browsers (as well as IE7!), but in tablet and smartphone browsers via <a href="./scaffolding.html#responsive">responsive CSS</a> as well.</p>
|
||||
</div>
|
||||
<div class="span4">
|
||||
<img src="assets/img/bs-docs-bootstrap-features.png">
|
||||
<img class="marketing-img" src="assets/img/bs-docs-bootstrap-features.png">
|
||||
<h2>Packed with features.</h2>
|
||||
<p>A 12-column responsive <a href="./scaffolding.html#grid">grid</a>, dozens of components, <a href="./javascript.html">javascript plugins</a>, typography, form controls, and even a <a href="./customize.html">web-based Customizer</a> to make Bootstrap your own.</p>
|
||||
<p>A 12-column responsive <a href="./scaffolding.html#gridSystem">grid</a>, dozens of components, <a href="./javascript.html">JavaScript plugins</a>, typography, form controls, and even a <a href="./customize.html">web-based Customizer</a> to make Bootstrap your own.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -143,8 +154,8 @@
|
||||
</a>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a class="thumbnail" href="http://www.fleetio.com/" target="_blank">
|
||||
<img src="assets/img/example-sites/fleetio.png" alt="Fleetio">
|
||||
<a class="thumbnail" href="http://www.gathercontent.com/" target="_blank">
|
||||
<img src="assets/img/example-sites/gathercontent.png" alt="Gather Content">
|
||||
</a>
|
||||
</li>
|
||||
<li class="span3">
|
||||
@@ -165,13 +176,14 @@
|
||||
================================================== -->
|
||||
<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>.</p>
|
||||
<p>Code licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>. Documentation licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p>Icons from <a href="http://glyphicons.com">Glyphicons Free</a>, licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p>Designed and built with all the love in the world by <a href="http://twitter.com/mdo" target="_blank">@mdo</a> and <a href="http://twitter.com/fat" target="_blank">@fat</a>.</p>
|
||||
<p>Code licensed under <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>, documentation under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p><a href="http://glyphicons.com">Glyphicons Free</a> licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<ul class="footer-links">
|
||||
<li><a href="http://blog.getbootstrap.com">Read the blog</a></li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Submit issues</a></li>
|
||||
<li><a href="http://blog.getbootstrap.com">Blog</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Issues</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/wiki">Roadmap and changelog</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
@@ -184,7 +196,6 @@
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
|
||||
<script src="assets/js/jquery.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
<script src="assets/js/bootstrap-transition.js"></script>
|
||||
<script src="assets/js/bootstrap-alert.js"></script>
|
||||
<script src="assets/js/bootstrap-modal.js"></script>
|
||||
@@ -198,6 +209,10 @@
|
||||
<script src="assets/js/bootstrap-carousel.js"></script>
|
||||
<script src="assets/js/bootstrap-typeahead.js"></script>
|
||||
<script src="assets/js/bootstrap-affix.js"></script>
|
||||
|
||||
<script src="assets/js/holder/holder.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
|
||||
<script src="assets/js/application.js"></script>
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Javascript · Twitter Bootstrap</title>
|
||||
<title>Javascript · Bootstrap</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
@@ -19,11 +19,11 @@
|
||||
<![endif]-->
|
||||
|
||||
<!-- Le fav and touch icons -->
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.ico">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.png">
|
||||
|
||||
</head>
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
<a href="./components.html">Components</a>
|
||||
</li>
|
||||
<li class="active">
|
||||
<a href="./javascript.html">Javascript</a>
|
||||
<a href="./javascript.html">JavaScript</a>
|
||||
</li>
|
||||
<li class="">
|
||||
<a href="./customize.html">Customize</a>
|
||||
@@ -73,7 +73,7 @@
|
||||
================================================== -->
|
||||
<header class="jumbotron subhead">
|
||||
<div class="container">
|
||||
<h1>JavaScript for Bootstrap</h1>
|
||||
<h1>JavaScript</h1>
|
||||
<p class="lead">Bring Bootstrap's components to life—now with 13 custom jQuery plugins.
|
||||
</div>
|
||||
</header>
|
||||
@@ -112,7 +112,7 @@
|
||||
</div>
|
||||
|
||||
<h3>Individual or compiled</h3>
|
||||
<p>If you have downloaded the latest version of Bootstrap, both <strong>bootstrap.js</strong> and <strong>bootstrap.min.js</strong> contain all of the plugins listed on this page.</p>
|
||||
<p>Plugins can be included individually (though some have required dependencies), or all at once. Both <strong>bootstrap.js</strong> and <strong>bootstrap.min.js</strong> contain all plugins in a single file.</p>
|
||||
|
||||
<h3>Data attributes</h3>
|
||||
<p>You can use all Bootstrap plugins purely through the markup API without writing a single line of JavaScript. This is Bootstrap's first class API and should be your first consideration when using a plugin.</p>
|
||||
@@ -120,7 +120,7 @@
|
||||
<p>That said, in some situations it may be desirable to turn this functionality off. Therefore, we also provide the ability to disable the data attribute API by unbinding all events on the body namespaced with `'data-api'`. This looks like this:
|
||||
<pre class="prettyprint linenums">$('body').off('.data-api')</pre>
|
||||
|
||||
<p>Alternatively, to target a specific plugin, just include the plugins name as a namespace along with the data-api namespace like this:</p>
|
||||
<p>Alternatively, to target a specific plugin, just include the plugin's name as a namespace along with the data-api namespace like this:</p>
|
||||
<pre class="prettyprint linenums">$('body').off('.alert.data-api')</pre>
|
||||
|
||||
<h3>Programmatic API</h3>
|
||||
@@ -132,11 +132,19 @@ $("#myModal").modal() // initialized with defaults
|
||||
$("#myModal").modal({ keyboard: false }) // initialized with no keyboard
|
||||
$("#myModal").modal('show') // initializes and invokes show immediately</p>
|
||||
</pre>
|
||||
<p>Each plugin also exposes it's raw constructor on a `Constructor` property: <code>$.fn.popover.Constructor</code>. If you'd like to get a particular plugin instance, retrieve it directly from an element: <code>$('[rel=popover]').data('popover')</code>.</p>
|
||||
<p>Each plugin also exposes its raw constructor on a `Constructor` property: <code>$.fn.popover.Constructor</code>. If you'd like to get a particular plugin instance, retrieve it directly from an element: <code>$('[rel=popover]').data('popover')</code>.</p>
|
||||
|
||||
<h3>No Conflict</h3>
|
||||
<p>Sometimes it's neccessary to use bootstrap plugins with other ui frameworks. In these circumstances, occasionally namespace collisions can occur. If this happens, you may call <code>.noCoflict</code> on the plugin you wish to revert the value of.</p>
|
||||
|
||||
<pre class="prettyprint linenums">
|
||||
var bootstrapButton = $.fn.button.noConflict() // return $.fn.button to previously assigned value
|
||||
$.fn.bootstrapBtn = bootstrapButton // give $().bootstrapBtn the bootstrap functionality
|
||||
</pre>
|
||||
|
||||
<h3>Events</h3>
|
||||
<p>Bootstrap provides custom events for most plugin's unique actions. Generally, these come in an infinitive and past participle form - where the infinitive (ex. <code>show</code>) is triggered at the start of an event, and it's past participle form (ex. <code>shown</code>) is trigger on the completion of an action.</p>
|
||||
<p>All infinitive events provide preventDefault functionality. This provides the abililty to stop the execution of an action before it starts.</p>
|
||||
<p>Bootstrap provides custom events for most plugin's unique actions. Generally, these come in an infinitive and past participle form - where the infinitive (ex. <code>show</code>) is triggered at the start of an event, and its past participle form (ex. <code>shown</code>) is trigger on the completion of an action.</p>
|
||||
<p>All infinitive events provide preventDefault functionality. This provides the ability to stop the execution of an action before it starts.</p>
|
||||
<pre class="prettyprint linenums">
|
||||
$('#myModal').on('show', function (e) {
|
||||
if (!data) return e.preventDefault() // stops modal from being shown
|
||||
@@ -181,13 +189,13 @@ $('#myModal').on('show', function (e) {
|
||||
<h3>Static example</h3>
|
||||
<p>A rendered modal with header, body, and set of actions in the footer.</p>
|
||||
<div class="bs-docs-example" style="background-color: #f5f5f5;">
|
||||
<div class="modal" style="position: relative; top: auto; left: auto; margin: 0 auto 20px; z-index: 1; max-width: 100%;">
|
||||
<div class="modal" style="position: relative; top: auto; left: auto; right: auto; margin: 0 auto 20px; z-index: 1; max-width: 100%;">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3>Modal header</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>One fine body…</p>
|
||||
<p>One fine body…</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<a href="#" class="btn">Close</a>
|
||||
@@ -202,7 +210,7 @@ $('#myModal').on('show', function (e) {
|
||||
<h3>Modal header</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>One fine body…</p>
|
||||
<p>One fine body…</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<a href="#" class="btn">Close</a>
|
||||
@@ -224,7 +232,7 @@ $('#myModal').on('show', function (e) {
|
||||
<p>Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem.</p>
|
||||
|
||||
<h4>Popover in a modal</h4>
|
||||
<p>This <a href="#" role="button" class="btn popover-test" title="A Title" data-content="And here's some amazing content. It's very engaging. right?">button</a> should trigger a popover on hover.</p>
|
||||
<p>This <a href="#" role="button" class="btn popover-test" title="A Title" data-content="And here's some amazing content. It's very engaging. right?">button</a> should trigger a popover on click.</p>
|
||||
|
||||
<h4>Tooltips in a modal</h4>
|
||||
<p><a href="#" class="tooltip-test" title="Tooltip">This link</a> and <a href="#" class="tooltip-test" title="Tooltip">that link</a> should have tooltips on hover.</p>
|
||||
@@ -249,17 +257,17 @@ $('#myModal').on('show', function (e) {
|
||||
<a data-toggle="modal" href="#myModal" class="btn btn-primary btn-large">Launch demo modal</a>
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<-- Button to trigger modal -->
|
||||
<!-- Button to trigger modal -->
|
||||
<a href="#myModal" role="button" class="btn" data-toggle="modal">Launch demo modal</a>
|
||||
|
||||
<-- Modal -->
|
||||
<div class="modal" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
|
||||
<!-- Modal -->
|
||||
<div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="myModalLabel">Modal header</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>One fine body…</p>
|
||||
<p>One fine body…</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
|
||||
@@ -506,8 +514,8 @@ $('#myModal').on('hidden', function () {
|
||||
<p><em>None</em></p>
|
||||
|
||||
<h3>Methods</h3>
|
||||
<h4>$().dropdown()</h4>
|
||||
<p>A programatic api for activating menus for a given navbar or tabbed navigation.</p>
|
||||
<h4>$().dropdown('toggle')</h4>
|
||||
<p>A programmatic api for toggling menus for a given navbar or tabbed navigation.</p>
|
||||
</section>
|
||||
|
||||
|
||||
@@ -636,7 +644,7 @@ $('[data-spy="scroll"]').each(function () {
|
||||
|
||||
|
||||
<h2>Example tabs</h2>
|
||||
<p>Add quick, dynamic tab functionality to transiton through panes of local content, even via dropdown menus.</p>
|
||||
<p>Add quick, dynamic tab functionality to transition through panes of local content, even via dropdown menus.</p>
|
||||
<div class="bs-docs-example">
|
||||
<ul id="myTab" class="nav nav-tabs">
|
||||
<li class="active"><a href="#home" data-toggle="tab">Home</a></li>
|
||||
@@ -804,7 +812,7 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
|
||||
<tr>
|
||||
<td>html</td>
|
||||
<td>boolean</td>
|
||||
<td>true</td>
|
||||
<td>false</td>
|
||||
<td>Insert html into the tooltip. If false, jquery's <code>text</code> method will be used to insert content into the dom. Use text if you're worried about XSS attacks.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -925,6 +933,16 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
|
||||
<a href="#" class="btn btn-large btn-danger" rel="popover" title="A Title" data-content="And here's some amazing content. It's very engaging. right?">Click to toggle popover</a>
|
||||
</div>
|
||||
|
||||
<h4>Four directions</h4>
|
||||
<div class="bs-docs-example tooltip-demo">
|
||||
<ul class="bs-docs-tooltip-examples">
|
||||
<li><a href="#" class="btn" rel="popover" data-placement="top" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus." title="Popover on top">Popover on top</a></li>
|
||||
<li><a href="#" class="btn" rel="popover" data-placement="right" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus." title="Popover on right">Popover on right</a></li>
|
||||
<li><a href="#" class="btn" rel="popover" data-placement="bottom" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus." title="Popover on bottom">Popover on bottom</a></li>
|
||||
<li><a href="#" class="btn" rel="popover" data-placement="left" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus." title="Popover on left">Popover on left</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
<hr class="bs-docs-separator">
|
||||
|
||||
@@ -954,7 +972,7 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
|
||||
<tr>
|
||||
<td>html</td>
|
||||
<td>boolean</td>
|
||||
<td>true</td>
|
||||
<td>false</td>
|
||||
<td>Insert html into the popover. If false, jquery's <code>text</code> method will be used to insert content into the dom. Use text if you're worried about XSS attacks.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -1114,7 +1132,7 @@ $('#my-alert').bind('closed', function () {
|
||||
<p>Do more with buttons. Control button states or create groups of buttons for more components like toolbars.</p>
|
||||
|
||||
<h4>Stateful</h4>
|
||||
<p>Add data-loading-text="Loading..." to use a loading state on a button.</p>
|
||||
<p>Add <code>data-loading-text="Loading..."</code> to use a loading state on a button.</p>
|
||||
<div class="bs-docs-example" style="padding-bottom: 24px;">
|
||||
<button type="button" id="fat-btn" data-loading-text="loading..." class="btn btn-primary">
|
||||
Loading state
|
||||
@@ -1123,14 +1141,14 @@ $('#my-alert').bind('closed', function () {
|
||||
<pre class="prettyprint linenums"><button type="button" class="btn btn-primary" data-loading-text="Loading...">Loading state</button></pre>
|
||||
|
||||
<h4>Single toggle</h4>
|
||||
<p>Add data-toggle="button" to activate toggling on a single button.</p>
|
||||
<p>Add <code>data-toggle="button"</code> to activate toggling on a single button.</p>
|
||||
<div class="bs-docs-example" style="padding-bottom: 24px;">
|
||||
<button type="button" class="btn btn-primary" data-toggle="button">Single Toggle</button>
|
||||
</div>
|
||||
<pre class="prettyprint linenums"><button type="button" class="btn" data-toggle="button">Single Toggle</button></pre>
|
||||
<pre class="prettyprint linenums"><button type="button" class="btn btn-primary" data-toggle="button">Single Toggle</button></pre>
|
||||
|
||||
<h4>Checkbox</h4>
|
||||
<p>Add data-toggle="buttons-checkbox" for checkbox style toggling on btn-group.</p>
|
||||
<p>Add <code>data-toggle="buttons-checkbox"</code> for checkbox style toggling on btn-group.</p>
|
||||
<div class="bs-docs-example" style="padding-bottom: 24px;">
|
||||
<div class="btn-group" data-toggle="buttons-checkbox">
|
||||
<button type="button" class="btn btn-primary">Left</button>
|
||||
@@ -1140,14 +1158,14 @@ $('#my-alert').bind('closed', function () {
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="btn-group" data-toggle="buttons-checkbox">
|
||||
<button type="button" class="btn">Left</button>
|
||||
<button type="button" class="btn">Middle</button>
|
||||
<button type="button" class="btn">Right</button>
|
||||
<button type="button" class="btn btn-primary">Left</button>
|
||||
<button type="button" class="btn btn-primary">Middle</button>
|
||||
<button type="button" class="btn btn-primary">Right</button>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<h4>Radio</h4>
|
||||
<p>Add data-toggle="buttons-radio" for radio style toggling on btn-group.</p>
|
||||
<p>Add <code>data-toggle="buttons-radio"</code> for radio style toggling on btn-group.</p>
|
||||
<div class="bs-docs-example" style="padding-bottom: 24px;">
|
||||
<div class="btn-group" data-toggle="buttons-radio">
|
||||
<button type="button" class="btn btn-primary">Left</button>
|
||||
@@ -1157,9 +1175,9 @@ $('#my-alert').bind('closed', function () {
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="btn-group" data-toggle="buttons-radio">
|
||||
<button type="button" class="btn">Left</button>
|
||||
<button type="button" class="btn">Middle</button>
|
||||
<button type="button" class="btn">Right</button>
|
||||
<button type="button" class="btn btn-primary">Left</button>
|
||||
<button type="button" class="btn btn-primary">Middle</button>
|
||||
<button type="button" class="btn btn-primary">Right</button>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
@@ -1603,6 +1621,12 @@ $('.carousel').carousel({
|
||||
<td>exact match,<br> case sensitive,<br> case insensitive</td>
|
||||
<td>Method used to sort autocomplete results. Accepts a single argument <code>items</code> and has the scope of the typeahead instance. Reference the current query with <code>this.query</code>.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>updater</td>
|
||||
<td>function</td>
|
||||
<td>returns selected item</td>
|
||||
<td>The method used to return selected item. Accepts a single argument, the <code>item</code> and has the scope of the typeahead instance.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>highlighter</td>
|
||||
<td>function</td>
|
||||
@@ -1671,7 +1695,7 @@ $('[data-spy="affix"]').each(function () {
|
||||
<td>offset</td>
|
||||
<td>number | function | object</td>
|
||||
<td>10</td>
|
||||
<td>Pixels to offset from screen when calculating position of scroll. If a single number is provide, the offset will be applied in both top and left directions. To listen for a single direction, or multiple unique offsets, just provided an object <code>offset: { x: 10 }</code>. Use a function when you need to dynamically provide an offset (useful for some responsive designs).</td>
|
||||
<td>Pixels to offset from screen when calculating position of scroll. If a single number is provided, the offset will be applied in both top and left directions. To listen for a single direction, or multiple unique offsets, just provide an object <code>offset: { x: 10 }</code>. Use a function when you need to dynamically provide an offset (useful for some responsive designs).</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@@ -1690,13 +1714,14 @@ $('[data-spy="affix"]').each(function () {
|
||||
================================================== -->
|
||||
<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>.</p>
|
||||
<p>Code licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>. Documentation licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p>Icons from <a href="http://glyphicons.com">Glyphicons Free</a>, licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p>Designed and built with all the love in the world by <a href="http://twitter.com/mdo" target="_blank">@mdo</a> and <a href="http://twitter.com/fat" target="_blank">@fat</a>.</p>
|
||||
<p>Code licensed under <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>, documentation under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p><a href="http://glyphicons.com">Glyphicons Free</a> licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<ul class="footer-links">
|
||||
<li><a href="http://blog.getbootstrap.com">Read the blog</a></li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Submit issues</a></li>
|
||||
<li><a href="http://blog.getbootstrap.com">Blog</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Issues</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/wiki">Roadmap and changelog</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
@@ -1709,7 +1734,6 @@ $('[data-spy="affix"]').each(function () {
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
|
||||
<script src="assets/js/jquery.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
<script src="assets/js/bootstrap-transition.js"></script>
|
||||
<script src="assets/js/bootstrap-alert.js"></script>
|
||||
<script src="assets/js/bootstrap-modal.js"></script>
|
||||
@@ -1723,6 +1747,10 @@ $('[data-spy="affix"]').each(function () {
|
||||
<script src="assets/js/bootstrap-carousel.js"></script>
|
||||
<script src="assets/js/bootstrap-typeahead.js"></script>
|
||||
<script src="assets/js/bootstrap-affix.js"></script>
|
||||
|
||||
<script src="assets/js/holder/holder.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
|
||||
<script src="assets/js/application.js"></script>
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Scaffolding · Twitter Bootstrap</title>
|
||||
<title>Scaffolding · Bootstrap</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
@@ -19,11 +19,11 @@
|
||||
<![endif]-->
|
||||
|
||||
<!-- Le fav and touch icons -->
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.ico">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.png">
|
||||
|
||||
</head>
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
<a href="./components.html">Components</a>
|
||||
</li>
|
||||
<li class="">
|
||||
<a href="./javascript.html">Javascript</a>
|
||||
<a href="./javascript.html">JavaScript</a>
|
||||
</li>
|
||||
<li class="">
|
||||
<a href="./customize.html">Customize</a>
|
||||
@@ -123,7 +123,7 @@
|
||||
<p>These styles can be found within <strong>scaffolding.less</strong>.</p>
|
||||
|
||||
<h3>Reset via Normalize</h3>
|
||||
<p>With Bootstrap 2, the old reset block has been dropped in favor of <a href="http://necolas.github.com/normalize.css/" target="_blank">Normalize.css</a>, a project by <a href="http://twitter.com/necolas" target="_blank">Nicolas Gallagher</a> that also powers the <a href="http://html5boilerplate.com" target="_blank">HTML5 Boilerplate</a>. While we use much of Normalize within our <strong>reset.less</strong>, we have removed some elements specifically for Bootstrap.</p>
|
||||
<p>With Bootstrap 2, the old reset block has been dropped in favor of <a href="http://necolas.github.com/normalize.css/" target="_blank">Normalize.css</a>, a project by <a href="http://twitter.com/necolas" target="_blank">Nicolas Gallagher</a> and <a href="http://twitter.com/jon_neal" target="_blank">Jonathan Neal</a> that also powers the <a href="http://html5boilerplate.com" target="_blank">HTML5 Boilerplate</a>. While we use much of Normalize within our <strong>reset.less</strong>, we have removed some elements specifically for Bootstrap.</p>
|
||||
|
||||
</section>
|
||||
|
||||
@@ -201,7 +201,7 @@
|
||||
<p>To nest your content with the default grid, add a new <code>.row</code> and set of <code>.span*</code> columns within an existing <code>.span*</code> column. Nested rows should include a set of columns that add up to the number of columns of its parent.</p>
|
||||
<div class="row show-grid">
|
||||
<div class="span9">
|
||||
Level 1 of column
|
||||
Level 1 column
|
||||
<div class="row show-grid">
|
||||
<div class="span6">
|
||||
Level 2
|
||||
@@ -301,13 +301,21 @@
|
||||
</pre>
|
||||
|
||||
<h2>Fluid nesting</h2>
|
||||
<p>Nesting with fluid grids is a bit different: the number of nested columns should not match the parent's number of columns. Instead, each level of nested columns are reset because each row takes up 100% of the parent column.</p>
|
||||
<p>Fluid grids utilize nesting differently: each nested level of columns should add up to 12 columns. This is because the fluid grid uses percentages, not pixels, for setting widths.</p>
|
||||
<div class="row-fluid show-grid">
|
||||
<div class="span12">
|
||||
Fluid 12
|
||||
<div class="row-fluid show-grid">
|
||||
<div class="span6">
|
||||
Fluid 6
|
||||
<div class="row-fluid show-grid">
|
||||
<div class="span6">
|
||||
Fluid 6
|
||||
</div>
|
||||
<div class="span6">
|
||||
Fluid 6
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="span6">
|
||||
Fluid 6
|
||||
@@ -318,10 +326,16 @@
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="row-fluid">
|
||||
<div class="span12">
|
||||
Level 1 of column
|
||||
Fluid 12
|
||||
<div class="row-fluid">
|
||||
<div class="span6">Level 2</div>
|
||||
<div class="span6">Level 2</div>
|
||||
<div class="span6">
|
||||
Fluid 6
|
||||
<div class="row-fluid">
|
||||
<div class="span6">Fluid 6</div>
|
||||
<div class="span6">Fluid 6</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="span6">Fluid 6</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -509,7 +523,7 @@
|
||||
</table>
|
||||
|
||||
<h3>When to use</h3>
|
||||
<p>Use on a limited basis and avoid creating entirely different versions of the same site. Instead, use them to complement each device's presentation.</p>
|
||||
<p>Use on a limited basis and avoid creating entirely different versions of the same site. Instead, use them to complement each device's presentation. Responsive utilities should not be used with tables, and as such are not supported.</p>
|
||||
|
||||
<h3>Responsive utilities test case</h3>
|
||||
<p>Resize your browser or load on different devices to test the above classes.</p>
|
||||
@@ -543,13 +557,14 @@
|
||||
================================================== -->
|
||||
<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>.</p>
|
||||
<p>Code licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>. Documentation licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p>Icons from <a href="http://glyphicons.com">Glyphicons Free</a>, licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p>Designed and built with all the love in the world by <a href="http://twitter.com/mdo" target="_blank">@mdo</a> and <a href="http://twitter.com/fat" target="_blank">@fat</a>.</p>
|
||||
<p>Code licensed under <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>, documentation under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<p><a href="http://glyphicons.com">Glyphicons Free</a> licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
|
||||
<ul class="footer-links">
|
||||
<li><a href="http://blog.getbootstrap.com">Read the blog</a></li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Submit issues</a></li>
|
||||
<li><a href="http://blog.getbootstrap.com">Blog</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">Issues</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/wiki">Roadmap and changelog</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
@@ -562,7 +577,6 @@
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
|
||||
<script src="assets/js/jquery.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
<script src="assets/js/bootstrap-transition.js"></script>
|
||||
<script src="assets/js/bootstrap-alert.js"></script>
|
||||
<script src="assets/js/bootstrap-modal.js"></script>
|
||||
@@ -576,6 +590,10 @@
|
||||
<script src="assets/js/bootstrap-carousel.js"></script>
|
||||
<script src="assets/js/bootstrap-typeahead.js"></script>
|
||||
<script src="assets/js/bootstrap-affix.js"></script>
|
||||
|
||||
<script src="assets/js/holder/holder.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
|
||||
<script src="assets/js/application.js"></script>
|
||||
|
||||
|
||||
|
||||
@@ -19,11 +19,11 @@
|
||||
<![endif]-->
|
||||
|
||||
<!-- Le fav and touch icons -->
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.ico">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
|
||||
<link rel="shortcut icon" href="assets/ico/favicon.png">
|
||||
|
||||
{{#production}}
|
||||
<script type="text/javascript">
|
||||
@@ -70,7 +70,7 @@
|
||||
<a href="./components.html">{{_i}}Components{{/i}}</a>
|
||||
</li>
|
||||
<li class="{{javascript}}">
|
||||
<a href="./javascript.html">{{_i}}Javascript{{/i}}</a>
|
||||
<a href="./javascript.html">{{_i}}JavaScript{{/i}}</a>
|
||||
</li>
|
||||
<li class="{{customize}}">
|
||||
<a href="./customize.html">{{_i}}Customize{{/i}}</a>
|
||||
@@ -89,13 +89,14 @@
|
||||
================================================== -->
|
||||
<footer class="footer">
|
||||
<div class="container">
|
||||
<p class="pull-right"><a href="#">{{_i}}Back to top{{/i}}</a></p>
|
||||
<p>{{_i}}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>.{{/i}}</p>
|
||||
<p>{{_i}}Code licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>. Documentation licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.{{/i}}</p>
|
||||
<p>{{_i}}Icons from <a href="http://glyphicons.com">Glyphicons Free</a>, licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.{{/i}}</p>
|
||||
<p>{{_i}}Designed and built with all the love in the world by <a href="http://twitter.com/mdo" target="_blank">@mdo</a> and <a href="http://twitter.com/fat" target="_blank">@fat</a>.{{/i}}</p>
|
||||
<p>{{_i}}Code licensed under <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>, documentation under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.{{/i}}</p>
|
||||
<p>{{_i}}<a href="http://glyphicons.com">Glyphicons Free</a> licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.{{/i}}</p>
|
||||
<ul class="footer-links">
|
||||
<li><a href="http://blog.getbootstrap.com">{{_i}}Read the blog{{/i}}</a></li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">{{_i}}Submit issues{{/i}}</a></li>
|
||||
<li><a href="http://blog.getbootstrap.com">{{_i}}Blog{{/i}}</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/issues?state=open">{{_i}}Issues{{/i}}</a></li>
|
||||
<li class="muted">·</li>
|
||||
<li><a href="https://github.com/twitter/bootstrap/wiki">{{_i}}Roadmap and changelog{{/i}}</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
@@ -108,7 +109,6 @@
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
|
||||
<script src="assets/js/jquery.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
<script src="assets/js/bootstrap-transition.js"></script>
|
||||
<script src="assets/js/bootstrap-alert.js"></script>
|
||||
<script src="assets/js/bootstrap-modal.js"></script>
|
||||
@@ -122,6 +122,10 @@
|
||||
<script src="assets/js/bootstrap-carousel.js"></script>
|
||||
<script src="assets/js/bootstrap-typeahead.js"></script>
|
||||
<script src="assets/js/bootstrap-affix.js"></script>
|
||||
|
||||
<script src="assets/js/holder/holder.js"></script>
|
||||
<script src="assets/js/google-code-prettify/prettify.js"></script>
|
||||
|
||||
<script src="assets/js/application.js"></script>
|
||||
|
||||
|
||||
|
||||
@@ -89,14 +89,14 @@
|
||||
</pre>
|
||||
|
||||
<h3>{{_i}}Bold{{/i}}</h3>
|
||||
<p>{{_i}}For emphasizing a snippet of text with <strong>important</strong>{{/i}}</p>
|
||||
<p>{{_i}}For emphasizing a snippet of text with a heavier font-weight.{{/i}}</p>
|
||||
<div class="bs-docs-example">
|
||||
<p>The following snippet of text is <strong>rendered as bold text</strong>.</p>
|
||||
</div>
|
||||
<pre class="prettyprint"><strong>rendered as bold text</strong></pre>
|
||||
|
||||
<h3>{{_i}}Italics{{/i}}</h3>
|
||||
<p>{{_i}}For emphasizing a snippet of text with <em>stress</em>{{/i}}</p>
|
||||
<p>{{_i}}For emphasizing a snippet of text with italics.{{/i}}</p>
|
||||
<div class="bs-docs-example">
|
||||
<p>The following snippet of text is <em>rendered as italicized text</em>.</p>
|
||||
</div>
|
||||
@@ -127,7 +127,7 @@
|
||||
|
||||
{{! Abbreviations }}
|
||||
<h2 id="abbreviations">{{_i}}Abbreviations{{/i}}</h2>
|
||||
<p>{{_i}}Stylized implemenation of HTML's <code><abbr></code> element for abbreviations and acronyms to show the expanded version on hover. Abbreviations with a <code>title</code> attribute have a light dotted bottom border and a help cursor on hover, providing additional context on hover.{{/i}}</p>
|
||||
<p>{{_i}}Stylized implementation of HTML's <code><abbr></code> element for abbreviations and acronyms to show the expanded version on hover. Abbreviations with a <code>title</code> attribute have a light dotted bottom border and a help cursor on hover, providing additional context on hover.{{/i}}</p>
|
||||
|
||||
<h3><code><abbr></code></h3>
|
||||
<p>{{_i}}For expanded text on long hover of an abbreviation, include the <code>title</code> attribute.{{/i}}</p>
|
||||
@@ -162,7 +162,7 @@
|
||||
</address>
|
||||
<address>
|
||||
<strong>{{_i}}Full Name{{/i}}</strong><br>
|
||||
<a href="mailto:#">{{_i}}first.last@gmail.com{{/i}}</a>
|
||||
<a href="mailto:#">{{_i}}first.last@example.com{{/i}}</a>
|
||||
</address>
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
@@ -175,7 +175,7 @@
|
||||
|
||||
<address>
|
||||
<strong>{{_i}}Full Name{{/i}}</strong><br>
|
||||
<a href="mailto:#">{{_i}}first.last@gmail.com{{/i}}</a>
|
||||
<a href="mailto:#">{{_i}}first.last@example.com{{/i}}</a>
|
||||
</address>
|
||||
</pre>
|
||||
|
||||
@@ -287,7 +287,7 @@
|
||||
</pre>
|
||||
|
||||
<h3>{{_i}}Unstyled{{/i}}</h3>
|
||||
<p>{{_i}}A list of items with no <code>list-style</code> or additional left padding.{{/i}}</p>
|
||||
<p>{{_i}}Remove the default <code>list-style</code> and left padding on list items (immediate children only).{{/i}}</p>
|
||||
<div class="bs-docs-example">
|
||||
<ul class="unstyled">
|
||||
<li>Lorem ipsum dolor sit amet</li>
|
||||
@@ -311,6 +311,21 @@
|
||||
<ul class="unstyled">
|
||||
<li>...</li>
|
||||
</ul>
|
||||
</pre>
|
||||
|
||||
<h3>{{_i}}Inline{{/i}}</h3>
|
||||
<p>{{_i}}Place all list items on a single line with <code>inline-block</code> and some light padding.{{/i}}</p>
|
||||
<div class="bs-docs-example">
|
||||
<ul class="inline">
|
||||
<li>Lorem ipsum</li>
|
||||
<li>Phasellus iaculis</li>
|
||||
<li>Nulla volutpat</li>
|
||||
</ul>
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<ul class="inline">
|
||||
<li>...</li>
|
||||
</ul>
|
||||
</pre>
|
||||
|
||||
<h3>{{_i}}Description{{/i}}</h3>
|
||||
@@ -446,7 +461,7 @@
|
||||
|
||||
|
||||
<h2>{{_i}}Optional classes{{/i}}</h2>
|
||||
<p>{{_i}}Add any of the follow classes to the <code>.table</code> base class.{{/i}}</p>
|
||||
<p>{{_i}}Add any of the following classes to the <code>.table</code> base class.{{/i}}</p>
|
||||
|
||||
<h3><code>{{_i}}.table-striped{{/i}}</code></h3>
|
||||
<p>{{_i}}Adds zebra-striping to any table row within the <code><tbody></code> via the <code>:nth-child</code> CSS selector (not available in IE7-IE8).{{/i}}</p>
|
||||
@@ -812,25 +827,29 @@
|
||||
<h2>{{_i}}Default styles{{/i}}</h2>
|
||||
<p>{{_i}}Individual form controls receive styling, but without any required base class on the <code><form></code> or large changes in markup. Results in stacked, left-aligned labels on top of form controls.{{/i}}</p>
|
||||
<form class="bs-docs-example">
|
||||
<legend>Legend</legend>
|
||||
<label>{{_i}}Label name{{/i}}</label>
|
||||
<input type="text" placeholder="{{_i}}Type something…{{/i}}">
|
||||
<span class="help-block">{{_i}}Example block-level help text here.{{/i}}</span>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox"> {{_i}}Check me out{{/i}}
|
||||
</label>
|
||||
<button type="submit" class="btn">{{_i}}Submit{{/i}}</button>
|
||||
<fieldset>
|
||||
<legend>Legend</legend>
|
||||
<label>{{_i}}Label name{{/i}}</label>
|
||||
<input type="text" placeholder="{{_i}}Type something…{{/i}}">
|
||||
<span class="help-block">{{_i}}Example block-level help text here.{{/i}}</span>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox"> {{_i}}Check me out{{/i}}
|
||||
</label>
|
||||
<button type="submit" class="btn">{{_i}}Submit{{/i}}</button>
|
||||
</fieldset>
|
||||
</form>{{! /example }}
|
||||
<pre class="prettyprint linenums">
|
||||
<form>
|
||||
<legend>{{_i}}Legend{{/i}}</legend>
|
||||
<label>{{_i}}Label name{{/i}}</label>
|
||||
<input type="text" placeholder="{{_i}}Type something…{{/i}}">
|
||||
<span class="help-block">Example block-level help text here.</span>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox"> {{_i}}Check me out{{/i}}
|
||||
</label>
|
||||
<button type="submit" class="btn">{{_i}}Submit{{/i}}</button>
|
||||
<fieldset>
|
||||
<legend>{{_i}}Legend{{/i}}</legend>
|
||||
<label>{{_i}}Label name{{/i}}</label>
|
||||
<input type="text" placeholder="{{_i}}Type something…{{/i}}">
|
||||
<span class="help-block">Example block-level help text here.</span>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox"> {{_i}}Check me out{{/i}}
|
||||
</label>
|
||||
<button type="submit" class="btn">{{_i}}Submit{{/i}}</button>
|
||||
</fieldset>
|
||||
</form>
|
||||
</pre>
|
||||
|
||||
@@ -884,7 +903,6 @@
|
||||
<li>{{_i}}Wrap any associated controls in <code>.controls</code> for proper alignment{{/i}}</li>
|
||||
</ul>
|
||||
<form class="bs-docs-example form-horizontal">
|
||||
<legend>Legend</legend>
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="inputEmail">{{_i}}Email{{/i}}</label>
|
||||
<div class="controls">
|
||||
@@ -1068,20 +1086,22 @@
|
||||
<form class="bs-docs-example">
|
||||
<div class="input-prepend">
|
||||
<span class="add-on">@</span>
|
||||
<input class="span2" id="prependedInput" size="16" type="text" placeholder="{{_i}}Username{{/i}}">
|
||||
<input class="span2" id="prependedInput" type="text" placeholder="{{_i}}Username{{/i}}">
|
||||
</div>
|
||||
<br>
|
||||
<div class="input-append">
|
||||
<input class="span2" id="appendedInput" size="16" type="text">
|
||||
<input class="span2" id="appendedInput" type="text">
|
||||
<span class="add-on">.00</span>
|
||||
</div>
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="input-prepend">
|
||||
<span class="add-on">@</span><input class="span2" id="prependedInput" size="16" type="text" placeholder="{{_i}}Username{{/i}}">
|
||||
<span class="add-on">@</span>
|
||||
<input class="span2" id="prependedInput" type="text" placeholder="{{_i}}Username{{/i}}">
|
||||
</div>
|
||||
<div class="input-append">
|
||||
<input class="span2" id="appendedInput" size="16" type="text"><span class="add-on">.00</span>
|
||||
<input class="span2" id="appendedInput" type="text">
|
||||
<span class="add-on">.00</span>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
@@ -1090,13 +1110,15 @@
|
||||
<form class="bs-docs-example form-inline">
|
||||
<div class="input-prepend input-append">
|
||||
<span class="add-on">$</span>
|
||||
<input class="span2" id="appendedPrependedInput" size="16" type="text">
|
||||
<input class="span2" id="appendedPrependedInput" type="text">
|
||||
<span class="add-on">.00</span>
|
||||
</div>
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="input-prepend input-append">
|
||||
<span class="add-on">$</span><input class="span2" id="appendedPrependedInput" size="16" type="text"><span class="add-on">.00</span>
|
||||
<span class="add-on">$</span>
|
||||
<input class="span2" id="appendedPrependedInput" type="text">
|
||||
<span class="add-on">.00</span>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
@@ -1104,24 +1126,188 @@
|
||||
<p>{{_i}}Instead of a <code><span></code> with text, use a <code>.btn</code> to attach a button (or two) to an input.{{/i}}</p>
|
||||
<form class="bs-docs-example">
|
||||
<div class="input-append">
|
||||
<input class="span2" id="appendedInputButton" size="16" type="text">
|
||||
<input class="span2" id="appendedInputButton" type="text">
|
||||
<button class="btn" type="button">Go!</button>
|
||||
</div>
|
||||
<br>
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="input-append">
|
||||
<input class="span2" id="appendedInputButton" type="text">
|
||||
<button class="btn" type="button">Go!</button>
|
||||
</div>
|
||||
</pre>
|
||||
<form class="bs-docs-example">
|
||||
<div class="input-append">
|
||||
<input class="span2" id="appendedInputButtons" size="16" type="text">
|
||||
<input class="span2" id="appendedInputButtons" type="text">
|
||||
<button class="btn" type="button">Search</button>
|
||||
<button class="btn" type="button">Options</button>
|
||||
</div>
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="input-append">
|
||||
<input class="span2" id="appendedInputButton" size="16" type="text"><button class="btn" type="button">Go!</button>
|
||||
<input class="span2" id="appendedInputButtons" type="text">
|
||||
<button class="btn" type="button">Search</button>
|
||||
<button class="btn" type="button">Options</button>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<h4>{{_i}}Button dropdowns{{/i}}</h4>
|
||||
<p>{{_i}}{{/i}}</p>
|
||||
<form class="bs-docs-example">
|
||||
<div class="input-append">
|
||||
<input class="span2" id="appendedDropdownButton" type="text">
|
||||
<div class="btn-group">
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown">{{_i}}Action{{/i}} <span class="caret"></span></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="#">{{_i}}Action{{/i}}</a></li>
|
||||
<li><a href="#">{{_i}}Another action{{/i}}</a></li>
|
||||
<li><a href="#">{{_i}}Something else here{{/i}}</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="#">{{_i}}Separated link{{/i}}</a></li>
|
||||
</ul>
|
||||
</div><!-- /btn-group -->
|
||||
</div><!-- /input-append -->
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="input-append">
|
||||
<input class="span2" id="appendedInputButtons" size="16" type="text"><button class="btn" type="button">Search</button><button class="btn" type="button">Options</button>
|
||||
<input class="span2" id="appendedDropdownButton" type="text">
|
||||
<div class="btn-group">
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown">
|
||||
{{_i}}Action{{/i}}
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<form class="bs-docs-example">
|
||||
<div class="input-prepend">
|
||||
<div class="btn-group">
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown">{{_i}}Action{{/i}} <span class="caret"></span></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="#">{{_i}}Action{{/i}}</a></li>
|
||||
<li><a href="#">{{_i}}Another action{{/i}}</a></li>
|
||||
<li><a href="#">{{_i}}Something else here{{/i}}</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="#">{{_i}}Separated link{{/i}}</a></li>
|
||||
</ul>
|
||||
</div><!-- /btn-group -->
|
||||
<input class="span2" id="prependedDropdownButton" type="text">
|
||||
</div><!-- /input-prepend -->
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="input-prepend">
|
||||
<div class="btn-group">
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown">
|
||||
{{_i}}Action{{/i}}
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
<input class="span2" id="prependedDropdownButton" type="text">
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<form class="bs-docs-example">
|
||||
<div class="input-prepend input-append">
|
||||
<div class="btn-group">
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown">{{_i}}Action{{/i}} <span class="caret"></span></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="#">{{_i}}Action{{/i}}</a></li>
|
||||
<li><a href="#">{{_i}}Another action{{/i}}</a></li>
|
||||
<li><a href="#">{{_i}}Something else here{{/i}}</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="#">{{_i}}Separated link{{/i}}</a></li>
|
||||
</ul>
|
||||
</div><!-- /btn-group -->
|
||||
<input class="span2" id="appendedPrependedDropdownButton" type="text">
|
||||
<div class="btn-group">
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown">{{_i}}Action{{/i}} <span class="caret"></span></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="#">{{_i}}Action{{/i}}</a></li>
|
||||
<li><a href="#">{{_i}}Another action{{/i}}</a></li>
|
||||
<li><a href="#">{{_i}}Something else here{{/i}}</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="#">{{_i}}Separated link{{/i}}</a></li>
|
||||
</ul>
|
||||
</div><!-- /btn-group -->
|
||||
</div><!-- /input-prepend input-append -->
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="input-prepend input-append">
|
||||
<div class="btn-group">
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown">
|
||||
{{_i}}Action{{/i}}
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
<input class="span2" id="appendedPrependedDropdownButton" type="text">
|
||||
<div class="btn-group">
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown">
|
||||
{{_i}}Action{{/i}}
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<h4>{{_i}}Segmented dropdown groups{{/i}}</h4>
|
||||
<form class="bs-docs-example">
|
||||
<div class="input-prepend">
|
||||
<div class="btn-group">
|
||||
<button class="btn" tabindex="-1">Action</button>
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown" tabindex="-1">
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="#">{{_i}}Action{{/i}}</a></li>
|
||||
<li><a href="#">{{_i}}Another action{{/i}}</a></li>
|
||||
<li><a href="#">{{_i}}Something else here{{/i}}</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="#">{{_i}}Separated link{{/i}}</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<input type="text">
|
||||
</div>
|
||||
<div class="input-append">
|
||||
<input type="text">
|
||||
<div class="btn-group">
|
||||
<button class="btn" tabindex="-1">Action</button>
|
||||
<button class="btn dropdown-toggle" data-toggle="dropdown" tabindex="-1">
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="#">{{_i}}Action{{/i}}</a></li>
|
||||
<li><a href="#">{{_i}}Another action{{/i}}</a></li>
|
||||
<li><a href="#">{{_i}}Something else here{{/i}}</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="#">{{_i}}Separated link{{/i}}</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<form>
|
||||
<div class="input-prepend">
|
||||
<div class="btn-group">...</div>
|
||||
<input type="text">
|
||||
</div>
|
||||
<div class="input-append">
|
||||
<input type="text">
|
||||
<div class="btn-group">...</div>
|
||||
</div>
|
||||
</form>
|
||||
</pre>
|
||||
|
||||
<h4>{{_i}}Search form{{/i}}</h4>
|
||||
@@ -1151,6 +1337,17 @@
|
||||
<h3>{{_i}}Control sizing{{/i}}</h3>
|
||||
<p>{{_i}}Use relative sizing classes like <code>.input-large</code> or match your inputs to the grid column sizes using <code>.span*</code> classes.{{/i}}</p>
|
||||
|
||||
<h4>{{_i}}Block level inputs{{/i}}</h4>
|
||||
<p>{{_i}}Make any <code><input></code> or <code><textarea></code> element behave like a block level element.{{/i}}</p>
|
||||
<form class="bs-docs-example" style="padding-bottom: 15px;">
|
||||
<div class="controls">
|
||||
<input class="input-block-level" type="text" placeholder=".input-block-level">
|
||||
</div>
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<input class="input-block-level" type="text" placeholder=".input-block-level">
|
||||
</pre>
|
||||
|
||||
<h4>{{_i}}Relative sizing{{/i}}</h4>
|
||||
<form class="bs-docs-example" style="padding-bottom: 15px;">
|
||||
<div class="controls docs-input-sizes">
|
||||
@@ -1219,7 +1416,7 @@
|
||||
</select>
|
||||
</pre>
|
||||
|
||||
<p>{{_i}}For multiple grid inputs per line, <strong>use the <code>.controls-row</code> modifier class for proper spacing</strong>. It floats the inputs to collapse white-space, sets the proper margins, and the clears the float.{{/i}}</p>
|
||||
<p>{{_i}}For multiple grid inputs per line, <strong>use the <code>.controls-row</code> modifier class for proper spacing</strong>. It floats the inputs to collapse white-space, sets the proper margins, and clears the float.{{/i}}</p>
|
||||
<form class="bs-docs-example" style="padding-bottom: 15px;">
|
||||
<div class="controls">
|
||||
<input class="span5" type="text" placeholder=".span5">
|
||||
@@ -1309,6 +1506,15 @@
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<input class="input-xlarge" id="focusedInput" type="text" value="{{_i}}This is focused...{{/i}}">
|
||||
</pre>
|
||||
|
||||
<h3>{{_i}}Invalid inputs{{/i}}</h3>
|
||||
<p>{{_i}}Style inputs via default browser functionality with <code>:invalid</code>. Specify a <code>type</code> and add the <code>required</code> attribute.{{/i}}</p>
|
||||
<form class="bs-docs-example form-inline">
|
||||
<input class="span3" type="email" placeholder="test@example.com" required>
|
||||
</form>
|
||||
<pre class="prettyprint linenums">
|
||||
<input class="span3" type="email" required>
|
||||
</pre>
|
||||
|
||||
<h3>{{_i}}Disabled inputs{{/i}}</h3>
|
||||
@@ -1339,9 +1545,9 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group info">
|
||||
<label class="control-label" for="inputError">{{_i}}Input with info{{/i}}</label>
|
||||
<label class="control-label" for="inputInfo">{{_i}}Input with info{{/i}}</label>
|
||||
<div class="controls">
|
||||
<input type="text" id="inputError">
|
||||
<input type="text" id="inputInfo">
|
||||
<span class="help-inline">{{_i}}Username is taken{{/i}}</span>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1556,9 +1762,9 @@
|
||||
|
||||
<p>{{_i}}Add classes to an <code><img></code> element to easily style images in any project.{{/i}}</p>
|
||||
<div class="bs-docs-example bs-docs-example-images">
|
||||
<img src="http://placehold.it/140x140" class="img-rounded">
|
||||
<img src="http://placehold.it/140x140" class="img-circle">
|
||||
<img src="http://placehold.it/140x140" class="img-polaroid">
|
||||
<img data-src="holder.js/140x140" class="img-rounded">
|
||||
<img data-src="holder.js/140x140" class="img-circle">
|
||||
<img data-src="holder.js/140x140" class="img-polaroid">
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<img src="..." class="img-rounded">
|
||||
@@ -1809,15 +2015,18 @@
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<h5>{{_i}}Small button{{/i}}</h5>
|
||||
<h5>{{_i}}Button sizes{{/i}}</h5>
|
||||
<div class="bs-docs-example">
|
||||
<a class="btn btn-small" href="#"><i class="icon-star"></i></a>
|
||||
<a class="btn btn-large" href="#"><i class="icon-star"></i> Star</a>
|
||||
<a class="btn btn-small" href="#"><i class="icon-star"></i> Star</a>
|
||||
<a class="btn btn-mini" href="#"><i class="icon-star"></i> Star</a>
|
||||
</div>{{! /bs-docs-example }}
|
||||
<pre class="prettyprint linenums">
|
||||
<a class="btn btn-small" href="#"><i class="icon-star"></i></a>
|
||||
<a class="btn btn-large" href="#"><i class="icon-star"></i> Star</a>
|
||||
<a class="btn btn-small" href="#"><i class="icon-star"></i> Star</a>
|
||||
<a class="btn btn-mini" href="#"><i class="icon-star"></i> Star</a>
|
||||
</pre>
|
||||
|
||||
|
||||
<h4>{{_i}}Navigation{{/i}}</h4>
|
||||
<div class="bs-docs-example">
|
||||
<div class="well" style="padding: 8px 0; margin-bottom: 0;">
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
<li><a href="#thumbnails"><i class="icon-chevron-right"></i> {{_i}}Thumbnails{{/i}}</a></li>
|
||||
<li><a href="#alerts"><i class="icon-chevron-right"></i> {{_i}}Alerts{{/i}}</a></li>
|
||||
<li><a href="#progress"><i class="icon-chevron-right"></i> {{_i}}Progress bars{{/i}}</a></li>
|
||||
<li><a href="#media"><i class="icon-chevron-right"></i> {{_i}}Media object{{/i}}</a></li>
|
||||
<li><a href="#misc"><i class="icon-chevron-right"></i> {{_i}}Misc{{/i}}</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
@@ -42,7 +43,7 @@
|
||||
</div>
|
||||
|
||||
<h2>{{_i}}Example{{/i}}</h2>
|
||||
<p>{{_i}}Toggleable, contextual menu for displaying lists of links. Made interactive with the <a href="./javascript.html#dropdowns">dropdown javascript plugin</a>.{{/i}}</p>
|
||||
<p>{{_i}}Toggleable, contextual menu for displaying lists of links. Made interactive with the <a href="./javascript.html#dropdowns">dropdown JavaScript plugin</a>.{{/i}}</p>
|
||||
<div class="bs-docs-example">
|
||||
<div class="dropdown clearfix">
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu" style="display: block; position: static; margin-bottom: 5px; *width: 180px;">
|
||||
@@ -93,25 +94,74 @@
|
||||
|
||||
<h3>{{_i}}Sub menus on dropdowns{{/i}}</h3>
|
||||
<p>{{_i}}Add an extra level of dropdown menus, appearing on hover like those of OS X, with some simple markup additions. Add <code>.dropdown-submenu</code> to any <code>li</code> in an existing dropdown menu for automatic styling.{{/i}}</p>
|
||||
<div class="bs-docs-example">
|
||||
<div class="dropdown clearfix">
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu" style="display: block; position: static; margin-bottom: 5px; *width: 180px;">
|
||||
<li><a tabindex="-1" href="#">{{_i}}Action{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Another action{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Something else here{{/i}}</a></li>
|
||||
<li class="divider"></li>
|
||||
<li class="dropdown-submenu">
|
||||
<a tabindex="-1" href="#">{{_i}}More options{{/i}}</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="bs-docs-example bs-docs-example-submenus">
|
||||
|
||||
<div class="pull-left">
|
||||
<p class="muted">Default</p>
|
||||
<div class="dropdown clearfix">
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu">
|
||||
<li><a tabindex="-1" href="#">{{_i}}Action{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Another action{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Something else here{{/i}}</a></li>
|
||||
<li class="divider"></li>
|
||||
<li class="dropdown-submenu">
|
||||
<a tabindex="-1" href="#">{{_i}}More options{{/i}}</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>{{! /.pull-left }}
|
||||
|
||||
<div class="pull-left">
|
||||
<p class="muted">Dropup</p>
|
||||
<div class="dropup">
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu">
|
||||
<li><a tabindex="-1" href="#">{{_i}}Action{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Another action{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Something else here{{/i}}</a></li>
|
||||
<li class="divider"></li>
|
||||
<li class="dropdown-submenu">
|
||||
<a tabindex="-1" href="#">{{_i}}More options{{/i}}</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>{{! /.pull-left }}
|
||||
|
||||
<div class="pull-left">
|
||||
<p class="muted">Left submenu</p>
|
||||
<div class="dropdown">
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu">
|
||||
<li><a tabindex="-1" href="#">{{_i}}Action{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Another action{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Something else here{{/i}}</a></li>
|
||||
<li class="divider"></li>
|
||||
<li class="dropdown-submenu pull-left">
|
||||
<a tabindex="-1" href="#">{{_i}}More options{{/i}}</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
<li><a tabindex="-1" href="#">{{_i}}Second level link{{/i}}</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>{{! /.pull-left }}
|
||||
|
||||
</div>{{! /example }}
|
||||
<pre class="prettyprint linenums">
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="dLabel">
|
||||
@@ -206,7 +256,7 @@
|
||||
|
||||
|
||||
<h4>{{_i}}Checkbox and radio flavors{{/i}}</h4>
|
||||
<p>{{_i}}Button groups can also function as radios, where only one button may be active, or checkboxes, where any number of buttons may be active. View <a href="./javascript.html#buttons">the Javascript docs</a> for that.{{/i}}</p>
|
||||
<p>{{_i}}Button groups can also function as radios, where only one button may be active, or checkboxes, where any number of buttons may be active. View <a href="./javascript.html#buttons">the JavaScript docs</a> for that.{{/i}}</p>
|
||||
|
||||
<h4>{{_i}}Dropdowns in button groups{{/i}}</h4>
|
||||
<p><span class="label label-info">{{_i}}Heads up!{{/i}}</span> {{_i}}Buttons with dropdowns must be individually wrapped in their own <code>.btn-group</code> within a <code>.btn-toolbar</code> for proper rendering.{{/i}}</p>
|
||||
@@ -347,9 +397,9 @@
|
||||
</div><!-- /btn-toolbar -->
|
||||
</div>{{! /example }}
|
||||
|
||||
<h3>{{_i}}Requires javascript{{/i}}</h3>
|
||||
<h3>{{_i}}Requires JavaScript{{/i}}</h3>
|
||||
<p>{{_i}}Button dropdowns require the <a href="./javascript.html#dropdowns">Bootstrap dropdown plugin</a> to function.{{/i}}</p>
|
||||
<p>{{_i}}In some cases—like mobile—dropdown menus will extend outside the viewport. You need to resolve the alignment manually or with custom javascript.{{/i}}</p>
|
||||
<p>{{_i}}In some cases—like mobile—dropdown menus will extend outside the viewport. You need to resolve the alignment manually or with custom JavaScript.{{/i}}</p>
|
||||
|
||||
|
||||
<hr class="bs-docs-separator">
|
||||
@@ -598,7 +648,7 @@
|
||||
</pre>
|
||||
|
||||
<h3>{{_i}}Disabled state{{/i}}</h3>
|
||||
<p>{{_i}}For any nav component (tabs, pills, or list), add <code>.disabled</code> for <strong>gray links and no hover effects</strong>. Links will remain clickable, however, unless custom javascript is implemented to prevent those clicks.{{/i}}</p>
|
||||
<p>{{_i}}For any nav component (tabs, pills, or list), add <code>.disabled</code> for <strong>gray links and no hover effects</strong>. Links will remain clickable, however, unless you remove the <code>href</code> attribute. Alternatively, you could implement custom JavaScript to prevent those clicks.{{/i}}</p>
|
||||
<div class="bs-docs-example">
|
||||
<ul class="nav nav-pills">
|
||||
<li><a href="#">{{_i}}Clickable link{{/i}}</a></li>
|
||||
@@ -657,7 +707,7 @@
|
||||
|
||||
|
||||
<h2>{{_i}}Dropdowns{{/i}}</h2>
|
||||
<p>{{_i}}Add dropdown menus with a little extra HTML and the <a href="./javascript.html#dropdowns">dropdowns javascript plugin</a>.{{/i}}</p>
|
||||
<p>{{_i}}Add dropdown menus with a little extra HTML and the <a href="./javascript.html#dropdowns">dropdowns JavaScript plugin</a>.{{/i}}</p>
|
||||
|
||||
<h3>{{_i}}Tabs with dropdowns{{/i}}</h3>
|
||||
<div class="bs-docs-example">
|
||||
@@ -822,7 +872,7 @@
|
||||
<p>{{_i}}To make tabs fade in, add <code>.fade</code> to each <code>.tab-pane</code>.{{/i}}</p>
|
||||
|
||||
<h4>{{_i}}Requires jQuery plugin{{/i}}</h4>
|
||||
<p>{{_i}}All tabbable tabs are powered by our lightweight jQuery plugin. Read more about how to bring tabbable tabs to life <a href="./javascript.html#tabs">on the javascript docs page</a>.{{/i}}</p>
|
||||
<p>{{_i}}All tabbable tabs are powered by our lightweight jQuery plugin. Read more about how to bring tabbable tabs to life <a href="./javascript.html#tabs">on the JavaScript docs page</a>.{{/i}}</p>
|
||||
|
||||
<h3>{{_i}}Tabbable in any direction{{/i}}</h3>
|
||||
|
||||
@@ -1068,7 +1118,7 @@
|
||||
<p>{{_i}}Align nav links, search form, or text, use the <code>.pull-left</code> or <code>.pull-right</code> utility classes. Both classes will add a CSS float in the specified direction.{{/i}}</p>
|
||||
|
||||
<h3>{{_i}}Using dropdowns{{/i}}</h3>
|
||||
<p>{{_i}}Add dropdowns and dropups to the nav with a bit of markup and the <a href="./javascript.html#dropdowns">dropdowns javascript plugin</a>.{{/i}}</p>
|
||||
<p>{{_i}}Add dropdowns and dropups to the nav with a bit of markup and the <a href="./javascript.html#dropdowns">dropdowns JavaScript plugin</a>.{{/i}}</p>
|
||||
<pre class="prettyprint linenums">
|
||||
<ul class="nav">
|
||||
<li class="dropdown">
|
||||
@@ -1082,7 +1132,7 @@
|
||||
</li>
|
||||
</ul>
|
||||
</pre>
|
||||
<p>{{_i}}Visit the <a href="./javascript.html#dropdowns">javascript dropdowns documentation</a> for more markup and information on calling dropdowns.{{/i}}</p>
|
||||
<p>{{_i}}Visit the <a href="./javascript.html#dropdowns">JavaScript dropdowns documentation</a> for more markup and information on calling dropdowns.{{/i}}</p>
|
||||
|
||||
<h3>{{_i}}Text{{/i}}</h3>
|
||||
<p>{{_i}}Wrap strings of text in an element with <code>.navbar-text</code>, usually on a <code><p></code> tag for proper leading and color.{{/i}}</p>
|
||||
@@ -1170,13 +1220,13 @@
|
||||
<div class="navbar">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".navbar-responsive-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</a>
|
||||
<a class="brand" href="#">{{_i}}Title{{/i}}</a>
|
||||
<div class="nav-collapse">
|
||||
<div class="nav-collapse collapse navbar-responsive-collapse">
|
||||
<ul class="nav">
|
||||
<li class="active"><a href="#">{{_i}}Home{{/i}}</a></li>
|
||||
<li><a href="#">{{_i}}Link{{/i}}</a></li>
|
||||
@@ -1232,7 +1282,7 @@
|
||||
<a class="brand" href="#">{{_i}}Project name{{/i}}</a>
|
||||
|
||||
<!-- {{_i}}Everything you want hidden at 940px or less, place within here{{/i}} -->
|
||||
<div class="nav-collapse">
|
||||
<div class="nav-collapse collapse">
|
||||
<!-- .nav, .navbar-search, .navbar-form, etc -->
|
||||
</div>
|
||||
|
||||
@@ -1254,13 +1304,13 @@
|
||||
<div class="navbar navbar-inverse" style="position: static;">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".subnav-collapse">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".navbar-inverse-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</a>
|
||||
<a class="brand" href="#">{{_i}}Title{{/i}}</a>
|
||||
<div class="nav-collapse subnav-collapse">
|
||||
<div class="nav-collapse collapse navbar-inverse-collapse">
|
||||
<ul class="nav">
|
||||
<li class="active"><a href="#">{{_i}}Home{{/i}}</a></li>
|
||||
<li><a href="#">{{_i}}Link{{/i}}</a></li>
|
||||
@@ -1419,6 +1469,77 @@
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<h3>{{_i}}Sizes{{/i}}</h3>
|
||||
<p>{{_i}}Fancy larger or smaller pagination? Add <code>.pagination-large</code>, <code>.pagination-small</code>, or <code>.pagination-mini</code> for additional sizes.{{/i}}</p>
|
||||
<div class="bs-docs-example">
|
||||
<div class="pagination pagination-large">
|
||||
<ul>
|
||||
<li><a href="#">«</a></li>
|
||||
<li><a href="#">1</a></li>
|
||||
<li><a href="#">2</a></li>
|
||||
<li><a href="#">3</a></li>
|
||||
<li><a href="#">4</a></li>
|
||||
<li><a href="#">5</a></li>
|
||||
<li><a href="#">»</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="pagination">
|
||||
<ul>
|
||||
<li><a href="#">«</a></li>
|
||||
<li><a href="#">1</a></li>
|
||||
<li><a href="#">2</a></li>
|
||||
<li><a href="#">3</a></li>
|
||||
<li><a href="#">4</a></li>
|
||||
<li><a href="#">5</a></li>
|
||||
<li><a href="#">»</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="pagination pagination-small">
|
||||
<ul>
|
||||
<li><a href="#">«</a></li>
|
||||
<li><a href="#">1</a></li>
|
||||
<li><a href="#">2</a></li>
|
||||
<li><a href="#">3</a></li>
|
||||
<li><a href="#">4</a></li>
|
||||
<li><a href="#">5</a></li>
|
||||
<li><a href="#">»</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="pagination pagination-mini">
|
||||
<ul>
|
||||
<li><a href="#">«</a></li>
|
||||
<li><a href="#">1</a></li>
|
||||
<li><a href="#">2</a></li>
|
||||
<li><a href="#">3</a></li>
|
||||
<li><a href="#">4</a></li>
|
||||
<li><a href="#">5</a></li>
|
||||
<li><a href="#">»</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="pagination pagination-large">
|
||||
<ul>
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
<div class="pagination">
|
||||
<ul>
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
<div class="pagination pagination-small">
|
||||
<ul>
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
<div class="pagination pagination-mini">
|
||||
<ul>
|
||||
...
|
||||
</ul>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<h3>{{_i}}Alignment{{/i}}</h3>
|
||||
@@ -1667,6 +1788,9 @@
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h3>{{_i}}Easily collapsible{{/i}}</h3>
|
||||
<p>{{_i}}For easy implementation, labels and badges will simply collapse (via CSS's <code>:empty</code> selector) when no content exists within.{{/i}}</p>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
@@ -1729,22 +1853,22 @@
|
||||
<ul class="thumbnails">
|
||||
<li class="span3">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/260x180" alt="">
|
||||
<img data-src="holder.js/260x180" alt="">
|
||||
</a>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/260x180" alt="">
|
||||
<img data-src="holder.js/260x180" alt="">
|
||||
</a>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/260x180" alt="">
|
||||
<img data-src="holder.js/260x180" alt="">
|
||||
</a>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/260x180" alt="">
|
||||
<img data-src="holder.js/260x180" alt="">
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
@@ -1756,7 +1880,7 @@
|
||||
<ul class="thumbnails">
|
||||
<li class="span4">
|
||||
<div class="thumbnail">
|
||||
<img src="http://placehold.it/300x200" alt="">
|
||||
<img data-src="holder.js/300x200" alt="">
|
||||
<div class="caption">
|
||||
<h3>{{_i}}Thumbnail label{{/i}}</h3>
|
||||
<p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
|
||||
@@ -1766,7 +1890,7 @@
|
||||
</li>
|
||||
<li class="span4">
|
||||
<div class="thumbnail">
|
||||
<img src="http://placehold.it/300x200" alt="">
|
||||
<img data-src="holder.js/300x200" alt="">
|
||||
<div class="caption">
|
||||
<h3>{{_i}}Thumbnail label{{/i}}</h3>
|
||||
<p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
|
||||
@@ -1776,7 +1900,7 @@
|
||||
</li>
|
||||
<li class="span4">
|
||||
<div class="thumbnail">
|
||||
<img src="http://placehold.it/300x200" alt="">
|
||||
<img data-src="holder.js/300x200" alt="">
|
||||
<div class="caption">
|
||||
<h3>{{_i}}Thumbnail label{{/i}}</h3>
|
||||
<p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
|
||||
@@ -1802,7 +1926,7 @@
|
||||
<ul class="thumbnails">
|
||||
<li class="span4">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/300x200" alt="">
|
||||
<img data-src="holder.js/300x200" alt="">
|
||||
</a>
|
||||
</li>
|
||||
...
|
||||
@@ -1813,7 +1937,7 @@
|
||||
<ul class="thumbnails">
|
||||
<li class="span4">
|
||||
<div class="thumbnail">
|
||||
<img src="http://placehold.it/300x200" alt="">
|
||||
<img data-src="holder.js/300x200" alt="">
|
||||
<h3>{{_i}}Thumbnail label{{/i}}</h3>
|
||||
<p>{{_i}}Thumbnail caption...{{/i}}</p>
|
||||
</div>
|
||||
@@ -1827,27 +1951,27 @@
|
||||
<ul class="thumbnails">
|
||||
<li class="span4">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/360x270" alt="">
|
||||
<img data-src="holder.js/360x270" alt="">
|
||||
</a>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/260x120" alt="">
|
||||
<img data-src="holder.js/260x120" alt="">
|
||||
</a>
|
||||
</li>
|
||||
<li class="span2">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/160x120" alt="">
|
||||
<img data-src="holder.js/160x120" alt="">
|
||||
</a>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/260x120" alt="">
|
||||
<img data-src="holder.js/260x120" alt="">
|
||||
</a>
|
||||
</li>
|
||||
<li class="span2">
|
||||
<a href="#" class="thumbnail">
|
||||
<img src="http://placehold.it/160x120" alt="">
|
||||
<img data-src="holder.js/160x120" alt="">
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
@@ -1856,6 +1980,7 @@
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Alerts
|
||||
================================================== -->
|
||||
<section id="alerts">
|
||||
@@ -1873,18 +1998,18 @@
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="alert">
|
||||
<button type="button" class="close" data-dismiss="alert">×</button>
|
||||
<button type="button" class="close" data-dismiss="alert">&times;</button>
|
||||
<strong>{{_i}}Warning!{{/i}}</strong> {{_i}}Best check yo self, you're not looking too good.{{/i}}
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<h3>{{_i}}Dismiss buttons{{/i}}</h3>
|
||||
<p>{{_i}}Mobile Safari and Mobile Opera browsers, in addition to the <code>data-dismiss="alert"</code> attribute, require an <code>href="#"</code> for the dismissal of alerts when using an <code><a></code> tag.{{/i}}</p>
|
||||
<pre class="prettyprint linenums"><a href="#" class="close" data-dismiss="alert">×</a></pre>
|
||||
<pre class="prettyprint linenums"><a href="#" class="close" data-dismiss="alert">&times;</a></pre>
|
||||
<p>{{_i}}Alternatively, you may use a <code><button></code> element with the data attribute, which we have opted to do for our docs. When using <code><button></code>, you must include <code>type="button"</code> or your forms may not submit.{{/i}}</p>
|
||||
<pre class="prettyprint linenums"><button type="button" class="close" data-dismiss="alert">×</button></pre>
|
||||
<pre class="prettyprint linenums"><button type="button" class="close" data-dismiss="alert">&times;</button></pre>
|
||||
|
||||
<h3>{{_i}}Dismiss alerts via javascript{{/i}}</h3>
|
||||
<h3>{{_i}}Dismiss alerts via JavaScript{{/i}}</h3>
|
||||
<p>{{_i}}Use the <a href="./javascript.html#alerts">alerts jQuery plugin</a> for quick and easy dismissal of alerts.{{/i}}</p>
|
||||
|
||||
|
||||
@@ -1902,7 +2027,7 @@
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="alert alert-block">
|
||||
<button type="button" class="close" data-dismiss="alert">×</button>
|
||||
<button type="button" class="close" data-dismiss="alert">&times;</button>
|
||||
<h4>{{_i}}Warning!{{/i}}</h4>
|
||||
{{_i}}Best check yo self, you're not...{{/i}}
|
||||
</div>
|
||||
@@ -1958,6 +2083,7 @@
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Progress bars
|
||||
================================================== -->
|
||||
<section id="progress">
|
||||
@@ -2104,6 +2230,144 @@
|
||||
|
||||
|
||||
|
||||
<!-- Media object
|
||||
================================================== -->
|
||||
<section id="media">
|
||||
<div class="page-header">
|
||||
<h1>{{_i}}Media object{{/i}}</h1>
|
||||
</div>
|
||||
<p class="lead">{{_i}}Abstract object styles for building various types of components (like blog comments, Tweets, etc) that feature a left- or right-aligned image alongside textual content.{{/i}}</p>
|
||||
|
||||
<h2>{{_i}}Default example{{/i}}</h2>
|
||||
<p>{{_i}}The default media allow to float a media object (images, video, audio) to the left or right of a content block.{{/i}}</p>
|
||||
<div class="bs-docs-example">
|
||||
<div class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">{{_i}}Media heading{{/i}}</h4>
|
||||
Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
|
||||
</div>
|
||||
</div>
|
||||
<div class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">{{_i}}Media heading{{/i}}</h4>
|
||||
Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
|
||||
<div class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">{{_i}}Media heading{{/i}}</h4>
|
||||
Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>{{! /.bs-docs-example }}
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">{{_i}}Media heading{{/i}}</h4>
|
||||
...
|
||||
|
||||
<!-- Nested media object -->
|
||||
<div class="media">
|
||||
...
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
|
||||
<hr class="bs-docs-separator">
|
||||
|
||||
|
||||
<h2>{{_i}}Media list{{/i}}</h2>
|
||||
<p>{{_i}}With a bit of extra markup, you can use media inside list (useful for comment threads or articles lists).{{/i}}</p>
|
||||
<div class="bs-docs-example">
|
||||
<ul class="media-list">
|
||||
<li class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">{{_i}}Media heading{{/i}}</h4>
|
||||
<p>Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis.</p>
|
||||
<!-- Nested media object -->
|
||||
<div class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">{{_i}}Nested media heading{{/i}}</h4>
|
||||
Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis.
|
||||
<!-- Nested media object -->
|
||||
<div class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">{{_i}}Nested media heading{{/i}}</h4>
|
||||
Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Nested media object -->
|
||||
<div class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">{{_i}}Nested media heading{{/i}}</h4>
|
||||
Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="media">
|
||||
<a class="pull-right" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">{{_i}}Media heading{{/i}}</h4>
|
||||
Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis.
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<pre class="prettyprint linenums">
|
||||
<ul class="media-list">
|
||||
<li class="media">
|
||||
<a class="pull-left" href="#">
|
||||
<img class="media-object" data-src="holder.js/64x64">
|
||||
</a>
|
||||
<div class="media-body">
|
||||
<h4 class="media-heading">{{_i}}Media heading{{/i}}</h4>
|
||||
...
|
||||
|
||||
<!-- Nested media object -->
|
||||
<div class="media">
|
||||
...
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</pre>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Miscellaneous
|
||||
================================================== -->
|
||||
@@ -2153,7 +2417,7 @@
|
||||
<p><button class="close" style="float: none;">×</button></p>
|
||||
</div>
|
||||
<pre class="prettyprint linenums"><button class="close">&times;</button></pre>
|
||||
<p>{{_i}}iOS devices require an href="#" for click events if you rather use an anchor.{{/i}}</p>
|
||||
<p>{{_i}}iOS devices require an href="#" for click events if you would rather use an anchor.{{/i}}</p>
|
||||
<pre class="prettyprint linenums"><a class="close" href="#">&times;</a></pre>
|
||||
|
||||
<h2>{{_i}}Helper classes{{/i}}</h2>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<header class="jumbotron subhead" id="overview">
|
||||
<div class="container">
|
||||
<h1>{{_i}}Customize and download{{/i}}</h1>
|
||||
<p class="lead">{{_i}}<a href="https://github.com/twitter/bootstrap/zipball/master">Download Bootstrap</a> or customize variables, components, javascript plugins, and more.{{/i}}</p>
|
||||
<p class="lead">{{_i}}<a href="https://github.com/twitter/bootstrap/zipball/master">Download Bootstrap</a> or customize variables, components, JavaScript plugins, and more.{{/i}}</p>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
@@ -62,6 +62,7 @@
|
||||
<label class="checkbox"><input checked="checked" type="checkbox" value="alerts.less"> {{_i}}Alerts{{/i}}</label>
|
||||
<label class="checkbox"><input checked="checked" type="checkbox" value="progress-bars.less"> {{_i}}Progress bars{{/i}}</label>
|
||||
<label class="checkbox"><input checked="checked" type="checkbox" value="hero-unit.less"> {{_i}}Hero unit{{/i}}</label>
|
||||
<label class="checkbox"><input checked="checked" type="checkbox" value="media.less"> {{_i}}Media component{{/i}}</label>
|
||||
<h3>{{_i}}JS Components{{/i}}</h3>
|
||||
<label class="checkbox"><input checked="checked" type="checkbox" value="tooltip.less"> {{_i}}Tooltips{{/i}}</label>
|
||||
<label class="checkbox"><input checked="checked" type="checkbox" value="popovers.less"> {{_i}}Popovers{{/i}}</label>
|
||||
@@ -226,12 +227,14 @@
|
||||
<input type="text" class="span3" placeholder="Georgia, 'Times New Roman', Times, serif">
|
||||
<label>@monoFontFamily</label>
|
||||
<input type="text" class="span3" placeholder="Menlo, Monaco, 'Courier New', monospace">
|
||||
|
||||
<label>@baseFontSize</label>
|
||||
<input type="text" class="span3" placeholder="14px">
|
||||
<label>@baseFontFamily</label>
|
||||
<input type="text" class="span3" placeholder="@sansFontFamily">
|
||||
<label>@baseLineHeight</label>
|
||||
<input type="text" class="span3" placeholder="20px">
|
||||
|
||||
<label>@altFontFamily</label>
|
||||
<input type="text" class="span3" placeholder="@serifFontFamily">
|
||||
<label>@headingsFontFamily</label>
|
||||
@@ -240,6 +243,28 @@
|
||||
<input type="text" class="span3" placeholder="bold">
|
||||
<label>@headingsColor</label>
|
||||
<input type="text" class="span3" placeholder="inherit">
|
||||
|
||||
<label>@fontSizeLarge</label>
|
||||
<input type="text" class="span3" placeholder="@baseFontSize * 1.25">
|
||||
<label>@fontSizeSmall</label>
|
||||
<input type="text" class="span3" placeholder="@baseFontSize * 0.85">
|
||||
<label>@fontSizeMini</label>
|
||||
<input type="text" class="span3" placeholder="@baseFontSize * 0.75">
|
||||
|
||||
<label>@paddingLarge</label>
|
||||
<input type="text" class="span3" placeholder="11px 19px">
|
||||
<label>@paddingSmall</label>
|
||||
<input type="text" class="span3" placeholder="2px 10px">
|
||||
<label>@paddingMini</label>
|
||||
<input type="text" class="span3" placeholder="1px 6px">
|
||||
|
||||
<label>@baseBorderRadius</label>
|
||||
<input type="text" class="span3" placeholder="4px">
|
||||
<label>@borderRadiusLarge</label>
|
||||
<input type="text" class="span3" placeholder="6px">
|
||||
<label>@borderRadiusSmall</label>
|
||||
<input type="text" class="span3" placeholder="3px">
|
||||
|
||||
<label>@heroUnitBackground</label>
|
||||
<input type="text" class="span3" placeholder="@grayLighter">
|
||||
<label>@heroUnitHeadingColor</label>
|
||||
@@ -273,7 +298,7 @@
|
||||
<label>@btnPrimaryBackground</label>
|
||||
<input type="text" class="span3" placeholder="@linkColor">
|
||||
<label>@btnPrimaryBackgroundHighlight</label>
|
||||
<input type="text" class="span3" placeholder="darken(@white, 10%);">
|
||||
<input type="text" class="span3" placeholder="darken(@white, 10%)">
|
||||
|
||||
</div><!-- /span -->
|
||||
<div class="span3">
|
||||
@@ -326,6 +351,11 @@
|
||||
<label>@navbarSearchPlaceholderColor</label>
|
||||
<input type="text" class="span3" placeholder="#ccc">
|
||||
|
||||
<label>@navbarCollapseWidth</label>
|
||||
<input type="text" class="span3" placeholder="979px">
|
||||
<label>@navbarCollapseDesktopWidth</label>
|
||||
<input type="text" class="span3" placeholder="@navbarCollapseWidth + 1">
|
||||
|
||||
<h3>{{_i}}Dropdowns{{/i}}</h3>
|
||||
<label>@dropdownBackground</label>
|
||||
<input type="text" class="span3" placeholder="@white">
|
||||
@@ -348,7 +378,7 @@
|
||||
</h1>
|
||||
</div>
|
||||
<div class="download-btn">
|
||||
<a class="btn btn-primary" href="#" {{#production}}onclick="_gaq.push(['_trackEvent', 'Customize', 'Download', 'Customize and Download']);"{{/production}}>Customize and Download</a>
|
||||
<a class="btn btn-primary" href="#" {{#production}}onclick="_gaq.push(['_trackEvent', 'Customize', 'Download', 'Customize and Download']);"{{/production}}>{{_i}}Customize and Download{{/i}}</a>
|
||||
<h4>{{_i}}What's included?{{/i}}</h4>
|
||||
<p>{{_i}}Downloads include compiled CSS, compiled and minified CSS, and compiled jQuery plugins, all nicely packed up into a zipball for your convenience.{{/i}}</p>
|
||||
</div>
|
||||
|
||||
@@ -76,7 +76,7 @@
|
||||
<pre>$ lessc ./less/bootstrap.less > bootstrap.css</pre>
|
||||
<p>{{_i}}Be sure to include <code>--compress</code> in that command if you're trying to save some bytes!{{/i}}</p>
|
||||
|
||||
<h3>{{_i}}Javascript{{/i}}</h3>
|
||||
<h3>{{_i}}JavaScript{{/i}}</h3>
|
||||
<p>{{_i}}<a href="http://lesscss.org/">Download the latest Less.js</a> and include the path to it (and Bootstrap) in the <code><head></code>.{{/i}}</p>
|
||||
<pre class="prettyprint">
|
||||
<link rel="stylesheet/less" href="/path/to/bootstrap.less">
|
||||
@@ -109,18 +109,18 @@
|
||||
|
||||
<h3>{{_i}}Setup file structure{{/i}}</h3>
|
||||
<p>{{_i}}Download the latest compiled Bootstrap and place into your project. For example, you might have something like this:{{/i}}</p>
|
||||
<pre class="prettyprint">
|
||||
app/
|
||||
├── layouts/
|
||||
└── templates/
|
||||
public/
|
||||
├── css/
|
||||
│ ├── bootstrap.min.css
|
||||
├── js/
|
||||
│ ├── bootstrap.min.js
|
||||
└── img/
|
||||
├── glyphicons-halflings.png
|
||||
└── glyphicons-halflings-white.png
|
||||
<pre>
|
||||
<span class="icon-folder-open"></span> app/
|
||||
<span class="icon-folder-open"></span> layouts/
|
||||
<span class="icon-folder-open"></span> templates/
|
||||
<span class="icon-folder-open"></span> public/
|
||||
<span class="icon-folder-open"></span> css/
|
||||
<span class="icon-file"></span> bootstrap.min.css
|
||||
<span class="icon-folder-open"></span> js/
|
||||
<span class="icon-file"></span> bootstrap.min.js
|
||||
<span class="icon-folder-open"></span> img/
|
||||
<span class="icon-file"></span> glyphicons-halflings.png
|
||||
<span class="icon-file"></span> glyphicons-halflings-white.png
|
||||
</pre>
|
||||
|
||||
<h3>{{_i}}Utilize starter template{{/i}}</h3>
|
||||
|
||||
@@ -67,10 +67,9 @@
|
||||
├── js/
|
||||
│ ├── bootstrap.js
|
||||
│ ├── bootstrap.min.js
|
||||
├── img/
|
||||
│ ├── glyphicons-halflings.png
|
||||
│ ├── glyphicons-halflings-white.png
|
||||
└── README.md
|
||||
└── img/
|
||||
├── glyphicons-halflings.png
|
||||
└── glyphicons-halflings-white.png
|
||||
</pre>
|
||||
<p>{{_i}}This is the most basic form of Bootstrap: compiled files for quick drop-in usage in nearly any web project. We provide compiled CSS and JS (<code>bootstrap.*</code>), as well as compiled and minified CSS and JS (<code>bootstrap.min.*</code>). The image files are compressed using <a href="http://imageoptim.com/">ImageOptim</a>, a Mac app for compressing PNGs.{{/i}}</p>
|
||||
<p>{{_i}}Please note that all JavaScript plugins require jQuery to be included.{{/i}}</p>
|
||||
@@ -93,11 +92,11 @@
|
||||
<p>{{_i}}Styles for common HTML elements like typography, code, tables, forms, and buttons. Also includes <a href="http://glyphicons.com">Glyphicons</a>, a great little icon set.{{/i}}</p>
|
||||
<h4><a href="http://twitter.github.com/bootstrap/components.html">{{_i}}Components{{/i}}</a></h4>
|
||||
<p>{{_i}}Basic styles for common interface components like tabs and pills, navbar, alerts, page headers, and more.{{/i}}</p>
|
||||
<h4><a href="http://twitter.github.com/bootstrap/javascript.html">{{_i}}Javascript plugins{{/i}}</a></h4>
|
||||
<p>{{_i}}Similar to Components, these Javascript plugins are interactive components for things like tooltips, popovers, modals, and more.{{/i}}</p>
|
||||
<h4><a href="http://twitter.github.com/bootstrap/javascript.html">{{_i}}JavaScript plugins{{/i}}</a></h4>
|
||||
<p>{{_i}}Similar to Components, these JavaScript plugins are interactive components for things like tooltips, popovers, modals, and more.{{/i}}</p>
|
||||
|
||||
<h2>{{_i}}List of components{{/i}}</h2>
|
||||
<p>{{_i}}Together, the <strong>Components</strong> and <strong>Javascript plugins</strong> sections provide the following interface elements:{{/i}}</p>
|
||||
<p>{{_i}}Together, the <strong>Components</strong> and <strong>JavaScript plugins</strong> sections provide the following interface elements:{{/i}}</p>
|
||||
<ul>
|
||||
<li>{{_i}}Button groups{{/i}}</li>
|
||||
<li>{{_i}}Button dropdowns{{/i}}</li>
|
||||
@@ -128,7 +127,7 @@
|
||||
<div class="page-header">
|
||||
<h1>{{_i}}4. Basic HTML template{{/i}}</h1>
|
||||
</div>
|
||||
<p class="lead">{{_i}}With a brief intro into the contents out of the way, we can focus putting Bootstrap to use. To do that, we'll utilize a basic HTML template that includes everything we mentioned in the <a href="#file-structure">File structure</a>.{{/i}}</p>
|
||||
<p class="lead">{{_i}}With a brief intro into the contents out of the way, we can focus on putting Bootstrap to use. To do that, we'll utilize a basic HTML template that includes everything we mentioned in the <a href="#file-structure">File structure</a>.{{/i}}</p>
|
||||
<p>{{_i}}Now, here's a look at a <strong>typical HTML file</strong>:{{/i}}</p>
|
||||
<pre class="prettyprint linenums">
|
||||
<!DOCTYPE html>
|
||||
@@ -149,7 +148,7 @@
|
||||
<head>
|
||||
<title>Bootstrap 101 Template</title>
|
||||
<!-- Bootstrap -->
|
||||
<link href="css/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
|
||||
</head>
|
||||
<body>
|
||||
<h1>Hello, world!</h1>
|
||||
@@ -171,6 +170,13 @@
|
||||
</div>
|
||||
<p class="lead">{{_i}}Move beyond the base template with a few example layouts. We encourage folks to iterate on these examples and not simply use them as an end result.{{/i}}</p>
|
||||
<ul class="thumbnails bootstrap-examples">
|
||||
<li class="span3">
|
||||
<a class="thumbnail" href="examples/starter-template.html">
|
||||
<img src="assets/img/examples/bootstrap-example-starter.jpg" alt="">
|
||||
</a>
|
||||
<h4>{{_i}}Starter template{{/i}}</h4>
|
||||
<p>{{_i}}A barebones HTML document with all the Bootstrap CSS and JavaScript included.{{/i}}</p>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a class="thumbnail" href="examples/hero.html">
|
||||
<img src="assets/img/examples/bootstrap-example-hero.jpg" alt="">
|
||||
@@ -185,12 +191,35 @@
|
||||
<h4>{{_i}}Fluid layout{{/i}}</h4>
|
||||
<p>{{_i}}Uses our new responsive, fluid grid system to create a seamless liquid layout.{{/i}}</p>
|
||||
</li>
|
||||
|
||||
<li class="span3">
|
||||
<a class="thumbnail" href="examples/starter-template.html">
|
||||
<img src="assets/img/examples/bootstrap-example-starter.jpg" alt="">
|
||||
<a class="thumbnail" href="examples/marketing-narrow.html">
|
||||
<img src="assets/img/examples/bootstrap-example-marketing-narrow.png" alt="">
|
||||
</a>
|
||||
<h4>{{_i}}Starter template{{/i}}</h4>
|
||||
<p>{{_i}}A barebones HTML document with all the Bootstrap CSS and javascript included.{{/i}}</p>
|
||||
<h4>{{_i}}Narrow marketing{{/i}}</h4>
|
||||
<p>{{_i}}Slim, lightweight marketing template for small projects or teams.{{/i}}</p>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a class="thumbnail" href="examples/signin.html">
|
||||
<img src="assets/img/examples/bootstrap-example-signin.png" alt="">
|
||||
</a>
|
||||
<h4>{{_i}}Sign in{{/i}}</h4>
|
||||
<p>{{_i}}Barebones sign in form with custom, larger form controls and a flexible layout.{{/i}}</p>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a class="thumbnail" href="examples/sticky-footer.html">
|
||||
<img src="assets/img/examples/bootstrap-example-sticky-footer.png" alt="">
|
||||
</a>
|
||||
<h4>{{_i}}Sticky footer{{/i}}</h4>
|
||||
<p>{{_i}}Pin a fixed-height footer to the bottom of the user's viewport.{{/i}}</p>
|
||||
</li>
|
||||
|
||||
<li class="span3">
|
||||
<a class="thumbnail" href="examples/carousel.html">
|
||||
<img src="assets/img/examples/bootstrap-example-carousel.png" alt="">
|
||||
</a>
|
||||
<h4>{{_i}}Carousel jumbotron{{/i}}</h4>
|
||||
<p>{{_i}}A more interactive riff on the basic marketing site featuring a prominent carousel.{{/i}}</p>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
@@ -1,12 +1,23 @@
|
||||
<div class="jumbotron masthead">
|
||||
<div class="container">
|
||||
<h1>Bootstrap</h1>
|
||||
<p>Sleek, intuitive, and powerful front-end framework for faster and easier web development.</p>
|
||||
<p><a href="assets/bootstrap.zip" class="btn btn-primary btn-large" {{#production}}onclick="_gaq.push(['_trackEvent', 'Jumbotron actions', 'Download', 'Download 2.1.1']);"{{/production}}>{{_i}}Download Bootstrap{{/i}}</a></p>
|
||||
<h1>{{_i}}Bootstrap{{/i}}</h1>
|
||||
<p>{{_i}}Sleek, intuitive, and powerful front-end framework for faster and easier web development.{{/i}}</p>
|
||||
<p>
|
||||
<a href="assets/bootstrap.zip" class="btn btn-primary btn-large" {{#production}}onclick="_gaq.push(['_trackEvent', 'Jumbotron actions', 'Download', 'Download 2.2.2']);"{{/production}}>{{_i}}Download Bootstrap{{/i}}</a>
|
||||
</p>
|
||||
<ul class="masthead-links">
|
||||
<li><a href="http://github.com/twitter/bootstrap" {{#production}}onclick="_gaq.push(['_trackEvent', 'Jumbotron actions', 'Jumbotron links', 'GitHub project']);"{{/production}}>GitHub project</a></li>
|
||||
<li><a href="./extend.html" {{#production}}onclick="_gaq.push(['_trackEvent', 'Jumbotron actions', 'Jumbotron links', 'Extend']);"{{/production}}>Extend</a></li>
|
||||
<li>Version 2.1.1</li>
|
||||
<li>
|
||||
<a href="http://github.com/twitter/bootstrap" {{#production}}onclick="_gaq.push(['_trackEvent', 'Jumbotron actions', 'Jumbotron links', 'GitHub project']);"{{/production}}>{{_i}}GitHub project{{/i}}</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="./getting-started.html#examples" {{#production}}onclick="_gaq.push(['_trackEvent', 'Jumbotron actions', 'Jumbotron links', 'Examples']);"{{/production}}>{{_i}}Examples{{/i}}</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="./extend.html" {{#production}}onclick="_gaq.push(['_trackEvent', 'Jumbotron actions', 'Jumbotron links', 'Extend']);"{{/production}}>{{_i}}Extend{{/i}}</a>
|
||||
</li>
|
||||
<li>
|
||||
{{_i}}Version 2.2.2{{/i}}
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
@@ -18,7 +29,7 @@
|
||||
<iframe class="github-btn" src="http://ghbtns.com/github-btn.html?user=twitter&repo=bootstrap&type=watch&count=true" allowtransparency="true" frameborder="0" scrolling="0" width="100px" height="20px"></iframe>
|
||||
</li>
|
||||
<li>
|
||||
<iframe class="github-btn" src="http://ghbtns.com/github-btn.html?user=twitter&repo=bootstrap&type=fork&count=true" allowtransparency="true" frameborder="0" scrolling="0" width="98px" height="20px"></iframe>
|
||||
<iframe class="github-btn" src="http://ghbtns.com/github-btn.html?user=twitter&repo=bootstrap&type=fork&count=true" allowtransparency="true" frameborder="0" scrolling="0" width="102px" height="20px"></iframe>
|
||||
</li>
|
||||
<li class="follow-btn">
|
||||
<a href="https://twitter.com/twbootstrap" class="twitter-follow-button" data-link-color="#0069D6" data-show-count="true">{{_i}}Follow @twbootstrap{{/i}}</a>
|
||||
@@ -39,19 +50,19 @@
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span4">
|
||||
<img src="assets/img/bs-docs-twitter-github.png">
|
||||
<img class="marketing-img" src="assets/img/bs-docs-twitter-github.png">
|
||||
<h2>{{_i}}By nerds, for nerds.{{/i}}</h2>
|
||||
<p>{{_i}}Built at Twitter by <a href="http://twitter.com/mdo">@mdo</a> and <a href="http://twitter.com/fat">@fat</a>, Bootstrap utilizes <a href="http://lesscss.org">LESS CSS</a>, is compiled via <a href="http://nodejs.org">Node</a>, and is managed through <a href="http://github.com">GitHub</a> to help nerds do awesome stuff on the web.{{/i}}</p>
|
||||
</div>
|
||||
<div class="span4">
|
||||
<img src="assets/img/bs-docs-responsive-illustrations.png">
|
||||
<img class="marketing-img" src="assets/img/bs-docs-responsive-illustrations.png">
|
||||
<h2>{{_i}}Made for everyone.{{/i}}</h2>
|
||||
<p>{{_i}}Bootstrap was made to not only look and behave great in the latest desktop browsers (as well as IE7!), but in tablet and smartphone browsers via <a href="./scaffolding.html#responsive">responsive CSS</a> as well.{{/i}}</p>
|
||||
</div>
|
||||
<div class="span4">
|
||||
<img src="assets/img/bs-docs-bootstrap-features.png">
|
||||
<img class="marketing-img" src="assets/img/bs-docs-bootstrap-features.png">
|
||||
<h2>{{_i}}Packed with features.{{/i}}</h2>
|
||||
<p>{{_i}}A 12-column responsive <a href="./scaffolding.html#grid">grid</a>, dozens of components, <a href="./javascript.html">javascript plugins</a>, typography, form controls, and even a <a href="./customize.html">web-based Customizer</a> to make Bootstrap your own.{{/i}}</p>
|
||||
<p>{{_i}}A 12-column responsive <a href="./scaffolding.html#gridSystem">grid</a>, dozens of components, <a href="./javascript.html">JavaScript plugins</a>, typography, form controls, and even a <a href="./customize.html">web-based Customizer</a> to make Bootstrap your own.{{/i}}</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -72,8 +83,8 @@
|
||||
</a>
|
||||
</li>
|
||||
<li class="span3">
|
||||
<a class="thumbnail" href="http://www.fleetio.com/" target="_blank">
|
||||
<img src="assets/img/example-sites/fleetio.png" alt="Fleetio">
|
||||
<a class="thumbnail" href="http://www.gathercontent.com/" target="_blank">
|
||||
<img src="assets/img/example-sites/gathercontent.png" alt="Gather Content">
|
||||
</a>
|
||||
</li>
|
||||
<li class="span3">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
================================================== -->
|
||||
<header class="jumbotron subhead">
|
||||
<div class="container">
|
||||
<h1>{{_i}}JavaScript for Bootstrap{{/i}}</h1>
|
||||
<h1>{{_i}}JavaScript{{/i}}</h1>
|
||||
<p class="lead">{{_i}}Bring Bootstrap's components to life—now with 13 custom jQuery plugins.{{/i}}
|
||||
</div>
|
||||
</header>
|
||||
@@ -41,7 +41,7 @@
|
||||
</div>
|
||||
|
||||
<h3>{{_i}}Individual or compiled{{/i}}</h3>
|
||||
<p>{{_i}}If you have downloaded the latest version of Bootstrap, both <strong>bootstrap.js</strong> and <strong>bootstrap.min.js</strong> contain all of the plugins listed on this page.{{/i}}</p>
|
||||
<p>{{_i}}Plugins can be included individually (though some have required dependencies), or all at once. Both <strong>bootstrap.js</strong> and <strong>bootstrap.min.js</strong> contain all plugins in a single file.{{/i}}</p>
|
||||
|
||||
<h3>{{_i}}Data attributes{{/i}}</h3>
|
||||
<p>{{_i}}You can use all Bootstrap plugins purely through the markup API without writing a single line of JavaScript. This is Bootstrap's first class API and should be your first consideration when using a plugin.{{/i}}</p>
|
||||
@@ -49,7 +49,7 @@
|
||||
<p>{{_i}}That said, in some situations it may be desirable to turn this functionality off. Therefore, we also provide the ability to disable the data attribute API by unbinding all events on the body namespaced with `'data-api'`. This looks like this:{{/i}}
|
||||
<pre class="prettyprint linenums">$('body').off('.data-api')</pre>
|
||||
|
||||
<p>{{_i}}Alternatively, to target a specific plugin, just include the plugins name as a namespace along with the data-api namespace like this:{{/i}}</p>
|
||||
<p>{{_i}}Alternatively, to target a specific plugin, just include the plugin's name as a namespace along with the data-api namespace like this:{{/i}}</p>
|
||||
<pre class="prettyprint linenums">$('body').off('.alert.data-api')</pre>
|
||||
|
||||
<h3>{{_i}}Programmatic API{{/i}}</h3>
|
||||
@@ -61,11 +61,19 @@ $("#myModal").modal() // initialized with defaults
|
||||
$("#myModal").modal({ keyboard: false }) // initialized with no keyboard
|
||||
$("#myModal").modal('show') // initializes and invokes show immediately</p>
|
||||
</pre>
|
||||
<p>{{_i}}Each plugin also exposes it's raw constructor on a `Constructor` property: <code>$.fn.popover.Constructor</code>. If you'd like to get a particular plugin instance, retrieve it directly from an element: <code>$('[rel=popover]').data('popover')</code>.{{/i}}</p>
|
||||
<p>{{_i}}Each plugin also exposes its raw constructor on a `Constructor` property: <code>$.fn.popover.Constructor</code>. If you'd like to get a particular plugin instance, retrieve it directly from an element: <code>$('[rel=popover]').data('popover')</code>.{{/i}}</p>
|
||||
|
||||
<h3>{{_i}}No Conflict{{/i}}</h3>
|
||||
<p>{{_i}}Sometimes it's neccessary to use bootstrap plugins with other ui frameworks. In these circumstances, occasionally namespace collisions can occur. If this happens, you may call <code>.noCoflict</code> on the plugin you wish to revert the value of.{{/i}}</p>
|
||||
|
||||
<pre class="prettyprint linenums">
|
||||
var bootstrapButton = $.fn.button.noConflict() // return $.fn.button to previously assigned value
|
||||
$.fn.bootstrapBtn = bootstrapButton // give $().bootstrapBtn the bootstrap functionality
|
||||
</pre>
|
||||
|
||||
<h3>{{_i}}Events{{/i}}</h3>
|
||||
<p>{{_i}}Bootstrap provides custom events for most plugin's unique actions. Generally, these come in an infinitive and past participle form - where the infinitive (ex. <code>show</code>) is triggered at the start of an event, and it's past participle form (ex. <code>shown</code>) is trigger on the completion of an action.{{/i}}</p>
|
||||
<p>{{_i}}All infinitive events provide preventDefault functionality. This provides the abililty to stop the execution of an action before it starts.{{/i}}</p>
|
||||
<p>{{_i}}Bootstrap provides custom events for most plugin's unique actions. Generally, these come in an infinitive and past participle form - where the infinitive (ex. <code>show</code>) is triggered at the start of an event, and its past participle form (ex. <code>shown</code>) is trigger on the completion of an action.{{/i}}</p>
|
||||
<p>{{_i}}All infinitive events provide preventDefault functionality. This provides the ability to stop the execution of an action before it starts.{{/i}}</p>
|
||||
<pre class="prettyprint linenums">
|
||||
$('#myModal').on('show', function (e) {
|
||||
if (!data) return e.preventDefault() // stops modal from being shown
|
||||
@@ -111,13 +119,13 @@ $('#myModal').on('show', function (e) {
|
||||
<h3>{{_i}}Static example{{/i}}</h3>
|
||||
<p>{{_i}}A rendered modal with header, body, and set of actions in the footer.{{/i}}</p>
|
||||
<div class="bs-docs-example" style="background-color: #f5f5f5;">
|
||||
<div class="modal" style="position: relative; top: auto; left: auto; margin: 0 auto 20px; z-index: 1; max-width: 100%;">
|
||||
<div class="modal" style="position: relative; top: auto; left: auto; right: auto; margin: 0 auto 20px; z-index: 1; max-width: 100%;">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3>{{_i}}Modal header{{/i}}</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>{{_i}}One fine body…{{/i}}</p>
|
||||
<p>{{_i}}One fine body…{{/i}}</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<a href="#" class="btn">{{_i}}Close{{/i}}</a>
|
||||
@@ -132,7 +140,7 @@ $('#myModal').on('show', function (e) {
|
||||
<h3>{{_i}}Modal header{{/i}}</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>{{_i}}One fine body…{{/i}}</p>
|
||||
<p>{{_i}}One fine body…{{/i}}</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<a href="#" class="btn">{{_i}}Close{{/i}}</a>
|
||||
@@ -154,7 +162,7 @@ $('#myModal').on('show', function (e) {
|
||||
<p>Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem.</p>
|
||||
|
||||
<h4>{{_i}}Popover in a modal{{/i}}</h4>
|
||||
<p>{{_i}}This <a href="#" role="button" class="btn popover-test" title="A Title" data-content="And here's some amazing content. It's very engaging. right?">button</a> should trigger a popover on hover.{{/i}}</p>
|
||||
<p>{{_i}}This <a href="#" role="button" class="btn popover-test" title="A Title" data-content="And here's some amazing content. It's very engaging. right?">button</a> should trigger a popover on click.{{/i}}</p>
|
||||
|
||||
<h4>{{_i}}Tooltips in a modal{{/i}}</h4>
|
||||
<p>{{_i}}<a href="#" class="tooltip-test" title="Tooltip">This link</a> and <a href="#" class="tooltip-test" title="Tooltip">that link</a> should have tooltips on hover.{{/i}}</p>
|
||||
@@ -179,17 +187,17 @@ $('#myModal').on('show', function (e) {
|
||||
<a data-toggle="modal" href="#myModal" class="btn btn-primary btn-large">{{_i}}Launch demo modal{{/i}}</a>
|
||||
</div>{{! /example }}
|
||||
<pre class="prettyprint linenums">
|
||||
<-- Button to trigger modal -->
|
||||
<!-- Button to trigger modal -->
|
||||
<a href="#myModal" role="button" class="btn" data-toggle="modal">{{_i}}Launch demo modal{{/i}}</a>
|
||||
|
||||
<-- Modal -->
|
||||
<div class="modal" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
|
||||
<!-- Modal -->
|
||||
<div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="myModalLabel">Modal header</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>{{_i}}One fine body…{{/i}}</p>
|
||||
<p>{{_i}}One fine body…{{/i}}</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn" data-dismiss="modal" aria-hidden="true">{{_i}}Close{{/i}}</button>
|
||||
@@ -436,8 +444,8 @@ $('#myModal').on('hidden', function () {
|
||||
<p><em>{{_i}}None{{/i}}</em></p>
|
||||
|
||||
<h3>{{_i}}Methods{{/i}}</h3>
|
||||
<h4>$().dropdown()</h4>
|
||||
<p>{{_i}}A programatic api for activating menus for a given navbar or tabbed navigation.{{/i}}</p>
|
||||
<h4>$().dropdown('toggle')</h4>
|
||||
<p>{{_i}}A programmatic api for toggling menus for a given navbar or tabbed navigation.{{/i}}</p>
|
||||
</section>
|
||||
|
||||
|
||||
@@ -566,7 +574,7 @@ $('[data-spy="scroll"]').each(function () {
|
||||
|
||||
|
||||
<h2>{{_i}}Example tabs{{/i}}</h2>
|
||||
<p>{{_i}}Add quick, dynamic tab functionality to transiton through panes of local content, even via dropdown menus.{{/i}}</p>
|
||||
<p>{{_i}}Add quick, dynamic tab functionality to transition through panes of local content, even via dropdown menus.{{/i}}</p>
|
||||
<div class="bs-docs-example">
|
||||
<ul id="myTab" class="nav nav-tabs">
|
||||
<li class="active"><a href="#home" data-toggle="tab">{{_i}}Home{{/i}}</a></li>
|
||||
@@ -734,7 +742,7 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
|
||||
<tr>
|
||||
<td>{{_i}}html{{/i}}</td>
|
||||
<td>{{_i}}boolean{{/i}}</td>
|
||||
<td>true</td>
|
||||
<td>false</td>
|
||||
<td>{{_i}}Insert html into the tooltip. If false, jquery's <code>text</code> method will be used to insert content into the dom. Use text if you're worried about XSS attacks.{{/i}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -855,6 +863,16 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
|
||||
<a href="#" class="btn btn-large btn-danger" rel="popover" title="A Title" data-content="And here's some amazing content. It's very engaging. right?">{{_i}}Click to toggle popover{{/i}}</a>
|
||||
</div>
|
||||
|
||||
<h4>{{_i}}Four directions{{/i}}</h4>
|
||||
<div class="bs-docs-example tooltip-demo">
|
||||
<ul class="bs-docs-tooltip-examples">
|
||||
<li><a href="#" class="btn" rel="popover" data-placement="top" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus." title="Popover on top">Popover on top</a></li>
|
||||
<li><a href="#" class="btn" rel="popover" data-placement="right" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus." title="Popover on right">Popover on right</a></li>
|
||||
<li><a href="#" class="btn" rel="popover" data-placement="bottom" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus." title="Popover on bottom">Popover on bottom</a></li>
|
||||
<li><a href="#" class="btn" rel="popover" data-placement="left" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus." title="Popover on left">Popover on left</a></li>
|
||||
</ul>
|
||||
</div>{{! /example }}
|
||||
|
||||
|
||||
<hr class="bs-docs-separator">
|
||||
|
||||
@@ -884,7 +902,7 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
|
||||
<tr>
|
||||
<td>{{_i}}html{{/i}}</td>
|
||||
<td>{{_i}}boolean{{/i}}</td>
|
||||
<td>true</td>
|
||||
<td>false</td>
|
||||
<td>{{_i}}Insert html into the popover. If false, jquery's <code>text</code> method will be used to insert content into the dom. Use text if you're worried about XSS attacks.{{/i}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -1044,7 +1062,7 @@ $('#my-alert').bind('closed', function () {
|
||||
<p>{{_i}}Do more with buttons. Control button states or create groups of buttons for more components like toolbars.{{/i}}</p>
|
||||
|
||||
<h4>{{_i}}Stateful{{/i}}</h4>
|
||||
<p>{{_i}}Add data-loading-text="Loading..." to use a loading state on a button.{{/i}}</p>
|
||||
<p>{{_i}}Add <code>data-loading-text="Loading..."</code> to use a loading state on a button.{{/i}}</p>
|
||||
<div class="bs-docs-example" style="padding-bottom: 24px;">
|
||||
<button type="button" id="fat-btn" data-loading-text="loading..." class="btn btn-primary">
|
||||
{{_i}}Loading state{{/i}}
|
||||
@@ -1053,14 +1071,14 @@ $('#my-alert').bind('closed', function () {
|
||||
<pre class="prettyprint linenums"><button type="button" class="btn btn-primary" data-loading-text="Loading...">Loading state</button></pre>
|
||||
|
||||
<h4>{{_i}}Single toggle{{/i}}</h4>
|
||||
<p>{{_i}}Add data-toggle="button" to activate toggling on a single button.{{/i}}</p>
|
||||
<p>{{_i}}Add <code>data-toggle="button"</code> to activate toggling on a single button.{{/i}}</p>
|
||||
<div class="bs-docs-example" style="padding-bottom: 24px;">
|
||||
<button type="button" class="btn btn-primary" data-toggle="button">{{_i}}Single Toggle{{/i}}</button>
|
||||
</div>{{! /example }}
|
||||
<pre class="prettyprint linenums"><button type="button" class="btn" data-toggle="button">Single Toggle</button></pre>
|
||||
<pre class="prettyprint linenums"><button type="button" class="btn btn-primary" data-toggle="button">Single Toggle</button></pre>
|
||||
|
||||
<h4>{{_i}}Checkbox{{/i}}</h4>
|
||||
<p>{{_i}}Add data-toggle="buttons-checkbox" for checkbox style toggling on btn-group.{{/i}}</p>
|
||||
<p>{{_i}}Add <code>data-toggle="buttons-checkbox"</code> for checkbox style toggling on btn-group.{{/i}}</p>
|
||||
<div class="bs-docs-example" style="padding-bottom: 24px;">
|
||||
<div class="btn-group" data-toggle="buttons-checkbox">
|
||||
<button type="button" class="btn btn-primary">{{_i}}Left{{/i}}</button>
|
||||
@@ -1070,14 +1088,14 @@ $('#my-alert').bind('closed', function () {
|
||||
</div>{{! /example }}
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="btn-group" data-toggle="buttons-checkbox">
|
||||
<button type="button" class="btn">Left</button>
|
||||
<button type="button" class="btn">Middle</button>
|
||||
<button type="button" class="btn">Right</button>
|
||||
<button type="button" class="btn btn-primary">Left</button>
|
||||
<button type="button" class="btn btn-primary">Middle</button>
|
||||
<button type="button" class="btn btn-primary">Right</button>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
<h4>{{_i}}Radio{{/i}}</h4>
|
||||
<p>{{_i}}Add data-toggle="buttons-radio" for radio style toggling on btn-group.{{/i}}</p>
|
||||
<p>{{_i}}Add <code>data-toggle="buttons-radio"</code> for radio style toggling on btn-group.{{/i}}</p>
|
||||
<div class="bs-docs-example" style="padding-bottom: 24px;">
|
||||
<div class="btn-group" data-toggle="buttons-radio">
|
||||
<button type="button" class="btn btn-primary">{{_i}}Left{{/i}}</button>
|
||||
@@ -1087,9 +1105,9 @@ $('#my-alert').bind('closed', function () {
|
||||
</div>{{! /example }}
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="btn-group" data-toggle="buttons-radio">
|
||||
<button type="button" class="btn">Left</button>
|
||||
<button type="button" class="btn">Middle</button>
|
||||
<button type="button" class="btn">Right</button>
|
||||
<button type="button" class="btn btn-primary">Left</button>
|
||||
<button type="button" class="btn btn-primary">Middle</button>
|
||||
<button type="button" class="btn btn-primary">Right</button>
|
||||
</div>
|
||||
</pre>
|
||||
|
||||
@@ -1533,6 +1551,12 @@ $('.carousel').carousel({
|
||||
<td>{{_i}}exact match,<br> case sensitive,<br> case insensitive{{/i}}</td>
|
||||
<td>{{_i}}Method used to sort autocomplete results. Accepts a single argument <code>items</code> and has the scope of the typeahead instance. Reference the current query with <code>this.query</code>.{{/i}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{_i}}updater{{/i}}</td>
|
||||
<td>{{_i}}function{{/i}}</td>
|
||||
<td>{{_i}}returns selected item{{/i}}</td>
|
||||
<td>{{_i}}The method used to return selected item. Accepts a single argument, the <code>item</code> and has the scope of the typeahead instance.{{/i}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{_i}}highlighter{{/i}}</td>
|
||||
<td>{{_i}}function{{/i}}</td>
|
||||
@@ -1601,7 +1625,7 @@ $('[data-spy="affix"]').each(function () {
|
||||
<td>{{_i}}offset{{/i}}</td>
|
||||
<td>{{_i}}number | function | object{{/i}}</td>
|
||||
<td>{{_i}}10{{/i}}</td>
|
||||
<td>{{_i}}Pixels to offset from screen when calculating position of scroll. If a single number is provide, the offset will be applied in both top and left directions. To listen for a single direction, or multiple unique offsets, just provided an object <code>offset: { x: 10 }</code>. Use a function when you need to dynamically provide an offset (useful for some responsive designs).{{/i}}</td>
|
||||
<td>{{_i}}Pixels to offset from screen when calculating position of scroll. If a single number is provided, the offset will be applied in both top and left directions. To listen for a single direction, or multiple unique offsets, just provide an object <code>offset: { x: 10 }</code>. Use a function when you need to dynamically provide an offset (useful for some responsive designs).{{/i}}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
<p>{{_i}}These styles can be found within <strong>scaffolding.less</strong>.{{/i}}</p>
|
||||
|
||||
<h3>{{_i}}Reset via Normalize{{/i}}</h3>
|
||||
<p>{{_i}}With Bootstrap 2, the old reset block has been dropped in favor of <a href="http://necolas.github.com/normalize.css/" target="_blank">Normalize.css</a>, a project by <a href="http://twitter.com/necolas" target="_blank">Nicolas Gallagher</a> that also powers the <a href="http://html5boilerplate.com" target="_blank">HTML5 Boilerplate</a>. While we use much of Normalize within our <strong>reset.less</strong>, we have removed some elements specifically for Bootstrap.{{/i}}</p>
|
||||
<p>{{_i}}With Bootstrap 2, the old reset block has been dropped in favor of <a href="http://necolas.github.com/normalize.css/" target="_blank">Normalize.css</a>, a project by <a href="http://twitter.com/necolas" target="_blank">Nicolas Gallagher</a> and <a href="http://twitter.com/jon_neal" target="_blank">Jonathan Neal</a> that also powers the <a href="http://html5boilerplate.com" target="_blank">HTML5 Boilerplate</a>. While we use much of Normalize within our <strong>reset.less</strong>, we have removed some elements specifically for Bootstrap.{{/i}}</p>
|
||||
|
||||
</section>
|
||||
|
||||
@@ -130,7 +130,7 @@
|
||||
<p>{{_i}}To nest your content with the default grid, add a new <code>.row</code> and set of <code>.span*</code> columns within an existing <code>.span*</code> column. Nested rows should include a set of columns that add up to the number of columns of its parent.{{/i}}</p>
|
||||
<div class="row show-grid">
|
||||
<div class="span9">
|
||||
{{_i}}Level 1 of column{{/i}}
|
||||
{{_i}}Level 1 column{{/i}}
|
||||
<div class="row show-grid">
|
||||
<div class="span6">
|
||||
{{_i}}Level 2{{/i}}
|
||||
@@ -230,13 +230,21 @@
|
||||
</pre>
|
||||
|
||||
<h2>{{_i}}Fluid nesting{{/i}}</h2>
|
||||
<p>{{_i}}Nesting with fluid grids is a bit different: the number of nested columns should not match the parent's number of columns. Instead, each level of nested columns are reset because each row takes up 100% of the parent column.{{/i}}</p>
|
||||
<p>{{_i}}Fluid grids utilize nesting differently: each nested level of columns should add up to 12 columns. This is because the fluid grid uses percentages, not pixels, for setting widths.{{/i}}</p>
|
||||
<div class="row-fluid show-grid">
|
||||
<div class="span12">
|
||||
{{_i}}Fluid 12{{/i}}
|
||||
<div class="row-fluid show-grid">
|
||||
<div class="span6">
|
||||
{{_i}}Fluid 6{{/i}}
|
||||
<div class="row-fluid show-grid">
|
||||
<div class="span6">
|
||||
{{_i}}Fluid 6{{/i}}
|
||||
</div>
|
||||
<div class="span6">
|
||||
{{_i}}Fluid 6{{/i}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="span6">
|
||||
{{_i}}Fluid 6{{/i}}
|
||||
@@ -247,10 +255,16 @@
|
||||
<pre class="prettyprint linenums">
|
||||
<div class="row-fluid">
|
||||
<div class="span12">
|
||||
{{_i}}Level 1 of column{{/i}}
|
||||
{{_i}}Fluid 12{{/i}}
|
||||
<div class="row-fluid">
|
||||
<div class="span6">{{_i}}Level 2{{/i}}</div>
|
||||
<div class="span6">{{_i}}Level 2{{/i}}</div>
|
||||
<div class="span6">
|
||||
{{_i}}Fluid 6{{/i}}
|
||||
<div class="row-fluid">
|
||||
<div class="span6">{{_i}}Fluid 6{{/i}}</div>
|
||||
<div class="span6">{{_i}}Fluid 6{{/i}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="span6">{{_i}}Fluid 6{{/i}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -442,7 +456,7 @@
|
||||
</table>
|
||||
|
||||
<h3>{{_i}}When to use{{/i}}</h3>
|
||||
<p>{{_i}}Use on a limited basis and avoid creating entirely different versions of the same site. Instead, use them to complement each device's presentation.{{/i}}</p>
|
||||
<p>{{_i}}Use on a limited basis and avoid creating entirely different versions of the same site. Instead, use them to complement each device's presentation. Responsive utilities should not be used with tables, and as such are not supported.{{/i}}</p>
|
||||
|
||||
<h3>{{_i}}Responsive utilities test case{{/i}}</h3>
|
||||
<p>{{_i}}Resize your browser or load on different devices to test the above classes.{{/i}}</p>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ==========================================================
|
||||
* bootstrap-affix.js v2.1.1
|
||||
* bootstrap-affix.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#affix
|
||||
* ==========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -28,7 +28,9 @@
|
||||
|
||||
var Affix = function (element, options) {
|
||||
this.options = $.extend({}, $.fn.affix.defaults, options)
|
||||
this.$window = $(window).on('scroll.affix.data-api', $.proxy(this.checkPosition, this))
|
||||
this.$window = $(window)
|
||||
.on('scroll.affix.data-api', $.proxy(this.checkPosition, this))
|
||||
.on('click.affix.data-api', $.proxy(function () { setTimeout($.proxy(this.checkPosition, this), 1) }, this))
|
||||
this.$element = $(element)
|
||||
this.checkPosition()
|
||||
}
|
||||
@@ -66,6 +68,8 @@
|
||||
/* AFFIX PLUGIN DEFINITION
|
||||
* ======================= */
|
||||
|
||||
var old = $.fn.affix
|
||||
|
||||
$.fn.affix = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -83,6 +87,15 @@
|
||||
}
|
||||
|
||||
|
||||
/* AFFIX NO CONFLICT
|
||||
* ================= */
|
||||
|
||||
$.fn.affix.noConflict = function () {
|
||||
$.fn.affix = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* AFFIX DATA-API
|
||||
* ============== */
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ==========================================================
|
||||
* bootstrap-alert.js v2.1.1
|
||||
* bootstrap-alert.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#alerts
|
||||
* ==========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -68,6 +68,8 @@
|
||||
/* ALERT PLUGIN DEFINITION
|
||||
* ======================= */
|
||||
|
||||
var old = $.fn.alert
|
||||
|
||||
$.fn.alert = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -80,11 +82,18 @@
|
||||
$.fn.alert.Constructor = Alert
|
||||
|
||||
|
||||
/* ALERT NO CONFLICT
|
||||
* ================= */
|
||||
|
||||
$.fn.alert.noConflict = function () {
|
||||
$.fn.alert = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* ALERT DATA-API
|
||||
* ============== */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.alert.data-api', dismiss, Alert.prototype.close)
|
||||
})
|
||||
$(document).on('click.alert.data-api', dismiss, Alert.prototype.close)
|
||||
|
||||
}(window.jQuery);
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ============================================================
|
||||
* bootstrap-button.js v2.1.1
|
||||
* bootstrap-button.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#buttons
|
||||
* ============================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -64,6 +64,8 @@
|
||||
/* BUTTON PLUGIN DEFINITION
|
||||
* ======================== */
|
||||
|
||||
var old = $.fn.button
|
||||
|
||||
$.fn.button = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -82,15 +84,22 @@
|
||||
$.fn.button.Constructor = Button
|
||||
|
||||
|
||||
/* BUTTON NO CONFLICT
|
||||
* ================== */
|
||||
|
||||
$.fn.button.noConflict = function () {
|
||||
$.fn.button = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* BUTTON DATA-API
|
||||
* =============== */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.button.data-api', '[data-toggle^=button]', function ( e ) {
|
||||
var $btn = $(e.target)
|
||||
if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
|
||||
$btn.button('toggle')
|
||||
})
|
||||
$(document).on('click.button.data-api', '[data-toggle^=button]', function (e) {
|
||||
var $btn = $(e.target)
|
||||
if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
|
||||
$btn.button('toggle')
|
||||
})
|
||||
|
||||
}(window.jQuery);
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ==========================================================
|
||||
* bootstrap-carousel.js v2.1.1
|
||||
* bootstrap-carousel.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#carousel
|
||||
* ==========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -29,7 +29,6 @@
|
||||
var Carousel = function (element, options) {
|
||||
this.$element = $(element)
|
||||
this.options = options
|
||||
this.options.slide && this.slide(this.options.slide)
|
||||
this.options.pause == 'hover' && this.$element
|
||||
.on('mouseenter', $.proxy(this.pause, this))
|
||||
.on('mouseleave', $.proxy(this.cycle, this))
|
||||
@@ -94,9 +93,7 @@
|
||||
, direction = type == 'next' ? 'left' : 'right'
|
||||
, fallback = type == 'next' ? 'first' : 'last'
|
||||
, that = this
|
||||
, e = $.Event('slide', {
|
||||
relatedTarget: $next[0]
|
||||
})
|
||||
, e
|
||||
|
||||
this.sliding = true
|
||||
|
||||
@@ -104,6 +101,10 @@
|
||||
|
||||
$next = $next.length ? $next : this.$element.find('.item')[fallback]()
|
||||
|
||||
e = $.Event('slide', {
|
||||
relatedTarget: $next[0]
|
||||
})
|
||||
|
||||
if ($next.hasClass('active')) return
|
||||
|
||||
if ($.support.transition && this.$element.hasClass('slide')) {
|
||||
@@ -139,6 +140,8 @@
|
||||
/* CAROUSEL PLUGIN DEFINITION
|
||||
* ========================== */
|
||||
|
||||
var old = $.fn.carousel
|
||||
|
||||
$.fn.carousel = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -160,17 +163,23 @@
|
||||
$.fn.carousel.Constructor = Carousel
|
||||
|
||||
|
||||
/* CAROUSEL NO CONFLICT
|
||||
* ==================== */
|
||||
|
||||
$.fn.carousel.noConflict = function () {
|
||||
$.fn.carousel = old
|
||||
return this
|
||||
}
|
||||
|
||||
/* CAROUSEL DATA-API
|
||||
* ================= */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.carousel.data-api', '[data-slide]', function ( e ) {
|
||||
var $this = $(this), href
|
||||
, $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
|
||||
, options = !$target.data('modal') && $.extend({}, $target.data(), $this.data())
|
||||
$target.carousel(options)
|
||||
e.preventDefault()
|
||||
})
|
||||
$(document).on('click.carousel.data-api', '[data-slide]', function (e) {
|
||||
var $this = $(this), href
|
||||
, $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
|
||||
, options = $.extend({}, $target.data(), $this.data())
|
||||
$target.carousel(options)
|
||||
e.preventDefault()
|
||||
})
|
||||
|
||||
}(window.jQuery);
|
||||
@@ -1,5 +1,5 @@
|
||||
/* =============================================================
|
||||
* bootstrap-collapse.js v2.1.1
|
||||
* bootstrap-collapse.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#collapse
|
||||
* =============================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -120,8 +120,10 @@
|
||||
}
|
||||
|
||||
|
||||
/* COLLAPSIBLE PLUGIN DEFINITION
|
||||
* ============================== */
|
||||
/* COLLAPSE PLUGIN DEFINITION
|
||||
* ========================== */
|
||||
|
||||
var old = $.fn.collapse
|
||||
|
||||
$.fn.collapse = function (option) {
|
||||
return this.each(function () {
|
||||
@@ -140,19 +142,26 @@
|
||||
$.fn.collapse.Constructor = Collapse
|
||||
|
||||
|
||||
/* COLLAPSIBLE DATA-API
|
||||
/* COLLAPSE NO CONFLICT
|
||||
* ==================== */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.collapse.data-api', '[data-toggle=collapse]', function (e) {
|
||||
var $this = $(this), href
|
||||
, target = $this.attr('data-target')
|
||||
|| e.preventDefault()
|
||||
|| (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7
|
||||
, option = $(target).data('collapse') ? 'toggle' : $this.data()
|
||||
$this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
|
||||
$(target).collapse(option)
|
||||
})
|
||||
$.fn.collapse.noConflict = function () {
|
||||
$.fn.collapse = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* COLLAPSE DATA-API
|
||||
* ================= */
|
||||
|
||||
$(document).on('click.collapse.data-api', '[data-toggle=collapse]', function (e) {
|
||||
var $this = $(this), href
|
||||
, target = $this.attr('data-target')
|
||||
|| e.preventDefault()
|
||||
|| (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7
|
||||
, option = $(target).data('collapse') ? 'toggle' : $this.data()
|
||||
$this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
|
||||
$(target).collapse(option)
|
||||
})
|
||||
|
||||
}(window.jQuery);
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ============================================================
|
||||
* bootstrap-dropdown.js v2.1.1
|
||||
* bootstrap-dropdown.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#dropdowns
|
||||
* ============================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -53,9 +53,10 @@
|
||||
|
||||
if (!isActive) {
|
||||
$parent.toggleClass('open')
|
||||
$this.focus()
|
||||
}
|
||||
|
||||
$this.focus()
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
@@ -82,7 +83,7 @@
|
||||
|
||||
if (!isActive || (isActive && e.keyCode == 27)) return $this.click()
|
||||
|
||||
$items = $('[role=menu] li:not(.divider) a', $parent)
|
||||
$items = $('[role=menu] li:not(.divider):visible a', $parent)
|
||||
|
||||
if (!$items.length) return
|
||||
|
||||
@@ -100,8 +101,9 @@
|
||||
}
|
||||
|
||||
function clearMenus() {
|
||||
getParent($(toggle))
|
||||
.removeClass('open')
|
||||
$(toggle).each(function () {
|
||||
getParent($(this)).removeClass('open')
|
||||
})
|
||||
}
|
||||
|
||||
function getParent($this) {
|
||||
@@ -123,6 +125,8 @@
|
||||
/* DROPDOWN PLUGIN DEFINITION
|
||||
* ========================== */
|
||||
|
||||
var old = $.fn.dropdown
|
||||
|
||||
$.fn.dropdown = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -135,16 +139,23 @@
|
||||
$.fn.dropdown.Constructor = Dropdown
|
||||
|
||||
|
||||
/* DROPDOWN NO CONFLICT
|
||||
* ==================== */
|
||||
|
||||
$.fn.dropdown.noConflict = function () {
|
||||
$.fn.dropdown = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* APPLY TO STANDARD DROPDOWN ELEMENTS
|
||||
* =================================== */
|
||||
|
||||
$(function () {
|
||||
$('html')
|
||||
.on('click.dropdown.data-api touchstart.dropdown.data-api', clearMenus)
|
||||
$('body')
|
||||
.on('click.dropdown touchstart.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
|
||||
.on('click.dropdown.data-api touchstart.dropdown.data-api' , toggle, Dropdown.prototype.toggle)
|
||||
.on('keydown.dropdown.data-api touchstart.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)
|
||||
})
|
||||
$(document)
|
||||
.on('click.dropdown.data-api touchstart.dropdown.data-api', clearMenus)
|
||||
.on('click.dropdown touchstart.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
|
||||
.on('touchstart.dropdown.data-api', '.dropdown-menu', function (e) { e.stopPropagation() })
|
||||
.on('click.dropdown.data-api touchstart.dropdown.data-api' , toggle, Dropdown.prototype.toggle)
|
||||
.on('keydown.dropdown.data-api touchstart.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)
|
||||
|
||||
}(window.jQuery);
|
||||
@@ -1,5 +1,5 @@
|
||||
/* =========================================================
|
||||
* bootstrap-modal.js v2.1.1
|
||||
* bootstrap-modal.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#modals
|
||||
* =========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -49,8 +49,6 @@
|
||||
|
||||
if (this.isShown || e.isDefaultPrevented()) return
|
||||
|
||||
$('body').addClass('modal-open')
|
||||
|
||||
this.isShown = true
|
||||
|
||||
this.escape()
|
||||
@@ -72,13 +70,12 @@
|
||||
that.$element
|
||||
.addClass('in')
|
||||
.attr('aria-hidden', false)
|
||||
.focus()
|
||||
|
||||
that.enforceFocus()
|
||||
|
||||
transition ?
|
||||
that.$element.one($.support.transition.end, function () { that.$element.trigger('shown') }) :
|
||||
that.$element.trigger('shown')
|
||||
that.$element.one($.support.transition.end, function () { that.$element.focus().trigger('shown') }) :
|
||||
that.$element.focus().trigger('shown')
|
||||
|
||||
})
|
||||
}
|
||||
@@ -96,8 +93,6 @@
|
||||
|
||||
this.isShown = false
|
||||
|
||||
$('body').removeClass('modal-open')
|
||||
|
||||
this.escape()
|
||||
|
||||
$(document).off('focusin.modal')
|
||||
@@ -167,9 +162,11 @@
|
||||
this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
|
||||
.appendTo(document.body)
|
||||
|
||||
if (this.options.backdrop != 'static') {
|
||||
this.$backdrop.click($.proxy(this.hide, this))
|
||||
}
|
||||
this.$backdrop.click(
|
||||
this.options.backdrop == 'static' ?
|
||||
$.proxy(this.$element[0].focus, this.$element[0])
|
||||
: $.proxy(this.hide, this)
|
||||
)
|
||||
|
||||
if (doAnimate) this.$backdrop[0].offsetWidth // force reflow
|
||||
|
||||
@@ -196,6 +193,8 @@
|
||||
/* MODAL PLUGIN DEFINITION
|
||||
* ======================= */
|
||||
|
||||
var old = $.fn.modal
|
||||
|
||||
$.fn.modal = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -216,24 +215,31 @@
|
||||
$.fn.modal.Constructor = Modal
|
||||
|
||||
|
||||
/* MODAL NO CONFLICT
|
||||
* ================= */
|
||||
|
||||
$.fn.modal.noConflict = function () {
|
||||
$.fn.modal = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* MODAL DATA-API
|
||||
* ============== */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.modal.data-api', '[data-toggle="modal"]', function ( e ) {
|
||||
var $this = $(this)
|
||||
, href = $this.attr('href')
|
||||
, $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for ie7
|
||||
, option = $target.data('modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())
|
||||
$(document).on('click.modal.data-api', '[data-toggle="modal"]', function (e) {
|
||||
var $this = $(this)
|
||||
, href = $this.attr('href')
|
||||
, $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for ie7
|
||||
, option = $target.data('modal') ? 'toggle' : $.extend({ remote:!/#/.test(href) && href }, $target.data(), $this.data())
|
||||
|
||||
e.preventDefault()
|
||||
e.preventDefault()
|
||||
|
||||
$target
|
||||
.modal(option)
|
||||
.one('hide', function () {
|
||||
$this.focus()
|
||||
})
|
||||
})
|
||||
$target
|
||||
.modal(option)
|
||||
.one('hide', function () {
|
||||
$this.focus()
|
||||
})
|
||||
})
|
||||
|
||||
}(window.jQuery);
|
||||
}(window.jQuery);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ===========================================================
|
||||
* bootstrap-popover.js v2.1.1
|
||||
* bootstrap-popover.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#popovers
|
||||
* ===========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -44,7 +44,7 @@
|
||||
, content = this.getContent()
|
||||
|
||||
$tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)
|
||||
$tip.find('.popover-content > *')[this.options.html ? 'html' : 'text'](content)
|
||||
$tip.find('.popover-content')[this.options.html ? 'html' : 'text'](content)
|
||||
|
||||
$tip.removeClass('fade top bottom left right in')
|
||||
}
|
||||
@@ -81,6 +81,8 @@
|
||||
/* POPOVER PLUGIN DEFINITION
|
||||
* ======================= */
|
||||
|
||||
var old = $.fn.popover
|
||||
|
||||
$.fn.popover = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -97,7 +99,16 @@
|
||||
placement: 'right'
|
||||
, trigger: 'click'
|
||||
, content: ''
|
||||
, template: '<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'
|
||||
, template: '<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"></div></div></div>'
|
||||
})
|
||||
|
||||
|
||||
/* POPOVER NO CONFLICT
|
||||
* =================== */
|
||||
|
||||
$.fn.popover.noConflict = function () {
|
||||
$.fn.popover = old
|
||||
return this
|
||||
}
|
||||
|
||||
}(window.jQuery);
|
||||
@@ -1,5 +1,5 @@
|
||||
/* =============================================================
|
||||
* bootstrap-scrollspy.js v2.1.1
|
||||
* bootstrap-scrollspy.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#scrollspy
|
||||
* =============================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -59,7 +59,7 @@
|
||||
, $href = /^#\w/.test(href) && $(href)
|
||||
return ( $href
|
||||
&& $href.length
|
||||
&& [[ $href.position().top, href ]] ) || null
|
||||
&& [[ $href.position().top + self.$scrollElement.scrollTop(), href ]] ) || null
|
||||
})
|
||||
.sort(function (a, b) { return a[0] - b[0] })
|
||||
.each(function () {
|
||||
@@ -121,6 +121,8 @@
|
||||
/* SCROLLSPY PLUGIN DEFINITION
|
||||
* =========================== */
|
||||
|
||||
var old = $.fn.scrollspy
|
||||
|
||||
$.fn.scrollspy = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -138,6 +140,15 @@
|
||||
}
|
||||
|
||||
|
||||
/* SCROLLSPY NO CONFLICT
|
||||
* ===================== */
|
||||
|
||||
$.fn.scrollspy.noConflict = function () {
|
||||
$.fn.scrollspy = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* SCROLLSPY DATA-API
|
||||
* ================== */
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ========================================================
|
||||
* bootstrap-tab.js v2.1.1
|
||||
* bootstrap-tab.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#tabs
|
||||
* ========================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -49,7 +49,7 @@
|
||||
|
||||
if ( $this.parent('li').hasClass('active') ) return
|
||||
|
||||
previous = $ul.find('.active a').last()[0]
|
||||
previous = $ul.find('.active:last a')[0]
|
||||
|
||||
e = $.Event('show', {
|
||||
relatedTarget: previous
|
||||
@@ -110,6 +110,8 @@
|
||||
/* TAB PLUGIN DEFINITION
|
||||
* ===================== */
|
||||
|
||||
var old = $.fn.tab
|
||||
|
||||
$.fn.tab = function ( option ) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -122,14 +124,21 @@
|
||||
$.fn.tab.Constructor = Tab
|
||||
|
||||
|
||||
/* TAB NO CONFLICT
|
||||
* =============== */
|
||||
|
||||
$.fn.tab.noConflict = function () {
|
||||
$.fn.tab = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* TAB DATA-API
|
||||
* ============ */
|
||||
|
||||
$(function () {
|
||||
$('body').on('click.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function (e) {
|
||||
e.preventDefault()
|
||||
$(this).tab('show')
|
||||
})
|
||||
$(document).on('click.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function (e) {
|
||||
e.preventDefault()
|
||||
$(this).tab('show')
|
||||
})
|
||||
|
||||
}(window.jQuery);
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ===========================================================
|
||||
* bootstrap-tooltip.js v2.1.1
|
||||
* bootstrap-tooltip.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#tooltips
|
||||
* Inspired by the original jQuery.tipsy by Jason Frame
|
||||
* ===========================================================
|
||||
@@ -119,9 +119,9 @@
|
||||
inside = /in/.test(placement)
|
||||
|
||||
$tip
|
||||
.remove()
|
||||
.detach()
|
||||
.css({ top: 0, left: 0, display: 'block' })
|
||||
.appendTo(inside ? this.$element : document.body)
|
||||
.insertAfter(this.$element)
|
||||
|
||||
pos = this.getPosition(inside)
|
||||
|
||||
@@ -144,7 +144,7 @@
|
||||
}
|
||||
|
||||
$tip
|
||||
.css(tp)
|
||||
.offset(tp)
|
||||
.addClass(placement)
|
||||
.addClass('in')
|
||||
}
|
||||
@@ -166,18 +166,18 @@
|
||||
|
||||
function removeWithAnimation() {
|
||||
var timeout = setTimeout(function () {
|
||||
$tip.off($.support.transition.end).remove()
|
||||
$tip.off($.support.transition.end).detach()
|
||||
}, 500)
|
||||
|
||||
$tip.one($.support.transition.end, function () {
|
||||
clearTimeout(timeout)
|
||||
$tip.remove()
|
||||
$tip.detach()
|
||||
})
|
||||
}
|
||||
|
||||
$.support.transition && this.$tip.hasClass('fade') ?
|
||||
removeWithAnimation() :
|
||||
$tip.remove()
|
||||
$tip.detach()
|
||||
|
||||
return this
|
||||
}
|
||||
@@ -235,8 +235,9 @@
|
||||
this.enabled = !this.enabled
|
||||
}
|
||||
|
||||
, toggle: function () {
|
||||
this[this.tip().hasClass('in') ? 'hide' : 'show']()
|
||||
, toggle: function (e) {
|
||||
var self = $(e.currentTarget)[this.type](this._options).data(this.type)
|
||||
self[self.tip().hasClass('in') ? 'hide' : 'show']()
|
||||
}
|
||||
|
||||
, destroy: function () {
|
||||
@@ -249,6 +250,8 @@
|
||||
/* TOOLTIP PLUGIN DEFINITION
|
||||
* ========================= */
|
||||
|
||||
var old = $.fn.tooltip
|
||||
|
||||
$.fn.tooltip = function ( option ) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -269,7 +272,16 @@
|
||||
, trigger: 'hover'
|
||||
, title: ''
|
||||
, delay: 0
|
||||
, html: true
|
||||
, html: false
|
||||
}
|
||||
|
||||
}(window.jQuery);
|
||||
|
||||
/* TOOLTIP NO CONFLICT
|
||||
* =================== */
|
||||
|
||||
$.fn.tooltip.noConflict = function () {
|
||||
$.fn.tooltip = old
|
||||
return this
|
||||
}
|
||||
|
||||
}(window.jQuery);
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ===================================================
|
||||
* bootstrap-transition.js v2.1.1
|
||||
* bootstrap-transition.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#transitions
|
||||
* ===================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -20,14 +20,14 @@
|
||||
|
||||
!function ($) {
|
||||
|
||||
"use strict"; // jshint ;_;
|
||||
|
||||
|
||||
/* CSS TRANSITION SUPPORT (http://www.modernizr.com/)
|
||||
* ======================================================= */
|
||||
|
||||
$(function () {
|
||||
|
||||
"use strict"; // jshint ;_;
|
||||
|
||||
|
||||
/* CSS TRANSITION SUPPORT (http://www.modernizr.com/)
|
||||
* ======================================================= */
|
||||
|
||||
$.support.transition = (function () {
|
||||
|
||||
var transitionEnd = (function () {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* =============================================================
|
||||
* bootstrap-typeahead.js v2.1.1
|
||||
* bootstrap-typeahead.js v2.2.2
|
||||
* http://twitter.github.com/bootstrap/javascript.html#typeahead
|
||||
* =============================================================
|
||||
* Copyright 2012 Twitter, Inc.
|
||||
@@ -33,8 +33,8 @@
|
||||
this.sorter = this.options.sorter || this.sorter
|
||||
this.highlighter = this.options.highlighter || this.highlighter
|
||||
this.updater = this.options.updater || this.updater
|
||||
this.$menu = $(this.options.menu).appendTo('body')
|
||||
this.source = this.options.source
|
||||
this.$menu = $(this.options.menu)
|
||||
this.shown = false
|
||||
this.listen()
|
||||
}
|
||||
@@ -56,16 +56,18 @@
|
||||
}
|
||||
|
||||
, show: function () {
|
||||
var pos = $.extend({}, this.$element.offset(), {
|
||||
var pos = $.extend({}, this.$element.position(), {
|
||||
height: this.$element[0].offsetHeight
|
||||
})
|
||||
|
||||
this.$menu.css({
|
||||
top: pos.top + pos.height
|
||||
, left: pos.left
|
||||
})
|
||||
this.$menu
|
||||
.insertAfter(this.$element)
|
||||
.css({
|
||||
top: pos.top + pos.height
|
||||
, left: pos.left
|
||||
})
|
||||
.show()
|
||||
|
||||
this.$menu.show()
|
||||
this.shown = true
|
||||
return this
|
||||
}
|
||||
@@ -174,7 +176,7 @@
|
||||
.on('keypress', $.proxy(this.keypress, this))
|
||||
.on('keyup', $.proxy(this.keyup, this))
|
||||
|
||||
if ($.browser.chrome || $.browser.webkit || $.browser.msie) {
|
||||
if (this.eventSupported('keydown')) {
|
||||
this.$element.on('keydown', $.proxy(this.keydown, this))
|
||||
}
|
||||
|
||||
@@ -183,6 +185,15 @@
|
||||
.on('mouseenter', 'li', $.proxy(this.mouseenter, this))
|
||||
}
|
||||
|
||||
, eventSupported: function(eventName) {
|
||||
var isSupported = eventName in this.$element
|
||||
if (!isSupported) {
|
||||
this.$element.setAttribute(eventName, 'return;')
|
||||
isSupported = typeof this.$element[eventName] === 'function'
|
||||
}
|
||||
return isSupported
|
||||
}
|
||||
|
||||
, move: function (e) {
|
||||
if (!this.shown) return
|
||||
|
||||
@@ -208,7 +219,7 @@
|
||||
}
|
||||
|
||||
, keydown: function (e) {
|
||||
this.suppressKeyPressRepeat = !~$.inArray(e.keyCode, [40,38,9,13,27])
|
||||
this.suppressKeyPressRepeat = ~$.inArray(e.keyCode, [40,38,9,13,27])
|
||||
this.move(e)
|
||||
}
|
||||
|
||||
@@ -221,6 +232,9 @@
|
||||
switch(e.keyCode) {
|
||||
case 40: // down arrow
|
||||
case 38: // up arrow
|
||||
case 16: // shift
|
||||
case 17: // ctrl
|
||||
case 18: // alt
|
||||
break
|
||||
|
||||
case 9: // tab
|
||||
@@ -264,6 +278,8 @@
|
||||
/* TYPEAHEAD PLUGIN DEFINITION
|
||||
* =========================== */
|
||||
|
||||
var old = $.fn.typeahead
|
||||
|
||||
$.fn.typeahead = function (option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this)
|
||||
@@ -285,16 +301,23 @@
|
||||
$.fn.typeahead.Constructor = Typeahead
|
||||
|
||||
|
||||
/* TYPEAHEAD DATA-API
|
||||
/* TYPEAHEAD NO CONFLICT
|
||||
* =================== */
|
||||
|
||||
$.fn.typeahead.noConflict = function () {
|
||||
$.fn.typeahead = old
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
/* TYPEAHEAD DATA-API
|
||||
* ================== */
|
||||
|
||||
$(function () {
|
||||
$('body').on('focus.typeahead.data-api', '[data-provide="typeahead"]', function (e) {
|
||||
var $this = $(this)
|
||||
if ($this.data('typeahead')) return
|
||||
e.preventDefault()
|
||||
$this.typeahead($this.data())
|
||||
})
|
||||
$(document).on('focus.typeahead.data-api', '[data-provide="typeahead"]', function (e) {
|
||||
var $this = $(this)
|
||||
if ($this.data('typeahead')) return
|
||||
e.preventDefault()
|
||||
$this.typeahead($this.data())
|
||||
})
|
||||
|
||||
}(window.jQuery);
|
||||
|
||||
@@ -2,6 +2,12 @@ $(function () {
|
||||
|
||||
module("bootstrap-affix")
|
||||
|
||||
test("should provide no conflict", function () {
|
||||
var affix = $.fn.affix.noConflict()
|
||||
ok(!$.fn.affix, 'affix was set back to undefined (org value)')
|
||||
$.fn.affix = affix
|
||||
})
|
||||
|
||||
test("should be defined on jquery object", function () {
|
||||
ok($(document.body).affix, 'affix method is defined')
|
||||
})
|
||||
|
||||
@@ -2,6 +2,12 @@ $(function () {
|
||||
|
||||
module("bootstrap-alerts")
|
||||
|
||||
test("should provide no conflict", function () {
|
||||
var alert = $.fn.alert.noConflict()
|
||||
ok(!$.fn.alert, 'alert was set back to undefined (org value)')
|
||||
$.fn.alert = alert
|
||||
})
|
||||
|
||||
test("should be defined on jquery object", function () {
|
||||
ok($(document.body).alert, 'alert method is defined')
|
||||
})
|
||||
|
||||
@@ -2,6 +2,12 @@ $(function () {
|
||||
|
||||
module("bootstrap-buttons")
|
||||
|
||||
test("should provide no conflict", function () {
|
||||
var button = $.fn.button.noConflict()
|
||||
ok(!$.fn.button, 'button was set back to undefined (org value)')
|
||||
$.fn.button = button
|
||||
})
|
||||
|
||||
test("should be defined on jquery object", function () {
|
||||
ok($(document.body).button, 'button method is defined')
|
||||
})
|
||||
|
||||
@@ -2,6 +2,12 @@ $(function () {
|
||||
|
||||
module("bootstrap-carousel")
|
||||
|
||||
test("should provide no conflict", function () {
|
||||
var carousel = $.fn.carousel.noConflict()
|
||||
ok(!$.fn.carousel, 'carousel was set back to undefined (org value)')
|
||||
$.fn.carousel = carousel
|
||||
})
|
||||
|
||||
test("should be defined on jquery object", function () {
|
||||
ok($(document.body).carousel, 'carousel method is defined')
|
||||
})
|
||||
@@ -26,7 +32,7 @@ $(function () {
|
||||
})
|
||||
|
||||
test("should fire slide event with relatedTarget", function () {
|
||||
var template = '<div id="myCarousel" class="carousel slide"><div class="carousel-inner"><div class="item active"><img src="assets/img/bootstrap-mdo-sfmoma-01.jpg" alt=""><div class="carousel-caption"><h4>{{_i}}First Thumbnail label{{/i}}</h4><p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p></div></div><div class="item"><img src="assets/img/bootstrap-mdo-sfmoma-02.jpg" alt=""><div class="carousel-caption"><h4>{{_i}}Second Thumbnail label{{/i}}</h4><p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p></div></div><div class="item"><img src="assets/img/bootstrap-mdo-sfmoma-03.jpg" alt=""><div class="carousel-caption"><h4>{{_i}}Third Thumbnail label{{/i}}</h4><p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p></div></div></div><a class="left carousel-control" href="#myCarousel" data-slide="prev">‹</a><a class="right carousel-control" href="#myCarousel" data-slide="next">›</a></div>'
|
||||
var template = '<div id="myCarousel" class="carousel slide"><div class="carousel-inner"><div class="item active"><img alt=""><div class="carousel-caption"><h4>{{_i}}First Thumbnail label{{/i}}</h4><p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p></div></div><div class="item"><img alt=""><div class="carousel-caption"><h4>{{_i}}Second Thumbnail label{{/i}}</h4><p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p></div></div><div class="item"><img alt=""><div class="carousel-caption"><h4>{{_i}}Third Thumbnail label{{/i}}</h4><p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p></div></div></div><a class="left carousel-control" href="#myCarousel" data-slide="prev">‹</a><a class="right carousel-control" href="#myCarousel" data-slide="next">›</a></div>'
|
||||
$.support.transition = false
|
||||
stop()
|
||||
$(template)
|
||||
@@ -39,4 +45,25 @@ $(function () {
|
||||
.carousel('next')
|
||||
})
|
||||
|
||||
test("should set interval from data attribute", 3,function () {
|
||||
var template = $('<div id="myCarousel" class="carousel slide"> <div class="carousel-inner"> <div class="item active"> <img alt=""> <div class="carousel-caption"> <h4>{{_i}}First Thumbnail label{{/i}}</h4> <p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p> </div> </div> <div class="item"> <img alt=""> <div class="carousel-caption"> <h4>{{_i}}Second Thumbnail label{{/i}}</h4> <p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p> </div> </div> <div class="item"> <img alt=""> <div class="carousel-caption"> <h4>{{_i}}Third Thumbnail label{{/i}}</h4> <p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p> </div> </div> </div> <a class="left carousel-control" href="#myCarousel" data-slide="prev">‹</a> <a class="right carousel-control" href="#myCarousel" data-slide="next">›</a> </div>');
|
||||
template.attr("data-interval", 1814);
|
||||
|
||||
template.appendTo("body");
|
||||
$('[data-slide]').first().click();
|
||||
ok($('#myCarousel').data('carousel').options.interval == 1814);
|
||||
$('#myCarousel').remove();
|
||||
|
||||
template.appendTo("body").attr("data-modal", "foobar");
|
||||
$('[data-slide]').first().click();
|
||||
ok($('#myCarousel').data('carousel').options.interval == 1814, "even if there is an data-modal attribute set");
|
||||
$('#myCarousel').remove();
|
||||
|
||||
template.appendTo("body");
|
||||
$('[data-slide]').first().click();
|
||||
$('#myCarousel').attr('data-interval', 1860);
|
||||
$('[data-slide]').first().click();
|
||||
ok($('#myCarousel').data('carousel').options.interval == 1814, "attributes should be read only on intitialization");
|
||||
$('#myCarousel').remove();
|
||||
})
|
||||
})
|
||||
@@ -2,6 +2,12 @@ $(function () {
|
||||
|
||||
module("bootstrap-collapse")
|
||||
|
||||
test("should provide no conflict", function () {
|
||||
var collapse = $.fn.collapse.noConflict()
|
||||
ok(!$.fn.collapse, 'collapse was set back to undefined (org value)')
|
||||
$.fn.collapse = collapse
|
||||
})
|
||||
|
||||
test("should be defined on jquery object", function () {
|
||||
ok($(document.body).collapse, 'collapse method is defined')
|
||||
})
|
||||
|
||||
@@ -2,12 +2,19 @@ $(function () {
|
||||
|
||||
module("bootstrap-dropdowns")
|
||||
|
||||
test("should provide no conflict", function () {
|
||||
var dropdown = $.fn.dropdown.noConflict()
|
||||
ok(!$.fn.dropdown, 'dropdown was set back to undefined (org value)')
|
||||
$.fn.dropdown = dropdown
|
||||
})
|
||||
|
||||
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')
|
||||
var el = $("<div />")
|
||||
ok(el.dropdown()[0] === el[0], 'same element returned')
|
||||
})
|
||||
|
||||
test("should not open dropdown if target is disabled", function () {
|
||||
@@ -102,4 +109,43 @@ $(function () {
|
||||
dropdown.remove()
|
||||
})
|
||||
|
||||
test("should remove open class if body clicked, with multiple drop downs", function () {
|
||||
var dropdownHTML =
|
||||
'<ul class="nav">'
|
||||
+ ' <li><a href="#menu1">Menu 1</a></li>'
|
||||
+ ' <li class="dropdown" id="testmenu">'
|
||||
+ ' <a class="dropdown-toggle" data-toggle="dropdown" href="#testmenu">Test menu <b class="caret"></b></a>'
|
||||
+ ' <ul class="dropdown-menu" role="menu">'
|
||||
+ ' <li><a href="#sub1">Submenu 1</a></li>'
|
||||
+ ' </ul>'
|
||||
+ ' </li>'
|
||||
+ '</ul>'
|
||||
+ '<div class="btn-group">'
|
||||
+ ' <button class="btn">Actions</button>'
|
||||
+ ' <button class="btn dropdown-toggle" data-toggle="dropdown"><span class="caret"></span></button>'
|
||||
+ ' <ul class="dropdown-menu">'
|
||||
+ ' <li><a href="#">Action 1</a></li>'
|
||||
+ ' </ul>'
|
||||
+ '</div>'
|
||||
, dropdowns = $(dropdownHTML).appendTo('#qunit-fixture').find('[data-toggle="dropdown"]')
|
||||
, first = dropdowns.first()
|
||||
, last = dropdowns.last()
|
||||
|
||||
ok(dropdowns.length == 2, "Should be two dropdowns")
|
||||
|
||||
first.click()
|
||||
ok(first.parents('.open').length == 1, 'open class added on click')
|
||||
ok($('#qunit-fixture .open').length == 1, 'only one object is open')
|
||||
$('body').click()
|
||||
ok($("#qunit-fixture .open").length === 0, 'open class removed')
|
||||
|
||||
last.click()
|
||||
ok(last.parent('.open').length == 1, 'open class added on click')
|
||||
ok($('#qunit-fixture .open').length == 1, 'only one object is open')
|
||||
$('body').click()
|
||||
ok($("#qunit-fixture .open").length === 0, 'open class removed')
|
||||
|
||||
$("#qunit-fixture").html("")
|
||||
})
|
||||
|
||||
})
|
||||
@@ -2,6 +2,12 @@ $(function () {
|
||||
|
||||
module("bootstrap-modal")
|
||||
|
||||
test("should provide no conflict", function () {
|
||||
var modal = $.fn.modal.noConflict()
|
||||
ok(!$.fn.modal, 'modal was set back to undefined (org value)')
|
||||
$.fn.modal = modal
|
||||
})
|
||||
|
||||
test("should be defined on jquery object", function () {
|
||||
var div = $("<div id='modal-test'></div>")
|
||||
ok(div.modal, 'modal method is defined')
|
||||
|
||||
@@ -2,6 +2,12 @@ $(function () {
|
||||
|
||||
module("bootstrap-popover")
|
||||
|
||||
test("should provide no conflict", function () {
|
||||
var popover = $.fn.popover.noConflict()
|
||||
ok(!$.fn.popover, 'popover was set back to undefined (org value)')
|
||||
$.fn.popover = popover
|
||||
})
|
||||
|
||||
test("should be defined on jquery object", function () {
|
||||
var div = $('<div></div>')
|
||||
ok(div.popover, 'popover method is defined')
|
||||
@@ -70,7 +76,7 @@ $(function () {
|
||||
ok(!$('.popover').length, 'popover was removed')
|
||||
$('#qunit-fixture').empty()
|
||||
})
|
||||
|
||||
|
||||
test("should respect custom classes", function() {
|
||||
$.support.transition = false
|
||||
var popover = $('<a href="#">@fat</a>')
|
||||
@@ -80,7 +86,7 @@ $(function () {
|
||||
, content: 'Test'
|
||||
, template: '<div class="popover foobar"><div class="arrow"></div><div class="inner"><h3 class="title"></h3><div class="content"><p></p></div></div></div>'
|
||||
})
|
||||
|
||||
|
||||
popover.popover('show')
|
||||
|
||||
ok($('.popover').length, 'popover was inserted')
|
||||
@@ -94,14 +100,14 @@ $(function () {
|
||||
test("should destroy popover", function () {
|
||||
var popover = $('<div/>').popover({trigger: 'hover'}).on('click.foo', function(){})
|
||||
ok(popover.data('popover'), 'popover has data')
|
||||
ok(popover.data('events').mouseover && popover.data('events').mouseout, 'popover has hover event')
|
||||
ok(popover.data('events').click[0].namespace == 'foo', 'popover has extra click.foo event')
|
||||
ok($._data(popover[0], 'events').mouseover && $._data(popover[0], 'events').mouseout, 'popover has hover event')
|
||||
ok($._data(popover[0], 'events').click[0].namespace == 'foo', 'popover has extra click.foo event')
|
||||
popover.popover('show')
|
||||
popover.popover('destroy')
|
||||
ok(!popover.hasClass('in'), 'popover is hidden')
|
||||
ok(!popover.data('popover'), 'popover does not have data')
|
||||
ok(popover.data('events').click[0].namespace == 'foo', 'popover still has click.foo')
|
||||
ok(!popover.data('events').mouseover && !popover.data('events').mouseout, 'popover does not have any events')
|
||||
ok($._data(popover[0],'events').click[0].namespace == 'foo', 'popover still has click.foo')
|
||||
ok(!$._data(popover[0], 'events').mouseover && !$._data(popover[0], 'events').mouseout, 'popover does not have any events')
|
||||
})
|
||||
|
||||
|
||||
})
|
||||
@@ -2,6 +2,12 @@ $(function () {
|
||||
|
||||
module("bootstrap-scrollspy")
|
||||
|
||||
test("should provide no conflict", function () {
|
||||
var scrollspy = $.fn.scrollspy.noConflict()
|
||||
ok(!$.fn.scrollspy, 'scrollspy was set back to undefined (org value)')
|
||||
$.fn.scrollspy = scrollspy
|
||||
})
|
||||
|
||||
test("should be defined on jquery object", function () {
|
||||
ok($(document.body).scrollspy, 'scrollspy method is defined')
|
||||
})
|
||||
|
||||
@@ -2,6 +2,12 @@ $(function () {
|
||||
|
||||
module("bootstrap-tabs")
|
||||
|
||||
test("should provide no conflict", function () {
|
||||
var tab = $.fn.tab.noConflict()
|
||||
ok(!$.fn.tab, 'tab was set back to undefined (org value)')
|
||||
$.fn.tab = tab
|
||||
})
|
||||
|
||||
test("should be defined on jquery object", function () {
|
||||
ok($(document.body).tab, 'tabs method is defined')
|
||||
})
|
||||
@@ -58,4 +64,23 @@ $(function () {
|
||||
.tab('show')
|
||||
})
|
||||
|
||||
test("show and shown events should reference correct relatedTarget", function () {
|
||||
var dropHTML =
|
||||
'<ul class="drop">'
|
||||
+ '<li class="dropdown"><a data-toggle="dropdown" href="#">1</a>'
|
||||
+ '<ul class="dropdown-menu">'
|
||||
+ '<li><a href="#1-1" data-toggle="tab">1-1</a></li>'
|
||||
+ '<li><a href="#1-2" data-toggle="tab">1-2</a></li>'
|
||||
+ '</ul>'
|
||||
+ '</li>'
|
||||
+ '</ul>'
|
||||
|
||||
$(dropHTML).find('ul>li:first a').tab('show').end()
|
||||
.find('ul>li:last a').on('show', function(event){
|
||||
equals(event.relatedTarget.hash, "#1-1")
|
||||
}).on('shown', function(event){
|
||||
equals(event.relatedTarget.hash, "#1-1")
|
||||
}).tab('show')
|
||||
})
|
||||
|
||||
})
|
||||
@@ -2,6 +2,12 @@ $(function () {
|
||||
|
||||
module("bootstrap-tooltip")
|
||||
|
||||
test("should provide no conflict", function () {
|
||||
var tooltip = $.fn.tooltip.noConflict()
|
||||
ok(!$.fn.tooltip, 'tooltip was set back to undefined (org value)')
|
||||
$.fn.tooltip = tooltip
|
||||
})
|
||||
|
||||
test("should be defined on jquery object", function () {
|
||||
var div = $("<div></div>")
|
||||
ok(div.tooltip, 'popover method is defined')
|
||||
@@ -37,10 +43,11 @@ $(function () {
|
||||
tooltip.tooltip('hide')
|
||||
})
|
||||
|
||||
test("should always allow html entities", function () {
|
||||
test("should allow html entities", function () {
|
||||
$.support.transition = false
|
||||
var tooltip = $('<a href="#" rel="tooltip" title="<b>@fat</b>"></a>')
|
||||
.appendTo('#qunit-fixture')
|
||||
.tooltip({html: true})
|
||||
.tooltip('show')
|
||||
|
||||
ok($('.tooltip b').length, 'b tag was inserted')
|
||||
@@ -113,7 +120,7 @@ $(function () {
|
||||
}, 50)
|
||||
})
|
||||
|
||||
test("should show tooltip if leave event hasn't occurred before delay expires", function () {
|
||||
test("should show tooltip if leave event hasn't occured before delay expires", function () {
|
||||
var tooltip = $('<a href="#" rel="tooltip" title="Another tooltip"></a>')
|
||||
.appendTo('#qunit-fixture')
|
||||
.tooltip({ delay: 150 })
|
||||
@@ -131,14 +138,22 @@ $(function () {
|
||||
test("should destroy tooltip", function () {
|
||||
var tooltip = $('<div/>').tooltip().on('click.foo', function(){})
|
||||
ok(tooltip.data('tooltip'), 'tooltip has data')
|
||||
ok(tooltip.data('events').mouseover && tooltip.data('events').mouseout, 'tooltip has hover event')
|
||||
ok(tooltip.data('events').click[0].namespace == 'foo', 'tooltip has extra click.foo event')
|
||||
ok($._data(tooltip[0], 'events').mouseover && $._data(tooltip[0], 'events').mouseout, 'tooltip has hover event')
|
||||
ok($._data(tooltip[0], 'events').click[0].namespace == 'foo', 'tooltip has extra click.foo event')
|
||||
tooltip.tooltip('show')
|
||||
tooltip.tooltip('destroy')
|
||||
ok(!tooltip.hasClass('in'), 'tooltip is hidden')
|
||||
ok(!tooltip.data('tooltip'), 'tooltip does not have data')
|
||||
ok(tooltip.data('events').click[0].namespace == 'foo', 'tooltip still has click.foo')
|
||||
ok(!tooltip.data('events').mouseover && !tooltip.data('events').mouseout, 'tooltip does not have any events')
|
||||
ok(!$._data(tooltip[0], 'tooltip'), 'tooltip does not have data')
|
||||
ok($._data(tooltip[0], 'events').click[0].namespace == 'foo', 'tooltip still has click.foo')
|
||||
ok(!$._data(tooltip[0], 'events').mouseover && !$._data(tooltip[0], 'events').mouseout, 'tooltip does not have any events')
|
||||
})
|
||||
|
||||
})
|
||||
test("should show tooltip with delegate selector on click", function () {
|
||||
var div = $('<div><a href="#" rel="tooltip" title="Another tooltip"></a></div>')
|
||||
var tooltip = div.appendTo('#qunit-fixture')
|
||||
.tooltip({ selector: 'a[rel=tooltip]',
|
||||
trigger: 'click' })
|
||||
div.find('a').trigger('click')
|
||||
ok($(".tooltip").is('.fade.in'), 'tooltip is faded in')
|
||||
})
|
||||
})
|
||||
@@ -2,6 +2,12 @@ $(function () {
|
||||
|
||||
module("bootstrap-typeahead")
|
||||
|
||||
test("should provide no conflict", function () {
|
||||
var typeahead = $.fn.typeahead.noConflict()
|
||||
ok(!$.fn.typeahead, 'typeahead was set back to undefined (org value)')
|
||||
$.fn.typeahead = typeahead
|
||||
})
|
||||
|
||||
test("should be defined on jquery object", function () {
|
||||
ok($(document.body).typeahead, 'alert method is defined')
|
||||
})
|
||||
@@ -13,14 +19,9 @@ $(function () {
|
||||
test("should listen to an input", function () {
|
||||
var $input = $('<input />')
|
||||
$input.typeahead()
|
||||
ok($input.data('events').blur, 'has a blur event')
|
||||
ok($input.data('events').keypress, 'has a keypress event')
|
||||
ok($input.data('events').keyup, 'has a keyup event')
|
||||
if ($.browser.webkit || $.browser.msie) {
|
||||
ok($input.data('events').keydown, 'has a keydown event')
|
||||
} else {
|
||||
ok($input.data('events').keydown, 'does not have a keydown event')
|
||||
}
|
||||
ok($._data($input[0], 'events').blur, 'has a blur event')
|
||||
ok($._data($input[0], 'events').keypress, 'has a keypress event')
|
||||
ok($._data($input[0], 'events').keyup, 'has a keyup event')
|
||||
})
|
||||
|
||||
test("should create a menu", function () {
|
||||
@@ -32,12 +33,14 @@ $(function () {
|
||||
var $input = $('<input />')
|
||||
, $menu = $input.typeahead().data('typeahead').$menu
|
||||
|
||||
ok($menu.data('events').mouseover, 'has a mouseover(pseudo: mouseenter)')
|
||||
ok($menu.data('events').click, 'has a click')
|
||||
ok($._data($menu[0], 'events').mouseover, 'has a mouseover(pseudo: mouseenter)')
|
||||
ok($._data($menu[0], 'events').click, 'has a click')
|
||||
})
|
||||
|
||||
test("should show menu when query entered", function () {
|
||||
var $input = $('<input />').typeahead({
|
||||
var $input = $('<input />')
|
||||
.appendTo('body')
|
||||
.typeahead({
|
||||
source: ['aa', 'ab', 'ac']
|
||||
})
|
||||
, typeahead = $input.data('typeahead')
|
||||
@@ -49,6 +52,7 @@ $(function () {
|
||||
equals(typeahead.$menu.find('li').length, 3, 'has 3 items in menu')
|
||||
equals(typeahead.$menu.find('.active').length, 1, 'one item is active')
|
||||
|
||||
$input.remove()
|
||||
typeahead.$menu.remove()
|
||||
})
|
||||
|
||||
@@ -57,7 +61,7 @@ $(function () {
|
||||
source: function () {
|
||||
return ['aa', 'ab', 'ac']
|
||||
}
|
||||
})
|
||||
}).appendTo('body')
|
||||
, typeahead = $input.data('typeahead')
|
||||
|
||||
$input.val('a')
|
||||
@@ -67,6 +71,7 @@ $(function () {
|
||||
equals(typeahead.$menu.find('li').length, 3, 'has 3 items in menu')
|
||||
equals(typeahead.$menu.find('.active').length, 1, 'one item is active')
|
||||
|
||||
$input.remove()
|
||||
typeahead.$menu.remove()
|
||||
})
|
||||
|
||||
@@ -75,7 +80,7 @@ $(function () {
|
||||
source: function (query, process) {
|
||||
process(['aa', 'ab', 'ac'])
|
||||
}
|
||||
})
|
||||
}).appendTo('body')
|
||||
, typeahead = $input.data('typeahead')
|
||||
|
||||
$input.val('a')
|
||||
@@ -85,13 +90,14 @@ $(function () {
|
||||
equals(typeahead.$menu.find('li').length, 3, 'has 3 items in menu')
|
||||
equals(typeahead.$menu.find('.active').length, 1, 'one item is active')
|
||||
|
||||
$input.remove()
|
||||
typeahead.$menu.remove()
|
||||
})
|
||||
|
||||
test("should not explode when regex chars are entered", function () {
|
||||
var $input = $('<input />').typeahead({
|
||||
source: ['aa', 'ab', 'ac', 'mdo*', 'fat+']
|
||||
})
|
||||
}).appendTo('body')
|
||||
, typeahead = $input.data('typeahead')
|
||||
|
||||
$input.val('+')
|
||||
@@ -101,6 +107,7 @@ $(function () {
|
||||
equals(typeahead.$menu.find('li').length, 1, 'has 1 item in menu')
|
||||
equals(typeahead.$menu.find('.active').length, 1, 'one item is active')
|
||||
|
||||
$input.remove()
|
||||
typeahead.$menu.remove()
|
||||
})
|
||||
|
||||
@@ -108,7 +115,7 @@ $(function () {
|
||||
stop()
|
||||
var $input = $('<input />').typeahead({
|
||||
source: ['aa', 'ab', 'ac']
|
||||
})
|
||||
}).appendTo('body')
|
||||
, typeahead = $input.data('typeahead')
|
||||
|
||||
$input.val('a')
|
||||
@@ -125,13 +132,14 @@ $(function () {
|
||||
start()
|
||||
}, 200)
|
||||
|
||||
$input.remove()
|
||||
typeahead.$menu.remove()
|
||||
})
|
||||
|
||||
test("should set next item when down arrow is pressed", function () {
|
||||
var $input = $('<input />').typeahead({
|
||||
source: ['aa', 'ab', 'ac']
|
||||
})
|
||||
}).appendTo('body')
|
||||
, typeahead = $input.data('typeahead')
|
||||
|
||||
$input.val('a')
|
||||
@@ -142,21 +150,38 @@ $(function () {
|
||||
equals(typeahead.$menu.find('.active').length, 1, 'one item is active')
|
||||
ok(typeahead.$menu.find('li').first().hasClass('active'), "first item is active")
|
||||
|
||||
// simulate entire key pressing event
|
||||
$input.trigger({
|
||||
type: 'keydown'
|
||||
, keyCode: 40
|
||||
})
|
||||
.trigger({
|
||||
type: 'keypress'
|
||||
, keyCode: 40
|
||||
})
|
||||
.trigger({
|
||||
type: 'keyup'
|
||||
, keyCode: 40
|
||||
})
|
||||
|
||||
ok(typeahead.$menu.find('li').first().next().hasClass('active'), "second item is active")
|
||||
|
||||
|
||||
$input.trigger({
|
||||
type: 'keydown'
|
||||
, keyCode: 38
|
||||
})
|
||||
.trigger({
|
||||
type: 'keypress'
|
||||
, keyCode: 38
|
||||
})
|
||||
.trigger({
|
||||
type: 'keyup'
|
||||
, keyCode: 38
|
||||
})
|
||||
|
||||
ok(typeahead.$menu.find('li').first().hasClass('active'), "first item is active")
|
||||
|
||||
$input.remove()
|
||||
typeahead.$menu.remove()
|
||||
})
|
||||
|
||||
@@ -164,7 +189,7 @@ $(function () {
|
||||
test("should set input value to selected item", function () {
|
||||
var $input = $('<input />').typeahead({
|
||||
source: ['aa', 'ab', 'ac']
|
||||
})
|
||||
}).appendTo('body')
|
||||
, typeahead = $input.data('typeahead')
|
||||
, changed = false
|
||||
|
||||
@@ -179,6 +204,7 @@ $(function () {
|
||||
ok(!typeahead.$menu.is(':visible'), 'the menu was hidden')
|
||||
ok(changed, 'a change event was fired')
|
||||
|
||||
$input.remove()
|
||||
typeahead.$menu.remove()
|
||||
})
|
||||
|
||||
@@ -186,7 +212,7 @@ $(function () {
|
||||
var $input = $('<input />').typeahead({
|
||||
source: ['aaaa', 'aaab', 'aaac'],
|
||||
minLength: 3
|
||||
})
|
||||
}).appendTo('body')
|
||||
, typeahead = $input.data('typeahead')
|
||||
|
||||
$input.val('aa')
|
||||
@@ -199,6 +225,7 @@ $(function () {
|
||||
|
||||
equals(typeahead.$menu.find('li').length, 3, 'has 3 items in menu')
|
||||
|
||||
$input.remove()
|
||||
typeahead.$menu.remove()
|
||||
})
|
||||
})
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
.accordion-group {
|
||||
margin-bottom: 2px;
|
||||
border: 1px solid #e5e5e5;
|
||||
.border-radius(4px);
|
||||
.border-radius(@baseBorderRadius);
|
||||
}
|
||||
.accordion-heading {
|
||||
border-bottom: 0;
|
||||
|
||||