Commit e9199718 authored by Mark Otto's avatar Mark Otto

Merge branch 'master' into fix-12154

Conflicts:
	dist/css/bootstrap.css.map
	dist/css/bootstrap.min.css
	docs/dist/css/bootstrap.css.map
	docs/dist/css/bootstrap.min.css
parents 4787a69e 7f880093
...@@ -11,5 +11,4 @@ trim_trailing_whitespace = true ...@@ -11,5 +11,4 @@ trim_trailing_whitespace = true
insert_final_newline = true insert_final_newline = true
[*.py] [*.py]
indent_style = space
indent_size = 4 indent_size = 4
...@@ -7,10 +7,10 @@ before_install: ...@@ -7,10 +7,10 @@ before_install:
- if [ "$TWBS_TEST" = validate-html ]; then echo "ruby=$(basename $(rvm gemdir)) jekyll=$JEKYLL_VERSION" > pseudo_Gemfile.lock; fi - if [ "$TWBS_TEST" = validate-html ]; then echo "ruby=$(basename $(rvm gemdir)) jekyll=$JEKYLL_VERSION" > pseudo_Gemfile.lock; fi
install: install:
- time npm install -g grunt-cli - time npm install -g grunt-cli
- time ./test-infra/s3_cache.py download 'node.js packages' package.json ./node_modules || time npm install - time ./test-infra/s3_cache.py download 'npm packages' test-infra/npm-shrinkwrap.canonical.json ./node_modules || time ./test-infra/uncached-npm-install.sh
- if [ "$TWBS_TEST" = validate-html ]; then time ./test-infra/s3_cache.py download rubygems pseudo_Gemfile.lock $(rvm gemdir) || gem install -N jekyll -v $JEKYLL_VERSION; fi - if [ "$TWBS_TEST" = validate-html ]; then time ./test-infra/s3_cache.py download rubygems pseudo_Gemfile.lock $(rvm gemdir) || gem install -N jekyll -v $JEKYLL_VERSION; fi
after_script: after_script:
- if [ "$TWBS_TEST" = core ]; then time ./test-infra/s3_cache.py upload 'node.js packages' package.json ./node_modules; fi - if [ "$TWBS_TEST" = core ]; then time ./test-infra/s3_cache.py upload 'npm packages' test-infra/npm-shrinkwrap.canonical.json ./node_modules; fi
- if [ "$TWBS_TEST" = validate-html ]; then time ./test-infra/s3_cache.py upload rubygems pseudo_Gemfile.lock $(rvm gemdir); fi - if [ "$TWBS_TEST" = validate-html ]; then time ./test-infra/s3_cache.py upload rubygems pseudo_Gemfile.lock $(rvm gemdir); fi
env: env:
global: global:
...@@ -20,9 +20,12 @@ env: ...@@ -20,9 +20,12 @@ env:
- secure: "gqjqISbxBJK6byFbsmr1AyP1qoWH+rap06A2gI7v72+Tn2PU2nYkIMUkCvhZw6K889jv+LhQ/ybcBxDOXHpNCExCnSgB4dcnmYp+9oeNZb37jSP0rQ+Ib4OTLjzc3/FawE/fUq5kukZTC7porzc/k0qJNLAZRx3YLALmK1GIdUY=" - secure: "gqjqISbxBJK6byFbsmr1AyP1qoWH+rap06A2gI7v72+Tn2PU2nYkIMUkCvhZw6K889jv+LhQ/ybcBxDOXHpNCExCnSgB4dcnmYp+9oeNZb37jSP0rQ+Ib4OTLjzc3/FawE/fUq5kukZTC7porzc/k0qJNLAZRx3YLALmK1GIdUY="
- secure: "Gghh/e3Gsbj1+4RR9Lh2aR/xJl35HWiHqlPIeSUqE9D7uDCVTAwNce/dGL3Ew7uJPfJ6Pgr70wD3zgu3stw0Zmzayax0hiDtGwcQCxVIER08wqGANK9C2Q7PYJkNTNtiTo6ehKWbdV4Z+/U+TEYyQfpQTDbAFYk/vVpsdjp0Lmc=" - secure: "Gghh/e3Gsbj1+4RR9Lh2aR/xJl35HWiHqlPIeSUqE9D7uDCVTAwNce/dGL3Ew7uJPfJ6Pgr70wD3zgu3stw0Zmzayax0hiDtGwcQCxVIER08wqGANK9C2Q7PYJkNTNtiTo6ehKWbdV4Z+/U+TEYyQfpQTDbAFYk/vVpsdjp0Lmc="
- secure: "RTbRdx4G/2OTLfrZtP1VbRljxEmd6A1F3GqXboeQTldsnAlwpsES65es5CE3ub/rmixLApOY9ot7OPmNixFgC2Y8xOsV7lNCC62QVpmqQEDyGFFQKb3yO6/dmwQxdsCqGfzf9Np6Wh5V22QFvr50ZLKLd7Uhd9oXMDIk/z1MJ3o=" - secure: "RTbRdx4G/2OTLfrZtP1VbRljxEmd6A1F3GqXboeQTldsnAlwpsES65es5CE3ub/rmixLApOY9ot7OPmNixFgC2Y8xOsV7lNCC62QVpmqQEDyGFFQKb3yO6/dmwQxdsCqGfzf9Np6Wh5V22QFvr50ZLKLd7Uhd9oXMDIk/z1MJ3o="
- secure: "Besg41eyU+2mfxrywQ4ydOShMdc34ImaO0S0ENP+aCOBuyNBIgP59wy5tBMmyai2/8eInYeVps4Td96mWInMMxzTe3Bar7eTLG5tWVKRSr/wc4NBPZ/ppoPAmCEsz9Y+VptRH9/FO8n7hsL9EFZ+xBKbG+C0SccGoyBDpA5j7/w="
- secure: "Ptiv7phCImFP3ALIz+sMQzrZg8k7C1gLZbFBhWxjnQr3g06wIfX3Ls5y9OHvxid+lOZZjISui3wzBVgpVHqwHUYf96+r0mo6/mJ+F4ffUmShZANVaIMD/JRTnXhUQJbvntGLvxn1EYWPdNM+2IHJrMipnjHxU9tkgAnlel4Zdew="
matrix: matrix:
- TWBS_TEST=core - TWBS_TEST=core
- TWBS_TEST=validate-html - TWBS_TEST=validate-html
- TWBS_TEST=sauce-js-unit - TWBS_TEST=sauce-js-unit
# - TWBS_TEST=browserstack-js-unit
matrix: matrix:
fast_finish: true fast_finish: true
...@@ -19,7 +19,7 @@ and [submitting pull requests](#pull-requests), but please respect the following ...@@ -19,7 +19,7 @@ and [submitting pull requests](#pull-requests), but please respect the following
restrictions: restrictions:
* Please **do not** use the issue tracker for personal support requests. Stack * Please **do not** use the issue tracker for personal support requests. Stack
Overflow ([`twitter-boostrap`](http://stackoverflow.com/questions/tagged/twitter-bootstrap) tag) or [IRC](https://github.com/twbs/bootstrap/blob/master/README.md#community) are better places to get help. Overflow ([`twitter-bootstrap-3`](http://stackoverflow.com/questions/tagged/twitter-bootstrap-3) tag) or [IRC](https://github.com/twbs/bootstrap/blob/master/README.md#community) are better places to get help.
* Please **do not** derail or troll issues. Keep the discussion on topic and * Please **do not** derail or troll issues. Keep the discussion on topic and
respect the opinions of others. respect the opinions of others.
...@@ -159,6 +159,7 @@ license your work under the terms of the [MIT License](LICENSE.md). ...@@ -159,6 +159,7 @@ license your work under the terms of the [MIT License](LICENSE.md).
- Always use proper indentation. - Always use proper indentation.
- Use tags and elements appropriate for an HTML5 doctype (e.g., self-closing tags). - Use tags and elements appropriate for an HTML5 doctype (e.g., self-closing tags).
- Use CDNs and HTTPS for third-party JS when possible. We don't use protocol-relative URLs in this case because they break when viewing the page locally via `file://`. - Use CDNs and HTTPS for third-party JS when possible. We don't use protocol-relative URLs in this case because they break when viewing the page locally via `file://`.
- Use [WAI-ARIA](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA) attributes in documentation examples to promote accessibility.
### CSS ### CSS
...@@ -172,15 +173,20 @@ license your work under the terms of the [MIT License](LICENSE.md). ...@@ -172,15 +173,20 @@ license your work under the terms of the [MIT License](LICENSE.md).
- Attribute selectors should only be used where absolutely necessary (e.g., form controls) and should be avoided on custom components for performance and explicitness. - Attribute selectors should only be used where absolutely necessary (e.g., form controls) and should be avoided on custom components for performance and explicitness.
- Series of classes for a component should include a base class (e.g., `.component`) and use the base class as a prefix for modifier and sub-components (e.g., `.component-lg`). - Series of classes for a component should include a base class (e.g., `.component`) and use the base class as a prefix for modifier and sub-components (e.g., `.component-lg`).
- Avoid inheritance and over nesting—use single, explicit classes whenever possible. - Avoid inheritance and over nesting—use single, explicit classes whenever possible.
- When feasible, default color palettes should comply with [WCAG color contrast guidelines](http://www.w3.org/TR/WCAG20/#visual-audio-contrast).
- Except in rare cases, don't remove default `:focus` styles (via e.g. `outline: none;`) without providing alternative styles. See [this A11Y Project post](http://a11yproject.com/posts/never-remove-css-outlines/) for more details.
### JS ### JS
- No semicolons - No semicolons
- Comma first
- 2 spaces (no tabs) - 2 spaces (no tabs)
- strict mode - strict mode
- "Attractive" - "Attractive"
### Checking coding style
Run `grunt test` before committing to ensure your changes follow our coding standards.
## License ## License
......
This diff is collapsed.
# [Bootstrap](http://getbootstrap.com) [![Build Status](https://secure.travis-ci.org/twbs/bootstrap.png)](http://travis-ci.org/twbs/bootstrap) [![devDependency Status](https://david-dm.org/twbs/bootstrap/dev-status.png?theme=shields.io)](https://david-dm.org/twbs/bootstrap#info=devDependencies) # [Bootstrap](http://getbootstrap.com) [![Bower version](https://badge.fury.io/bo/bootstrap.png)](http://badge.fury.io/bo/bootstrap) [![Build Status](https://secure.travis-ci.org/twbs/bootstrap.png)](http://travis-ci.org/twbs/bootstrap) [![devDependency Status](https://david-dm.org/twbs/bootstrap/dev-status.png?theme=shields.io)](https://david-dm.org/twbs/bootstrap#info=devDependencies)
[![Selenium Test Status](https://saucelabs.com/browser-matrix/bootstrap.svg)](https://saucelabs.com/u/bootstrap) [![Selenium Test Status](https://saucelabs.com/browser-matrix/bootstrap.svg)](https://saucelabs.com/u/bootstrap)
Bootstrap is a sleek, intuitive, and powerful front-end framework for faster and easier web development, created by [Mark Otto](http://twitter.com/mdo) and [Jacob Thornton](http://twitter.com/fat), and maintained by the [core team](https://github.com/twbs?tab=members) with the massive support and involvement of the community. Bootstrap is a sleek, intuitive, and powerful front-end framework for faster and easier web development, created by [Mark Otto](http://twitter.com/mdo) and [Jacob Thornton](http://twitter.com/fat), and maintained by the [core team](https://github.com/twbs?tab=members) with the massive support and involvement of the community.
...@@ -21,7 +21,7 @@ To get started, check out <http://getbootstrap.com>! ...@@ -21,7 +21,7 @@ To get started, check out <http://getbootstrap.com>!
Three quick start options are available: Three quick start options are available:
- [Download the latest release](https://github.com/twbs/bootstrap/archive/v3.0.3.zip). - [Download the latest release](https://github.com/twbs/bootstrap/archive/v3.1.0.zip).
- Clone the repo: `git clone https://github.com/twbs/bootstrap.git`. - Clone the repo: `git clone https://github.com/twbs/bootstrap.git`.
- Install with [Bower](http://bower.io): `bower install bootstrap`. - Install with [Bower](http://bower.io): `bower install bootstrap`.
...@@ -64,9 +64,9 @@ Bootstrap's documentation, included in this repo in the root directory, is built ...@@ -64,9 +64,9 @@ Bootstrap's documentation, included in this repo in the root directory, is built
### Running documentation locally ### Running documentation locally
1. If necessary, [install Jekyll](http://jekyllrb.com/docs/installation) (requires v1.x). 1. If necessary, [install Jekyll](http://jekyllrb.com/docs/installation) (requires v1.x).
- **Windows users:** read [this unofficial guide](https://github.com/juthilo/run-jekyll-on-windows/) to get Jekyll up and running without problems. - **Windows users:** Read [this unofficial guide](https://github.com/juthilo/run-jekyll-on-windows/) to get Jekyll up and running without problems. We use Pygments for syntax highlighting, so make sure to read the sections on installing Python and Pygments.
2. From the root `/bootstrap` directory, run `jekyll serve` in the command line. 2. From the root `/bootstrap` directory, run `jekyll serve` in the command line.
- **Windows users:** For Ruby 2.0.0 run `chcp 65001` first to change the command prompt's character encoding ([code page](http://en.wikipedia.org/wiki/Windows_code_page)) to UTF-8 so Jekyll runs without errors. For Ruby 1.9.3 you can alternatively do `SET LANG=en_EN.UTF-8`. In addition, ensure you have Python installed and added in your `PATH` or the build will fail due to our Pygments dependency. - **Windows users:** While we use Jekyll's `encoding` setting, you might still need to change the command prompt's character encoding ([code page](http://en.wikipedia.org/wiki/Windows_code_page)) to UTF-8 so Jekyll runs without errors. For Ruby 2.0.0, run `chcp 65001` first. For Ruby 1.9.3, you can alternatively do `SET LANG=en_EN.UTF-8`.
3. Open <http://localhost:9001> in your browser, and voilà. 3. Open <http://localhost:9001> in your browser, and voilà.
Learn more about using Jekyll by reading its [documentation](http://jekyllrb.com/docs/home/). Learn more about using Jekyll by reading its [documentation](http://jekyllrb.com/docs/home/).
...@@ -118,7 +118,7 @@ Should you encounter problems with installing dependencies or running Grunt comm ...@@ -118,7 +118,7 @@ Should you encounter problems with installing dependencies or running Grunt comm
Please read through our [contributing guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md). Included are directions for opening issues, coding standards, and notes on development. Please read through our [contributing guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md). Included are directions for opening issues, coding standards, and notes on development.
More over, 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). Moreover, 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).
Editor preferences are available in the [editor config](https://github.com/twbs/bootstrap/blob/master/.editorconfig) for easy use in common text editors. Read more and download plugins at <http://editorconfig.org>. Editor preferences are available in the [editor config](https://github.com/twbs/bootstrap/blob/master/.editorconfig) for easy use in common text editors. Read more and download plugins at <http://editorconfig.org>.
...@@ -131,7 +131,7 @@ Keep track of development and community news. ...@@ -131,7 +131,7 @@ Keep track of development and community news.
- Follow [@twbootstrap on Twitter](http://twitter.com/twbootstrap). - Follow [@twbootstrap on Twitter](http://twitter.com/twbootstrap).
- Read and subscribe to [The Official Bootstrap Blog](http://blog.getbootstrap.com). - Read and subscribe to [The Official Bootstrap Blog](http://blog.getbootstrap.com).
- Chat with fellow Bootstrappers in IRC. On the `irc.freenode.net` server, in the `##twitter-bootstrap` channel. - Chat with fellow Bootstrappers in IRC. On the `irc.freenode.net` server, in the `##twitter-bootstrap` channel.
- Implementation help may be found at Stack Overflow (tagged [`twitter-bootstrap`](http://stackoverflow.com/questions/tagged/twitter-bootstrap)). - Implementation help may be found at Stack Overflow (tagged [`twitter-bootstrap-3`](http://stackoverflow.com/questions/tagged/twitter-bootstrap-3)).
...@@ -170,4 +170,4 @@ For more information on SemVer, please visit <http://semver.org/>. ...@@ -170,4 +170,4 @@ For more information on SemVer, please visit <http://semver.org/>.
## Copyright and license ## Copyright and license
Copyright 2011-2014 Twitter, Inc. under [the MIT license](LICENSE). Code and documentation copyright 2011-2014 Twitter, Inc. Code released under [the MIT license](LICENSE). Docs released under [Creative Commons](docs/LICENSE).
...@@ -12,20 +12,26 @@ host: 0.0.0.0 ...@@ -12,20 +12,26 @@ host: 0.0.0.0
port: 9001 port: 9001
baseurl: / baseurl: /
url: http://localhost:9001 url: http://localhost:9001
encoding: UTF-8
exclude:
- "jade"
- "vendor"
# Custom vars # Custom vars
current_version: 3.0.3 current_version: 3.1.0
repo: https://github.com/twbs/bootstrap repo: https://github.com/twbs/bootstrap
sass_repo: https://github.com/twbs/bootstrap-sass sass_repo: https://github.com/twbs/bootstrap-sass
download: download:
source: https://github.com/twbs/bootstrap/archive/v3.0.3.zip source: https://github.com/twbs/bootstrap/archive/v3.1.0.zip
dist: https://github.com/twbs/bootstrap/releases/download/v3.0.3/bootstrap-3.0.3-dist.zip dist: https://github.com/twbs/bootstrap/releases/download/v3.1.0/bootstrap-3.1.0-dist.zip
sass: https://github.com/twbs/bootstrap-sass/archive/v3.1.0.tar.gz
blog: http://blog.getbootstrap.com blog: http://blog.getbootstrap.com
expo: http://expo.getbootstrap.com expo: http://expo.getbootstrap.com
cdn: cdn:
css: //netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css css: //netdna.bootstrapcdn.com/bootstrap/3.1.0/css/bootstrap.min.css
css_theme: //netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap-theme.min.css css_theme: //netdna.bootstrapcdn.com/bootstrap/3.1.0/css/bootstrap-theme.min.css
js: //netdna.bootstrapcdn.com/bootstrap/3.0.3/js/bootstrap.min.js js: //netdna.bootstrapcdn.com/bootstrap/3.1.0/js/bootstrap.min.js
{ {
"name": "bootstrap", "name": "bootstrap",
"version": "3.0.3", "version": "3.1.0",
"main": [ "main": [
"./dist/css/bootstrap.css", "./dist/css/bootstrap.css",
"./dist/js/bootstrap.js", "./dist/js/bootstrap.js",
......
{
"username": "--secure--",
"key": "--secure--",
"test_path": "js/tests/index.html",
"debug": true,
"browsers": [
{
"browser": "firefox",
"browser_version": "latest",
"os": "OS X",
"os_version": "Mavericks"
},
{
"browser": "safari",
"browser_version": "latest",
"os": "OS X",
"os_version": "Mavericks"
},
{
"browser": "firefox",
"browser_version": "latest",
"os": "Windows",
"os_version": "8.1"
},
{
"browser": "chrome",
"browser_version": "latest",
"os": "Windows",
"os_version": "8.1"
},
{
"browser": "Mobile Safari",
"os": "ios",
"os_version": "7.0",
"device": "iPhone 5S"
}
]
}
/*! /*!
* Bootstrap v3.0.3 (http://getbootstrap.com) * Bootstrap v3.1.0 (http://getbootstrap.com)
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/ */
......
This diff was suppressed by a .gitattributes entry.
/*! /*!
* Bootstrap v3.0.3 (http://getbootstrap.com) * Bootstrap v3.1.0 (http://getbootstrap.com)
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/ */
......
This diff is collapsed.
This diff was suppressed by a .gitattributes entry.
This source diff could not be displayed because it is too large. You can view the blob instead.
/*! /*!
* Bootstrap v3.0.3 (http://getbootstrap.com) * Bootstrap v3.1.0 (http://getbootstrap.com)
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/ */
if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery') } if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript requires jQuery') }
/* ======================================================================== /* ========================================================================
* Bootstrap: transition.js v3.0.3 * Bootstrap: transition.js v3.1.0
* http://getbootstrap.com/javascript/#transitions * http://getbootstrap.com/javascript/#transitions
* ======================================================================== * ========================================================================
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
...@@ -56,7 +56,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery' ...@@ -56,7 +56,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery'
}(jQuery); }(jQuery);
/* ======================================================================== /* ========================================================================
* Bootstrap: alert.js v3.0.3 * Bootstrap: alert.js v3.1.0
* http://getbootstrap.com/javascript/#alerts * http://getbootstrap.com/javascript/#alerts
* ======================================================================== * ========================================================================
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
...@@ -145,7 +145,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery' ...@@ -145,7 +145,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery'
}(jQuery); }(jQuery);
/* ======================================================================== /* ========================================================================
* Bootstrap: button.js v3.0.3 * Bootstrap: button.js v3.1.0
* http://getbootstrap.com/javascript/#buttons * http://getbootstrap.com/javascript/#buttons
* ======================================================================== * ========================================================================
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
...@@ -253,7 +253,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery' ...@@ -253,7 +253,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery'
}(jQuery); }(jQuery);
/* ======================================================================== /* ========================================================================
* Bootstrap: carousel.js v3.0.3 * Bootstrap: carousel.js v3.1.0
* http://getbootstrap.com/javascript/#carousel * http://getbootstrap.com/javascript/#carousel
* ======================================================================== * ========================================================================
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
...@@ -322,7 +322,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery' ...@@ -322,7 +322,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery'
Carousel.prototype.pause = function (e) { Carousel.prototype.pause = function (e) {
e || (this.paused = true) e || (this.paused = true)
if (this.$element.find('.next, .prev').length && $.support.transition.end) { if (this.$element.find('.next, .prev').length && $.support.transition) {
this.$element.trigger($.support.transition.end) this.$element.trigger($.support.transition.end)
this.cycle(true) this.cycle(true)
} }
...@@ -459,7 +459,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery' ...@@ -459,7 +459,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery'
}(jQuery); }(jQuery);
/* ======================================================================== /* ========================================================================
* Bootstrap: collapse.js v3.0.3 * Bootstrap: collapse.js v3.1.0
* http://getbootstrap.com/javascript/#collapse * http://getbootstrap.com/javascript/#collapse
* ======================================================================== * ========================================================================
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
...@@ -587,6 +587,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery' ...@@ -587,6 +587,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery'
var data = $this.data('bs.collapse') var data = $this.data('bs.collapse')
var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option) var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option)
if (!data && options.toggle && option == 'show') option = !option
if (!data) $this.data('bs.collapse', (data = new Collapse(this, options))) if (!data) $this.data('bs.collapse', (data = new Collapse(this, options)))
if (typeof option == 'string') data[option]() if (typeof option == 'string') data[option]()
}) })
...@@ -629,7 +630,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery' ...@@ -629,7 +630,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery'
}(jQuery); }(jQuery);
/* ======================================================================== /* ========================================================================
* Bootstrap: dropdown.js v3.0.3 * Bootstrap: dropdown.js v3.1.0
* http://getbootstrap.com/javascript/#dropdowns * http://getbootstrap.com/javascript/#dropdowns
* ======================================================================== * ========================================================================
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
...@@ -777,7 +778,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery' ...@@ -777,7 +778,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery'
}(jQuery); }(jQuery);
/* ======================================================================== /* ========================================================================
* Bootstrap: modal.js v3.0.3 * Bootstrap: modal.js v3.1.0
* http://getbootstrap.com/javascript/#modals * http://getbootstrap.com/javascript/#modals
* ======================================================================== * ========================================================================
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
...@@ -828,7 +829,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery' ...@@ -828,7 +829,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery'
this.escape() this.escape()
this.$element.on('click.dismiss.modal', '[data-dismiss="modal"]', $.proxy(this.hide, this)) this.$element.on('click.dismiss.bs.modal', '[data-dismiss="modal"]', $.proxy(this.hide, this))
this.backdrop(function () { this.backdrop(function () {
var transition = $.support.transition && that.$element.hasClass('fade') var transition = $.support.transition && that.$element.hasClass('fade')
...@@ -881,7 +882,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery' ...@@ -881,7 +882,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery'
this.$element this.$element
.removeClass('in') .removeClass('in')
.attr('aria-hidden', true) .attr('aria-hidden', true)
.off('click.dismiss.modal') .off('click.dismiss.bs.modal')
$.support.transition && this.$element.hasClass('fade') ? $.support.transition && this.$element.hasClass('fade') ?
this.$element this.$element
...@@ -933,7 +934,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery' ...@@ -933,7 +934,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery'
this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />') this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
.appendTo(document.body) .appendTo(document.body)
this.$element.on('click.dismiss.modal', $.proxy(function (e) { this.$element.on('click.dismiss.bs.modal', $.proxy(function (e) {
if (e.target !== e.currentTarget) return if (e.target !== e.currentTarget) return
this.options.backdrop == 'static' this.options.backdrop == 'static'
? this.$element[0].focus.call(this.$element[0]) ? this.$element[0].focus.call(this.$element[0])
...@@ -1015,13 +1016,13 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery' ...@@ -1015,13 +1016,13 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery'
}) })
$(document) $(document)
.on('show.bs.modal', '.modal', function () { $(document.body).addClass('modal-open') }) .on('show.bs.modal', '.modal', function () { $(document.body).addClass('modal-open') })
.on('hidden.bs.modal', '.modal', function () { $(document.body).removeClass('modal-open') }) .on('hidden.bs.modal', '.modal', function () { $(document.body).removeClass('modal-open') })
}(jQuery); }(jQuery);
/* ======================================================================== /* ========================================================================
* Bootstrap: tooltip.js v3.0.3 * Bootstrap: tooltip.js v3.1.0
* http://getbootstrap.com/javascript/#tooltip * http://getbootstrap.com/javascript/#tooltip
* Inspired by the original jQuery.tipsy by Jason Frame * Inspired by the original jQuery.tipsy by Jason Frame
* ======================================================================== * ========================================================================
...@@ -1421,7 +1422,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery' ...@@ -1421,7 +1422,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery'
}(jQuery); }(jQuery);
/* ======================================================================== /* ========================================================================
* Bootstrap: popover.js v3.0.3 * Bootstrap: popover.js v3.1.0
* http://getbootstrap.com/javascript/#popovers * http://getbootstrap.com/javascript/#popovers
* ======================================================================== * ========================================================================
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
...@@ -1532,7 +1533,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery' ...@@ -1532,7 +1533,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery'
}(jQuery); }(jQuery);
/* ======================================================================== /* ========================================================================
* Bootstrap: scrollspy.js v3.0.3 * Bootstrap: scrollspy.js v3.1.0
* http://getbootstrap.com/javascript/#scrollspy * http://getbootstrap.com/javascript/#scrollspy
* ======================================================================== * ========================================================================
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
...@@ -1686,7 +1687,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery' ...@@ -1686,7 +1687,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery'
}(jQuery); }(jQuery);
/* ======================================================================== /* ========================================================================
* Bootstrap: tab.js v3.0.3 * Bootstrap: tab.js v3.1.0
* http://getbootstrap.com/javascript/#tabs * http://getbootstrap.com/javascript/#tabs
* ======================================================================== * ========================================================================
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
...@@ -1812,7 +1813,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery' ...@@ -1812,7 +1813,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap requires jQuery'
}(jQuery); }(jQuery);
/* ======================================================================== /* ========================================================================
* Bootstrap: affix.js v3.0.3 * Bootstrap: affix.js v3.1.0
* http://getbootstrap.com/javascript/#affix * http://getbootstrap.com/javascript/#affix
* ======================================================================== * ========================================================================
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
......
This diff is collapsed.
- name: Coinbase
url: https://coinbase.com/
expo_url: http://expo.getbootstrap.com/2013/08/06/coinbase/
img: http://expo.getbootstrap.com/screenshots/coinbase.jpg
- name: Localcrime
url: http://www.localcrimeapp.com/
expo_url: http://expo.getbootstrap.com/2013/08/08/localcrime/
img: http://expo.getbootstrap.com/screenshots/localcrime.jpg
- name: Sentry
url: https://www.getsentry.com/
expo_url: http://expo.getbootstrap.com/2013/05/09/sentry/
img: http://expo.getbootstrap.com/screenshots/sentry.jpg
- name: Fortrabbit
url: http://fortrabbit.com/
expo_url: http://expo.getbootstrap.com/2013/08/05/fortrabbit/
img: http://expo.getbootstrap.com/screenshots/fortrabbit.jpg
<!-- NOTE: DO NOT EDIT THE FOLLOWING SECTION DIRECTLY! It is autogenerated via the `build-customizer-vars-form` Grunt task using the customizer-variables.jade template.--> <!-- NOTE: DO NOT EDIT THE FOLLOWING SECTION DIRECTLY! It is autogenerated via the `build-customizer-html` Grunt task using the customizer-variables.jade template.-->
<h2 id="colors">Colors</h2> <h2 id="colors">Colors</h2>
<p>Gray and brand colors for use across Bootstrap.</p> <p>Gray and brand colors for use across Bootstrap.</p>
<div class="row"> <div class="row">
...@@ -131,7 +131,7 @@ ...@@ -131,7 +131,7 @@
<div class="bs-customizer-input"> <div class="bs-customizer-input">
<label for="input-@line-height-computed">@line-height-computed</label> <label for="input-@line-height-computed">@line-height-computed</label>
<input id="input-@line-height-computed" type="text" value="floor((@font-size-base * @line-height-base))" data-var="@line-height-computed" class="form-control"/> <input id="input-@line-height-computed" type="text" value="floor((@font-size-base * @line-height-base))" data-var="@line-height-computed" class="form-control"/>
<p class="help-block">Computed &quot;line-height&quot; (<code>font-size</code> &amp;times; <code>line-height</code>) for use with <code>margin</code>, <code>padding</code>, etc.</p> <p class="help-block">Computed &quot;line-height&quot; (<code>font-size</code> * <code>line-height</code>) for use with <code>margin</code>, <code>padding</code>, etc.</p>
</div> </div>
<div class="bs-customizer-input"> <div class="bs-customizer-input">
<label for="input-@headings-font-family">@headings-font-family</label> <label for="input-@headings-font-family">@headings-font-family</label>
...@@ -572,6 +572,37 @@ ...@@ -572,6 +572,37 @@
<p class="help-block">Point at which the navbar begins collapsing.</p> <p class="help-block">Point at which the navbar begins collapsing.</p>
</div> </div>
</div> </div>
<h2 id="container-sizes">Container sizes</h2>
<p>Define the maximum width of <code>.container</code> for different screen sizes.</p>
<div class="row">
<div class="bs-customizer-input">
<label for="input-@container-tablet">@container-tablet</label>
<input id="input-@container-tablet" type="text" value="((720px + @grid-gutter-width))" data-var="@container-tablet" class="form-control"/>
</div>
<div class="bs-customizer-input">
<label for="input-@container-sm">@container-sm</label>
<input id="input-@container-sm" type="text" value="@container-tablet" data-var="@container-sm" class="form-control"/>
<p class="help-block">For <code>@screen-sm-min</code> and up.</p>
</div>
<div class="bs-customizer-input">
<label for="input-@container-desktop">@container-desktop</label>
<input id="input-@container-desktop" type="text" value="((940px + @grid-gutter-width))" data-var="@container-desktop" class="form-control"/>
</div>
<div class="bs-customizer-input">
<label for="input-@container-md">@container-md</label>
<input id="input-@container-md" type="text" value="@container-desktop" data-var="@container-md" class="form-control"/>
<p class="help-block">For <code>@screen-md-min</code> and up.</p>
</div>
<div class="bs-customizer-input">
<label for="input-@container-large-desktop">@container-large-desktop</label>
<input id="input-@container-large-desktop" type="text" value="((1140px + @grid-gutter-width))" data-var="@container-large-desktop" class="form-control"/>
</div>
<div class="bs-customizer-input">
<label for="input-@container-lg">@container-lg</label>
<input id="input-@container-lg" type="text" value="@container-large-desktop" data-var="@container-lg" class="form-control"/>
<p class="help-block">For <code>@screen-lg-min</code> and up.</p>
</div>
</div>
<h2 id="navbar">Navbar</h2> <h2 id="navbar">Navbar</h2>
<p></p> <p></p>
<div class="row"> <div class="row">
...@@ -595,6 +626,10 @@ ...@@ -595,6 +626,10 @@
<label for="input-@navbar-padding-vertical">@navbar-padding-vertical</label> <label for="input-@navbar-padding-vertical">@navbar-padding-vertical</label>
<input id="input-@navbar-padding-vertical" type="text" value="((@navbar-height - @line-height-computed) / 2)" data-var="@navbar-padding-vertical" class="form-control"/> <input id="input-@navbar-padding-vertical" type="text" value="((@navbar-height - @line-height-computed) / 2)" data-var="@navbar-padding-vertical" class="form-control"/>
</div> </div>
<div class="bs-customizer-input">
<label for="input-@navbar-collapse-max-height">@navbar-collapse-max-height</label>
<input id="input-@navbar-collapse-max-height" type="text" value="340px" data-var="@navbar-collapse-max-height" class="form-control"/>
</div>
<div class="bs-customizer-input"> <div class="bs-customizer-input">
<label for="input-@navbar-default-color">@navbar-default-color</label> <label for="input-@navbar-default-color">@navbar-default-color</label>
<input id="input-@navbar-default-color" type="text" value="#777" data-var="@navbar-default-color" class="form-control"/> <input id="input-@navbar-default-color" type="text" value="#777" data-var="@navbar-default-color" class="form-control"/>
...@@ -1117,7 +1152,7 @@ ...@@ -1117,7 +1152,7 @@
<div class="bs-customizer-input"> <div class="bs-customizer-input">
<label for="input-@modal-content-fallback-border-color">@modal-content-fallback-border-color</label> <label for="input-@modal-content-fallback-border-color">@modal-content-fallback-border-color</label>
<input id="input-@modal-content-fallback-border-color" type="text" value="#999" data-var="@modal-content-fallback-border-color" class="form-control"/> <input id="input-@modal-content-fallback-border-color" type="text" value="#999" data-var="@modal-content-fallback-border-color" class="form-control"/>
<p class="help-block">Modal content border color &lt;strong&gt;for IE8&lt;/strong&gt;</p> <p class="help-block">Modal content border color <strong>for IE8</strong></p>
</div> </div>
<div class="bs-customizer-input"> <div class="bs-customizer-input">
<label for="input-@modal-backdrop-bg">@modal-backdrop-bg</label> <label for="input-@modal-backdrop-bg">@modal-backdrop-bg</label>
...@@ -1143,6 +1178,10 @@ ...@@ -1143,6 +1178,10 @@
<label for="input-@modal-lg">@modal-lg</label> <label for="input-@modal-lg">@modal-lg</label>
<input id="input-@modal-lg" type="text" value="900px" data-var="@modal-lg" class="form-control"/> <input id="input-@modal-lg" type="text" value="900px" data-var="@modal-lg" class="form-control"/>
</div> </div>
<div class="bs-customizer-input">
<label for="input-@modal-md">@modal-md</label>
<input id="input-@modal-md" type="text" value="600px" data-var="@modal-md" class="form-control"/>
</div>
<div class="bs-customizer-input"> <div class="bs-customizer-input">
<label for="input-@modal-sm">@modal-sm</label> <label for="input-@modal-sm">@modal-sm</label>
<input id="input-@modal-sm" type="text" value="300px" data-var="@modal-sm" class="form-control"/> <input id="input-@modal-sm" type="text" value="300px" data-var="@modal-sm" class="form-control"/>
...@@ -1623,6 +1662,11 @@ ...@@ -1623,6 +1662,11 @@
<input id="input-@blockquote-small-color" type="text" value="@gray-light" data-var="@blockquote-small-color" class="form-control"/> <input id="input-@blockquote-small-color" type="text" value="@gray-light" data-var="@blockquote-small-color" class="form-control"/>
<p class="help-block">Blockquote small color</p> <p class="help-block">Blockquote small color</p>
</div> </div>
<div class="bs-customizer-input">
<label for="input-@blockquote-font-size">@blockquote-font-size</label>
<input id="input-@blockquote-font-size" type="text" value="(@font-size-base * 1.25)" data-var="@blockquote-font-size" class="form-control"/>
<p class="help-block">Blockquote font size</p>
</div>
<div class="bs-customizer-input"> <div class="bs-customizer-input">
<label for="input-@blockquote-border-color">@blockquote-border-color</label> <label for="input-@blockquote-border-color">@blockquote-border-color</label>
<input id="input-@blockquote-border-color" type="text" value="@gray-lighter" data-var="@blockquote-border-color" class="form-control"/> <input id="input-@blockquote-border-color" type="text" value="@gray-lighter" data-var="@blockquote-border-color" class="form-control"/>
...@@ -1648,35 +1692,4 @@ ...@@ -1648,35 +1692,4 @@
<p class="help-block">Horizontal offset for forms and lists.</p> <p class="help-block">Horizontal offset for forms and lists.</p>
</div> </div>
</div> </div>
<h2 id="container-sizes">Container sizes</h2> <!-- NOTE: DO NOT EDIT THE PRECEDING SECTION DIRECTLY! It is autogenerated via the `build-customizer-html` Grunt task using the customizer-variables.jade template.-->
<p>Define the maximum width of <code>.container</code> for different screen sizes.</p> \ No newline at end of file
<div class="row">
<div class="bs-customizer-input">
<label for="input-@container-tablet">@container-tablet</label>
<input id="input-@container-tablet" type="text" value="((720px + @grid-gutter-width))" data-var="@container-tablet" class="form-control"/>
</div>
<div class="bs-customizer-input">
<label for="input-@container-sm">@container-sm</label>
<input id="input-@container-sm" type="text" value="@container-tablet" data-var="@container-sm" class="form-control"/>
<p class="help-block">For <code>@screen-sm-min</code> and up.</p>
</div>
<div class="bs-customizer-input">
<label for="input-@container-desktop">@container-desktop</label>
<input id="input-@container-desktop" type="text" value="((940px + @grid-gutter-width))" data-var="@container-desktop" class="form-control"/>
</div>
<div class="bs-customizer-input">
<label for="input-@container-md">@container-md</label>
<input id="input-@container-md" type="text" value="@container-desktop" data-var="@container-md" class="form-control"/>
<p class="help-block">For <code>@screen-md-min</code> and up.</p>
</div>
<div class="bs-customizer-input">
<label for="input-@container-large-desktop">@container-large-desktop</label>
<input id="input-@container-large-desktop" type="text" value="((1140px + @grid-gutter-width))" data-var="@container-large-desktop" class="form-control"/>
</div>
<div class="bs-customizer-input">
<label for="input-@container-lg">@container-lg</label>
<input id="input-@container-lg" type="text" value="@container-large-desktop" data-var="@container-lg" class="form-control"/>
<p class="help-block">For <code>@screen-lg-min</code> and up.</p>
</div>
</div>
<!-- NOTE: DO NOT EDIT THE PRECEDING SECTION DIRECTLY! It is autogenerated via the `build-customizer-vars-form` Grunt task using the customizer-variables.jade template.-->
\ No newline at end of file
<!-- Footer
================================================== -->
<footer class="bs-footer" role="contentinfo">
<div class="container">
{% include social-buttons.html %}
<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>Maintained by the <a href="https://github.com/twbs?tab=members">core team</a> with the help of <a href="https://github.com/twbs/bootstrap/graphs/contributors">our contributors</a>.</p>
<p>Code licensed under <a href="https://github.com/twbs/bootstrap/blob/master/LICENSE" target="_blank">MIT</a>, documentation under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
<ul class="footer-links muted">
<li>Currently v{{ site.current_version }}</li>
<li>&middot;</li>
<li><a href="{{ site.repo }}">GitHub</a></li>
<li>&middot;</li>
<li><a href="../getting-started/#examples">Examples</a></li>
<li>&middot;</li>
<li><a href="../2.3.2/">v2.3.2 docs</a></li>
<li>&middot;</li>
<li><a href="../about/">About</a></li>
<li>&middot;</li>
<li><a href="{{ site.expo }}">Expo</a></li>
<li>&middot;</li>
<li><a href="{{ site.blog }}">Blog</a></li>
<li>&middot;</li>
<li><a href="{{ site.repo }}/issues?state=open">Issues</a></li>
<li>&middot;</li>
<li><a href="{{ site.repo }}/releases">Releases</a></li>
</ul>
</div>
</footer>
<!-- Bootstrap core JavaScript <!-- Bootstrap core JavaScript
================================================== --> ================================================== -->
<!-- Placed at the end of the document so the pages load faster --> <!-- Placed at the end of the document so the pages load faster -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="{{ site.baseurl }}dist/js/bootstrap.min.js"></script> <script src="../dist/js/bootstrap.min.js"></script>
<script src="{{ site.baseurl }}assets/js/docs.min.js"></script> <script src="../assets/js/docs.min.js"></script>
{% if page.slug == "customize" %} {% if page.slug == "customize" %}
<script src="{{ site.baseurl }}assets/js/customize.min.js"></script> <script src="../assets/js/customize.min.js"></script>
{% endif %} {% endif %}
{% comment %} {% comment %}
......
<meta charset="utf-8"> <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="Bootstrap, a sleek, intuitive, and powerful mobile first front-end framework for faster and easier web development."> <meta name="description" content="Bootstrap, a sleek, intuitive, and powerful mobile first front-end framework for faster and easier web development.">
<meta name="keywords" content="HTML, CSS, JS, JavaScript, framework, bootstrap, front-end, frontend, web development"> <meta name="keywords" content="HTML, CSS, JS, JavaScript, framework, bootstrap, front-end, frontend, web development">
<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors">
...@@ -14,11 +14,11 @@ ...@@ -14,11 +14,11 @@
</title> </title>
<!-- Bootstrap core CSS --> <!-- Bootstrap core CSS -->
<link href="{{ site.baseurl }}dist/css/bootstrap.min.css" rel="stylesheet"> <link href="../dist/css/bootstrap.min.css" rel="stylesheet">
<!-- Documentation extras --> <!-- Documentation extras -->
<link href="{{ site.baseurl }}assets/css/pack.min.css" rel="stylesheet"> <link href="../assets/css/docs.min.css" rel="stylesheet">
<!--[if lt IE 9]><script src="{{ site.baseurl }}assets/js/ie8-responsive-file-warning.js"></script><![endif]--> <!--[if lt IE 9]><script src="../assets/js/ie8-responsive-file-warning.js"></script><![endif]-->
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries --> <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]> <!--[if lt IE 9]>
...@@ -27,8 +27,8 @@ ...@@ -27,8 +27,8 @@
<![endif]--> <![endif]-->
<!-- Favicons --> <!-- Favicons -->
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="{{ site.baseurl }}assets/ico/apple-touch-icon-144-precomposed.png"> <link rel="apple-touch-icon-precomposed" sizes="144x144" href="../assets/ico/apple-touch-icon-144-precomposed.png">
<link rel="shortcut icon" href="{{ site.baseurl }}assets/ico/favicon.ico"> <link rel="shortcut icon" href="../assets/ico/favicon.ico">
<script> <script>
var _gaq = _gaq || []; var _gaq = _gaq || [];
......
...@@ -5,8 +5,5 @@ ...@@ -5,8 +5,5 @@
<a href="#team">Team</a> <a href="#team">Team</a>
</li> </li>
<li> <li>
<a href="#community">Community</a> <a href="#brand">Brand guidelines</a>
</li>
<li>
<a href="#translations">Translations</a>
</li> </li>
...@@ -102,6 +102,7 @@ ...@@ -102,6 +102,7 @@
<a href="#progress">Progress bars</a> <a href="#progress">Progress bars</a>
<ul class="nav"> <ul class="nav">
<li><a href="#progress-basic">Basic example</a></li> <li><a href="#progress-basic">Basic example</a></li>
<li><a href="#progress-label">With label</a></li>
<li><a href="#progress-alternatives">Contextual alternatives</a></li> <li><a href="#progress-alternatives">Contextual alternatives</a></li>
<li><a href="#progress-striped">Striped</a></li> <li><a href="#progress-striped">Striped</a></li>
<li><a href="#progress-animated">Animated</a></li> <li><a href="#progress-animated">Animated</a></li>
......
...@@ -3,9 +3,8 @@ ...@@ -3,9 +3,8 @@
<ul class="nav"> <ul class="nav">
<li><a href="#overview-doctype">HTML5 doctype</a></li> <li><a href="#overview-doctype">HTML5 doctype</a></li>
<li><a href="#overview-mobile">Mobile first</a></li> <li><a href="#overview-mobile">Mobile first</a></li>
<li><a href="#overview-responsive-images">Responsive images</a></li>
<li><a href="#overview-type-links">Typography and links</a></li> <li><a href="#overview-type-links">Typography and links</a></li>
<li><a href="#overview-normalize">Normalize</a></li> <li><a href="#overview-normalize">Normalize.css</a></li>
<li><a href="#overview-container">Containers</a></li> <li><a href="#overview-container">Containers</a></li>
</ul> </ul>
</li> </li>
...@@ -15,7 +14,7 @@ ...@@ -15,7 +14,7 @@
<li><a href="#grid-intro">Introduction</a></li> <li><a href="#grid-intro">Introduction</a></li>
<li><a href="#grid-media-queries">Media queries</a></li> <li><a href="#grid-media-queries">Media queries</a></li>
<li><a href="#grid-options">Grid options</a></li> <li><a href="#grid-options">Grid options</a></li>
<li><a href="#grid-example-basic">Ex: Stacked-to-horizonal</a></li> <li><a href="#grid-example-basic">Ex: Stacked-to-horizontal</a></li>
<li><a href="#grid-example-fluid">Ex: Fluid container</a></li> <li><a href="#grid-example-fluid">Ex: Fluid container</a></li>
<li><a href="#grid-example-mixed">Ex: Mobile and desktops</a></li> <li><a href="#grid-example-mixed">Ex: Mobile and desktops</a></li>
<li><a href="#grid-example-mixed-complete">Ex: Mobile, tablet, desktops</a></li> <li><a href="#grid-example-mixed-complete">Ex: Mobile, tablet, desktops</a></li>
...@@ -23,7 +22,7 @@ ...@@ -23,7 +22,7 @@
<li><a href="#grid-offsetting">Offsetting columns</a></li> <li><a href="#grid-offsetting">Offsetting columns</a></li>
<li><a href="#grid-nesting">Nesting columns</a></li> <li><a href="#grid-nesting">Nesting columns</a></li>
<li><a href="#grid-column-ordering">Column ordering</a></li> <li><a href="#grid-column-ordering">Column ordering</a></li>
<li><a href="#grid-less">LESS mixins and variables</a></li> <li><a href="#grid-less">Less mixins and variables</a></li>
</ul> </ul>
</li> </li>
<li> <li>
...@@ -85,6 +84,10 @@ ...@@ -85,6 +84,10 @@
</li> </li>
<li> <li>
<a href="#images">Images</a> <a href="#images">Images</a>
<ul class="nav">
<li><a href="#images-responsive">Responsive images</a></li>
<li><a href="#images-shapes">Image shapes</a></li>
</ul>
</li> </li>
<li> <li>
<a href="#helper-classes">Helper classes</a> <a href="#helper-classes">Helper classes</a>
...@@ -112,6 +115,7 @@ ...@@ -112,6 +115,7 @@
<li> <li>
<a href="#less">Using Less</a> <a href="#less">Using Less</a>
<ul class="nav"> <ul class="nav">
<li><a href="#less-bootstrap">Compiling Bootstrap</a></li>
<li><a href="#less-variables">Variables</a></li> <li><a href="#less-variables">Variables</a></li>
<li><a href="#less-mixins-vendor">Vendor mixins</a></li> <li><a href="#less-mixins-vendor">Vendor mixins</a></li>
<li><a href="#less-mixins-utility">Utility mixins</a></li> <li><a href="#less-mixins-utility">Utility mixins</a></li>
...@@ -121,9 +125,6 @@ ...@@ -121,9 +125,6 @@
<a href="#sass">Using Sass</a> <a href="#sass">Using Sass</a>
<ul class="nav"> <ul class="nav">
<li><a href="#sass-contents">What's included</a></li> <li><a href="#sass-contents">What's included</a></li>
<li><a href="#sass-installation-rails">Rails install</a></li> <li><a href="#sass-installation">Rails install</a></li>
<li><a href="#sass-installation-compass">Compass install</a></li>
<li><a href="#sass-installation-sass-only">Sass install</a></li>
<li><a href="#sass-usage">Usage</a></li>
</ul> </ul>
</li> </li>
<li>
<a href="#less">LESS components</a> <!-- NOTE: DO NOT EDIT THE FOLLOWING SECTION DIRECTLY! It is autogenerated via the `build-customizer-html` Grunt task using the customizer-nav.jade template.-->
</li> <li><a href="#less">Less components</a></li>
<li> <li><a href="#plugins">jQuery plugins</a></li>
<a href="#plugins">jQuery plugins</a> <li><a href="#less-variables">Less variables</a>
</li>
<li>
<a href="#less-variables">LESS variables</a>
<ul class="nav"> <ul class="nav">
<li><a href="#variables-basics">Basics</a></li> <li><a href="#colors">Colors</a></li>
<li><a href="#variables-buttons">Buttons</a></li> <li><a href="#scaffolding">Scaffolding</a></li>
<li><a href="#variables-form-states">Form states</a></li> <li><a href="#typography">Typography</a></li>
<li><a href="#variables-alerts">Alerts</a></li> <li><a href="#components">Components</a></li>
<li><a href="#variables-navbar">Navbar</a></li> <li><a href="#tables">Tables</a></li>
<li><a href="#variables-nav">Nav</a></li> <li><a href="#buttons">Buttons</a></li>
<li><a href="#variables-tables">Tables</a></li> <li><a href="#forms">Forms</a></li>
<li><a href="#variables-forms">Forms</a></li> <li><a href="#dropdowns">Dropdowns</a></li>
<li><a href="#variables-dropdowns">Dropdowns</a></li> <li><a href="#media-queries-breakpoints">Media queries breakpoints</a></li>
<li><a href="#variables-panels-wells">Panels and wells</a></li> <li><a href="#grid-system">Grid system</a></li>
<li><a href="#variables-accordion">Accordion</a></li> <li><a href="#container-sizes">Container sizes</a></li>
<li><a href="#variables-badges">Badges</a></li> <li><a href="#navbar">Navbar</a></li>
<li><a href="#variables-breadcrumbs">Breadcrumbs</a></li> <li><a href="#navs">Navs</a></li>
<li><a href="#variables-jumbotron">Jumbotron</a></li> <li><a href="#tabs">Tabs</a></li>
<li><a href="#variables-modals">Modals</a></li> <li><a href="#pills">Pills</a></li>
<li><a href="#variables-carousel">Carousel</a></li> <li><a href="#pagination">Pagination</a></li>
<li><a href="#variables-list-group">List group</a></li> <li><a href="#pager">Pager</a></li>
<li><a href="#variables-thumbnails">Thumbnails</a></li> <li><a href="#jumbotron">Jumbotron</a></li>
<li><a href="#variables-progress">Progress bars</a></li> <li><a href="#form-states-and-alerts">Form states and alerts</a></li>
<li><a href="#variables-pagination">Pagination</a></li> <li><a href="#tooltips">Tooltips</a></li>
<li><a href="#variables-pager">Pager</a></li> <li><a href="#popovers">Popovers</a></li>
<li><a href="#variables-labels">Labels</a></li> <li><a href="#labels">Labels</a></li>
<li><a href="#variables-tooltips-popovers">Tooltips and popovers</a></li> <li><a href="#modals">Modals</a></li>
<li><a href="#variables-close">Close button</a></li> <li><a href="#alerts">Alerts</a></li>
<li><a href="#variables-type">Type</a></li> <li><a href="#progress-bars">Progress bars</a></li>
<li><a href="#variables-other">Other</a></li> <li><a href="#list-group">List group</a></li>
<li><a href="#panels">Panels</a></li>
<li><a href="#thumbnails">Thumbnails</a></li>
<li><a href="#wells">Wells</a></li>
<li><a href="#badges">Badges</a></li>
<li><a href="#breadcrumbs">Breadcrumbs</a></li>
<li><a href="#carousel">Carousel</a></li>
<li><a href="#close">Close</a></li>
<li><a href="#code">Code</a></li>
<li><a href="#type">Type</a></li>
<li><a href="#miscellaneous">Miscellaneous</a></li>
</ul> </ul>
</li> </li>
<li> <li><a href="#download">Download</a></li>
<a href="#download">Download</a> <!-- NOTE: DO NOT EDIT THE PRECEDING SECTION DIRECTLY! It is autogenerated via the `build-customizer-html` Grunt task using the customizer-nav.jade template.-->
</li> \ No newline at end of file
<li> <li>
<a href="#download">Download Bootstrap</a> <a href="#download">Download</a>
<ul class="nav">
<li><a href="#download-compiled">Compiled CSS, JS, and fonts</a></li>
<li><a href="#download-additional">Additional downloads</a></li>
<li><a href="#download-cdn">Bootstrap CDN</a></li>
</ul>
</li> </li>
<li> <li>
<a href="#whats-included">What's included</a> <a href="#whats-included">What's included</a>
...@@ -18,18 +13,21 @@ ...@@ -18,18 +13,21 @@
</li> </li>
<li> <li>
<a href="#examples">Examples</a> <a href="#examples">Examples</a>
<ul class="nav">
<li><a href="#examples-framework">Using the framework</a></li>
<li><a href="#examples-navbars">Navbars in action</a></li>
<li><a href="#examples-custom">Custom components</a></li>
<li><a href="#examples-experiments">Experiments</a></li>
</ul>
</li>
<li>
<a href="#community">Community</a>
</li> </li>
<li> <li>
<a href="#disable-responsive">Disabling responsiveness</a> <a href="#disable-responsive">Disabling responsiveness</a>
</li> </li>
<li> <li>
<a href="#migration">Migrating from 2.x to 3.0</a> <a href="#migration">Migrating from 2.x to 3.0</a>
<ul class="nav">
<li><a href="#migration-classes">Major class changes</a></li>
<li><a href="#migration-new">What's new</a></li>
<li><a href="#migration-dropped">What's removed</a></li>
<li><a href="#migration-notes">Additional notes</a></li>
</ul>
</li> </li>
<li> <li>
<a href="#support">Browser and device support</a> <a href="#support">Browser and device support</a>
...@@ -43,6 +41,7 @@ ...@@ -43,6 +41,7 @@
<li><a href="#support-safari-percentages">Safari percent rounding</a></li> <li><a href="#support-safari-percentages">Safari percent rounding</a></li>
<li><a href="#support-fixed-position-keyboards">Modals, navbars, and virtual keyboards</a></li> <li><a href="#support-fixed-position-keyboards">Modals, navbars, and virtual keyboards</a></li>
<li><a href="#support-browser-zooming">Browser zooming</a></li> <li><a href="#support-browser-zooming">Browser zooming</a></li>
<li><a href="#support-printing">Printer viewports</a></li>
<li><a href="#support-android-stock-browser">Android stock browser</a></li> <li><a href="#support-android-stock-browser">Android stock browser</a></li>
</ul> </ul>
</li> </li>
...@@ -58,3 +57,6 @@ ...@@ -58,3 +57,6 @@
<li> <li>
<a href="#customizing">Customizing Bootstrap</a> <a href="#customizing">Customizing Bootstrap</a>
</li> </li>
<li>
<a href="#translations">Translations</a>
</li>
<header class="navbar navbar-inverse navbar-fixed-top bs-docs-nav" role="banner"> <header class="navbar navbar-static-top bs-docs-nav" id="top" role="banner">
<div class="container"> <div class="container">
<div class="navbar-header"> <div class="navbar-header">
<button class="navbar-toggle" type="button" data-toggle="collapse" data-target=".bs-navbar-collapse"> <button class="navbar-toggle" type="button" data-toggle="collapse" data-target=".bs-navbar-collapse">
...@@ -7,30 +7,29 @@ ...@@ -7,30 +7,29 @@
<span class="icon-bar"></span> <span class="icon-bar"></span>
<span class="icon-bar"></span> <span class="icon-bar"></span>
</button> </button>
<a href="{{ site.baseurl }}" class="navbar-brand">Bootstrap</a> <a href="../" class="navbar-brand">Bootstrap</a>
</div> </div>
<nav class="collapse navbar-collapse bs-navbar-collapse" role="navigation"> <nav class="collapse navbar-collapse bs-navbar-collapse" role="navigation">
<ul class="nav navbar-nav"> <ul class="nav navbar-nav">
<li{% if page.slug == "getting-started" %} class="active"{% endif %}> <li{% if page.slug == "getting-started" %} class="active"{% endif %}>
<a href="{{ site.baseurl }}getting-started">Getting started</a> <a href="../getting-started">Getting started</a>
</li> </li>
<li{% if page.slug == "css" %} class="active"{% endif %}> <li{% if page.slug == "css" %} class="active"{% endif %}>
<a href="{{ site.baseurl }}css">CSS</a> <a href="../css">CSS</a>
</li> </li>
<li{% if page.slug == "components" %} class="active"{% endif %}> <li{% if page.slug == "components" %} class="active"{% endif %}>
<a href="{{ site.baseurl }}components">Components</a> <a href="../components">Components</a>
</li> </li>
<li{% if page.slug == "js" %} class="active"{% endif %}> <li{% if page.slug == "js" %} class="active"{% endif %}>
<a href="{{ site.baseurl }}javascript">JavaScript</a> <a href="../javascript">JavaScript</a>
</li> </li>
<li{% if page.slug == "customize" %} class="active"{% endif %}> <li{% if page.slug == "customize" %} class="active"{% endif %}>
<a href="{{ site.baseurl }}customize">Customize</a> <a href="../customize">Customize</a>
</li> </li>
</ul> </ul>
<ul class="nav navbar-nav navbar-right"> <ul class="nav navbar-nav navbar-right">
<li{% if page.slug == "about" %} class="active"{% endif %}> <li><a href="{{ site.expo }}" onclick="_gaq.push(['_trackEvent', 'Navbar', 'Community links', 'Expo']);">Expo</a></li>
<a href="{{ site.baseurl }}about">About</a> <li><a href="{{ site.blog }}" onclick="_gaq.push(['_trackEvent', 'Navbar', 'Community links', 'Blog']);">Blog</a></li>
</li>
</ul> </ul>
</nav> </nav>
</div> </div>
......
<li>
<a href="#classes">Major class changes</a>
</li>
<li>
<a href="#new">What's new</a>
</li>
<li>
<a href="#dropped">What's removed</a>
</li>
<li>
<a href="#notes">Additional notes</a>
</li>
<div class="bs-old-docs">
<div class="container">
<strong>
<a href="{{ site.baseurl }}2.3.2/">Looking for Bootstrap 2.3.2 docs?</a>
</strong>
We've moved it to a new home while we push forward with Bootstrap 3. <a href="http://blog.getbootstrap.com/">Read the blog</a> for details.
</div>
</div>
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
<a href="https://twitter.com/twbootstrap" class="twitter-follow-button" data-link-color="#0069D6" data-show-count="true">Follow @twbootstrap</a> <a href="https://twitter.com/twbootstrap" class="twitter-follow-button" data-link-color="#0069D6" data-show-count="true">Follow @twbootstrap</a>
</li> </li>
<li class="tweet-btn"> <li class="tweet-btn">
<a href="https://twitter.com/share" class="twitter-share-button" data-url="http://getbootstrap.com/" data-count="horizontal" data-via="twbootstrap" data-related="mdo:Creator of Twitter Bootstrap">Tweet</a> <a href="https://twitter.com/share" class="twitter-share-button" data-url="http://getbootstrap.com/" data-count="horizontal" data-via="twbootstrap" data-related="mdo:Creator of Bootstrap">Tweet</a>
</li> </li>
</ul> </ul>
</div> </div>
...@@ -19,12 +19,12 @@ ...@@ -19,12 +19,12 @@
</div> </div>
</div> </div>
<!-- Callout for the old docs link -->
{% include old-bs-docs.html %}
<div class="container bs-docs-container"> <div class="container bs-docs-container">
<div class="row"> <div class="row">
<div class="col-md-9" role="main">
{{ content }}
</div>
<div class="col-md-3"> <div class="col-md-3">
<div class="bs-sidebar hidden-print" role="complementary"> <div class="bs-sidebar hidden-print" role="complementary">
<ul class="nav bs-sidenav"> <ul class="nav bs-sidenav">
...@@ -40,48 +40,19 @@ ...@@ -40,48 +40,19 @@
{% include nav-customize.html %} {% include nav-customize.html %}
{% elsif page.slug == "about" %} {% elsif page.slug == "about" %}
{% include nav-about.html %} {% include nav-about.html %}
{% elsif page.slug == "migration" %}
{% include nav-migration.html %}
{% endif %} {% endif %}
</ul> </ul>
<a class="back-to-top" href="#top">
Back to top
</a>
</div> </div>
</div> </div>
<div class="col-md-9" role="main">
{{ content }}
</div>
</div> </div>
</div> </div>
<!-- Footer
================================================== -->
<footer class="bs-footer" role="contentinfo">
<div class="container">
{% include social-buttons.html %}
<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>Maintained by the <a href="https://github.com/twbs?tab=members">core team</a> with the help of <a href="https://github.com/twbs/bootstrap/graphs/contributors">our contributors</a>.</p>
<p>Code licensed under <a href="https://github.com/twbs/bootstrap/blob/master/LICENSE" target="_blank">MIT</a>, documentation under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.</p>
<ul class="footer-links">
<li>Currently v{{ site.current_version }}</li>
<li class="muted">&middot;</li>
<li><a href="{{ site.baseurl }}2.3.2/">Bootstrap 2.3.2 docs</a></li>
<li class="muted">&middot;</li>
<li><a href="{{ site.repo }}">GitHub project</a></li>
<li class="muted">&middot;</li>
<li><a href="{{ site.baseurl }}getting-started/#examples">Examples</a></li>
<li class="muted">&middot;</li>
<li><a href="{{ site.expo }}">Expo</a></li>
<li class="muted">&middot;</li>
<li><a href="{{ site.blog }}">Blog</a></li>
<li class="muted">&middot;</li>
<li><a href="{{ site.repo }}/issues?state=open">Issues</a></li>
<li class="muted">&middot;</li>
<li><a href="{{ site.repo }}/releases">Releases</a></li>
</ul>
</div>
</footer>
<!-- JS and analytics only. -->
{% include footer.html %} {% include footer.html %}
</body> </body>
</html> </html>
...@@ -13,41 +13,6 @@ ...@@ -13,41 +13,6 @@
<!-- Page content of course! --> <!-- Page content of course! -->
{{ content }} {{ content }}
<footer class="container" role="contentinfo">
{% include ads.html %}
{% include social-buttons.html %}
<ul class="bs-masthead-links">
<li class="current-version">
Currently v{{ site.current_version }}
</li>
<li>
<a href="{{ site.baseurl }}2.3.2/">Bootstrap 2.3.2 docs</a>
</li>
<li>
<a href="{{ site.repo }}" onclick="_gaq.push(['_trackEvent', 'Jumbotron actions', 'Jumbotron links', 'GitHub project']);">GitHub project</a>
</li>
<li>
<a href="{{ site.baseurl }}getting-started/#examples" onclick="_gaq.push(['_trackEvent', 'Jumbotron actions', 'Jumbotron links', 'Examples']);">Examples</a>
</li>
<li>
<a href="{{ site.expo }}" onclick="_gaq.push(['_trackEvent', 'Jumbotron actions', 'Jumbotron links', 'Expo']);">Expo</a>
</li>
<li>
<a href="{{ site.blog }}" onclick="_gaq.push(['_trackEvent', 'Jumbotron actions', 'Jumbotron links', 'Blog']);">Blog</a>
</li>
<li>
<a href="{{ site.repo }}/issues?state=open" onclick="_gaq.push(['_trackEvent', 'Jumbotron actions', 'Jumbotron links', 'Issues']);">Issues</a>
</li>
<li>
<a href="{{ site.repo }}/releases" onclick="_gaq.push(['_trackEvent', 'Jumbotron actions', 'Jumbotron links', 'Releases']);">Releases</a>
</li>
</ul>
</footer>
<!-- JS and analytics only. -->
{% include footer.html %} {% include footer.html %}
</body> </body>
</html> </html>
...@@ -2,16 +2,15 @@ ...@@ -2,16 +2,15 @@
layout: default layout: default
title: About title: About
slug: about slug: about
lead: "Learn about the history of Bootstrap, meet the core team, and check out the ever-growing community resources." lead: "Learn about the project's history, meet the maintaining teams, and find out how to use the Bootstrap brand."
--- ---
<!-- History <!-- History
================================================== --> ================================================== -->
<div class="bs-docs-section"> <div class="bs-docs-section">
<div class="page-header"> <h1 id="history" class="page-header">History</h1>
<h1 id="history">History</h1>
</div>
<p class="lead">Originally created by a designer and a developer at Twitter, Bootstrap has become one of the most popular front-end frameworks and open source projects in the world.</p> <p class="lead">Originally created by a designer and a developer at Twitter, Bootstrap has become one of the most popular front-end frameworks and open source projects in the world.</p>
<p>Bootstrap was created at Twitter in mid-2010 by <a href="https://twitter.com/mdo">@mdo</a> and <a href="https://twitter.com/fat">@fat</a>. Prior to being an open-sourced framework, Bootstrap was known as <em>Twitter Blueprint</em>. A few months into development, Twitter held its <a href="https://blog.twitter.com/2010/hack-week">first Hack Week</a> and the project exploded as developers of all skill levels jumped in without any external guidance. It served as the style guide for internal tools development at the company for over a year before its public release, and continues to do so today.</p> <p>Bootstrap was created at Twitter in mid-2010 by <a href="https://twitter.com/mdo">@mdo</a> and <a href="https://twitter.com/fat">@fat</a>. Prior to being an open-sourced framework, Bootstrap was known as <em>Twitter Blueprint</em>. A few months into development, Twitter held its <a href="https://blog.twitter.com/2010/hack-week">first Hack Week</a> and the project exploded as developers of all skill levels jumped in without any external guidance. It served as the style guide for internal tools development at the company for over a year before its public release, and continues to do so today.</p>
<p>Originally <a href="https://dev.twitter.com/blog/bootstrap-twitter">released</a> on <a href="https://twitter.com/mdo/statuses/104620039650557952"><time datetime="2011-08-19 11:25">Friday, August 19, 2011</time></a>, we've since had over <a href="https://github.com/twbs/bootstrap/releases">twenty releases</a>, including two major rewrites with v2 and v3. With Bootstrap 2, we added responsive functionality to the entire framework as an optional stylesheet. Building on that with Bootstrap 3, we rewrote the library once more to make it responsive by default with a mobile first approach.</p> <p>Originally <a href="https://dev.twitter.com/blog/bootstrap-twitter">released</a> on <a href="https://twitter.com/mdo/statuses/104620039650557952"><time datetime="2011-08-19 11:25">Friday, August 19, 2011</time></a>, we've since had over <a href="https://github.com/twbs/bootstrap/releases">twenty releases</a>, including two major rewrites with v2 and v3. With Bootstrap 2, we added responsive functionality to the entire framework as an optional stylesheet. Building on that with Bootstrap 3, we rewrote the library once more to make it responsive by default with a mobile first approach.</p>
...@@ -21,9 +20,8 @@ lead: "Learn about the history of Bootstrap, meet the core team, and check out t ...@@ -21,9 +20,8 @@ lead: "Learn about the history of Bootstrap, meet the core team, and check out t
<!-- Team <!-- Team
================================================== --> ================================================== -->
<div class="bs-docs-section"> <div class="bs-docs-section">
<div class="page-header"> <h1 id="team" class="page-header">Team</h1>
<h1 id="team">Team</h1>
</div>
<p class="lead">Bootstrap is maintained by the founding team and a small group of invaluable core contributors, with the massive support and involvement of our community.</p> <p class="lead">Bootstrap is maintained by the founding team and a small group of invaluable core contributors, with the massive support and involvement of our community.</p>
<h2 id="team-core">Core team</h2> <h2 id="team-core">Core team</h2>
...@@ -90,39 +88,62 @@ lead: "Learn about the history of Bootstrap, meet the core team, and check out t ...@@ -90,39 +88,62 @@ lead: "Learn about the history of Bootstrap, meet the core team, and check out t
</a> </a>
</div> </div>
</div> </div>
<p>The <a href="{{ site.sass_repo }}">official Sass port of Bootstrap</a> was created and is maintained by this team. It became part of Bootstrap's organization with v3.1.</p> <p>The <a href="{{ site.sass_repo }}">official Sass port of Bootstrap</a> was created and is maintained by this team. It became part of Bootstrap's organization with v3.1.0. Read the Sass <a href="https://github.com/twbs/bootstrap-sass/blob/master/CONTRIBUTING.md">contributing guidelines</a> for information on how the Sass port is developed.</p>
</div> </div>
<!-- Community <!-- Brand
================================================== --> ================================================== -->
<div class="bs-docs-section"> <div class="bs-docs-section">
<div class="page-header"> <h1 id="brand" class="page-header">Brand guidelines</h1>
<h1 id="community">Community</h1>
<p class="lead">Have a need for Bootstrap's brand resources? Great! We have only a few guidelines we follow, and in turn ask you to follow as well. These guidelines were inspired by MailChimp's <a href="http://mailchimp.com/about/brand-assets/" target="_blank">Brand Assets</a>.</p>
<h2>Mark and logo</h2>
<p>Use either the Bootstrap mark (a capital <strong>B</strong>) or the standard logo (just <strong>Bootstrap</strong>). It should always appear in Helvetica Neue Bold. <strong>Do not use the Twitter bird</strong> in association with Bootstrap.</p>
<div class="bs-brand-logos">
<div class="bs-brand-item">
<div class="bs-booticon bs-booticon-lg">B</div>
</div>
<div class="bs-brand-item inverse">
<div class="bs-booticon bs-booticon-lg bs-booticon-inverse">B</div>
</div>
</div>
<div class="bs-brand-logos">
<div class="bs-brand-item">
<h1>Bootstrap</h1>
</div>
<div class="bs-brand-item inverse">
<h1>Bootstrap</h1>
</div>
</div> </div>
<p class="lead">Stay up to date on the development of Bootstrap and reach out to the community with these helpful resources.</p>
<ul>
<li>Read and subscribe to <a href="http://blog.getbootstrap.com/">The Official Bootstrap Blog</a>.</li>
<li>Chat with fellow Bootstrappers using IRC in the <code>irc.freenode.net</code> server, in the <a href="irc://irc.freenode.net/#twitter-bootstrap">##twitter-bootstrap channel</a>.</li>
<li>Find inspiring examples of people building with Bootstrap at the <a href="http://expo.getbootstrap.com">Bootstrap Expo</a>.</li>
</ul>
<p>You can also follow <a href="https://twitter.com/twbootstrap">@twbootstrap on Twitter</a> for the latest gossip and awesome music videos.</p>
</div>
<h2>Name</h2>
<p>The project and framework should always be referred to as <strong>Bootstrap</strong>. No Twitter before it, no capital <em>s</em>, and no abbreviations except for one, a capital <strong>B</strong>.</p>
<div class="bs-brand-logos">
<div class="bs-brand-item">
<h3>Bootstrap</h3>
<span class="glyphicon glyphicon-ok"></span>
</div>
<div class="bs-brand-item">
<h3 class="text-muted">BootStrap</h3>
<span class="glyphicon glyphicon-remove"></span>
</div>
<div class="bs-brand-item">
<h3 class="text-muted">Twitter Bootstrap</h3>
<span class="glyphicon glyphicon-remove"></span>
</div>
</div>
<!-- Translations <h2>Colors</h2>
================================================== --> <p>Our docs and branding use a handful of primary colors to differentiate what <em>is</em> Bootstrap from what <em>is in</em> Bootstrap. In other words, if it's purple, it's representative of Bootstrap.</p>
<div class="bs-docs-section"> <div class="bs-brand">
<div class="page-header"> <div class="color-swatches">
<h1 id="translations">Translations</h1> <div class="color-swatch bs-purple"></div>
<div class="color-swatch bs-purple-light"></div>
<div class="color-swatch bs-purple-lighter"></div>
<div class="color-swatch bs-gray"></div>
</div>
</div> </div>
<p class="lead">Community members have translated Bootstrap's documentation into various languages. None are officially supported and may not always be up to date.</p>
<ul>
<li><a href="http://v3.bootcss.com/">Bootstrap 中文文档 (Chinese)</a></li>
<li><a href="http://www.oneskyapp.com/docs/bootstrap/ru">Bootstrap по-русски (Russian)</a></li>
<li><a href="http://www.oneskyapp.com/docs/bootstrap/es">Bootstrap en Español (Spanish)</a></li>
<li><a href="http://twbs.site-konstruktor.com.ua">Bootstrap ua Українською (Ukrainian)</a></li>
<li><a href="http://www.oneskyapp.com/docs/bootstrap/fr">Bootstrap en Français (French)</a></li>
</ul>
<p>Have another language to add, or perhaps a different or better translation? Let us know by <a href="https://github.com/twbs/bootstrap/issues/new">opening an issue</a>.</p>
</div> </div>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
.err { color: #AA0000; background-color: #FFAAAA } /* Error */ .err { color: #AA0000; background-color: #FFAAAA } /* Error */
.k { color: #006699; } /* Keyword */ .k { color: #006699; } /* Keyword */
.o { color: #555555 } /* Operator */ .o { color: #555555 } /* Operator */
.cm { color: #0099FF; font-style: italic } /* Comment.Multiline */ .cm { color: #999; } /* Comment.Multiline */ /* Edited to remove italics and make into comment */
.cp { color: #009999 } /* Comment.Preproc */ .cp { color: #009999 } /* Comment.Preproc */
.c1 { color: #999; } /* Comment.Single */ .c1 { color: #999; } /* Comment.Single */
.cs { color: #999; } /* Comment.Special */ .cs { color: #999; } /* Comment.Special */
......
...@@ -3,8 +3,8 @@ ...@@ -3,8 +3,8 @@
// ++++++++++++++++++++++++++++++++++++++++++ // ++++++++++++++++++++++++++++++++++++++++++
/*! /*!
* JavaScript for Bootstrap's docs (http://getbootstrap.com)
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
*
* Licensed under the Creative Commons Attribution 3.0 Unported License. For * Licensed under the Creative Commons Attribution 3.0 Unported License. For
* details, see http://creativecommons.org/licenses/by/3.0/. * details, see http://creativecommons.org/licenses/by/3.0/.
*/ */
...@@ -18,14 +18,13 @@ ...@@ -18,14 +18,13 @@
// //
// See Getting Started docs for more information // See Getting Started docs for more information
if (navigator.userAgent.match(/IEMobile\/10\.0/)) { if (navigator.userAgent.match(/IEMobile\/10\.0/)) {
var msViewportStyle = document.createElement('style'); var msViewportStyle = document.createElement('style')
msViewportStyle.appendChild( msViewportStyle.appendChild(
document.createTextNode( document.createTextNode(
'@-ms-viewport{width:auto!important}' '@-ms-viewport{width:auto!important}'
) )
); )
document.querySelector('head'). document.querySelector('head').appendChild(msViewportStyle)
appendChild(msViewportStyle);
} }
...@@ -36,7 +35,7 @@ ...@@ -36,7 +35,7 @@
$body.scrollspy({ $body.scrollspy({
target: '.bs-sidebar', target: '.bs-sidebar',
offset: navHeight // offset: navHeight
}) })
$window.on('load', function () { $window.on('load', function () {
...@@ -86,8 +85,7 @@ ...@@ -86,8 +85,7 @@
}) })
// popover demo // popover demo
$('[data-toggle=popover]') $('[data-toggle=popover]').popover()
.popover()
// button state demo // button state demo
$('#loading-example-btn') $('#loading-example-btn')
......
This diff is collapsed.
/*! /*!
* Bootstrap Customizer (http://getbootstrap.com/customize/)
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
* *
* Licensed under the Creative Commons Attribution 3.0 Unported License. For * Licensed under the Creative Commons Attribution 3.0 Unported License. For
* details, see http://creativecommons.org/licenses/by/3.0/. * details, see http://creativecommons.org/licenses/by/3.0/.
*/ */
/* jshint multistr:true */ /* jshint multistr: true */
window.onload = function () { // wait for load in a dumb way because B-0 window.onload = function () { // wait for load in a dumb way because B-0
var cw = '/*!\n' + var cw = '/*!\n' +
' * Bootstrap v3.0.3 (http://getbootstrap.com)\n' + ' * Bootstrap v3.1.0 (http://getbootstrap.com)\n' +
' * Copyright 2011-2014 Twitter, Inc.\n' + ' * Copyright 2011-2014 Twitter, Inc.\n' +
' * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n' + ' * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n' +
' */\n\n'; ' */\n\n'
function showError(msg, err) { function showError(msg, err) {
$('<div id="bsCustomizerAlert" class="bs-customizer-alert">\ $('<div id="bsCustomizerAlert" class="bs-customizer-alert">\
...@@ -39,9 +40,9 @@ window.onload = function () { // wait for load in a dumb way because B-0 ...@@ -39,9 +40,9 @@ window.onload = function () { // wait for load in a dumb way because B-0
} }
function getQueryParam(key) { function getQueryParam(key) {
key = key.replace(/[*+?^$.\[\]{}()|\\\/]/g, '\\$&'); // escape RegEx meta chars key = key.replace(/[*+?^$.\[\]{}()|\\\/]/g, '\\$&') // escape RegEx meta chars
var match = location.search.match(new RegExp('[?&]' + key + '=([^&]+)(&|$)')); var match = location.search.match(new RegExp('[?&]' + key + '=([^&]+)(&|$)'))
return match && decodeURIComponent(match[1].replace(/\+/g, ' ')); return match && decodeURIComponent(match[1].replace(/\+/g, ' '))
} }
function createGist(configJson) { function createGist(configJson) {
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
/* Blob.js
* A Blob implementation.
* 2013-12-27
*
* By Eli Grey, http://eligrey.com
* By Devin Samarin, https://github.com/eboyjr
* License: X11/MIT
* See LICENSE.md
*/
/*global self, unescape */
/*jslint bitwise: true, regexp: true, confusion: true, es5: true, vars: true, white: true,
plusplus: true */
/*! @source http://purl.eligrey.com/github/Blob.js/blob/master/Blob.js */
if (!(typeof Blob === "function" || typeof Blob === "object") || typeof URL === "undefined")
if ((typeof Blob === "function" || typeof Blob === "object") && typeof webkitURL !== "undefined") self.URL = webkitURL;
else var Blob = (function (view) {
"use strict";
var BlobBuilder = view.BlobBuilder || view.WebKitBlobBuilder || view.MozBlobBuilder || view.MSBlobBuilder || (function(view) {
var
get_class = function(object) {
return Object.prototype.toString.call(object).match(/^\[object\s(.*)\]$/)[1];
}
, FakeBlobBuilder = function BlobBuilder() {
this.data = [];
}
, FakeBlob = function Blob(data, type, encoding) {
this.data = data;
this.size = data.length;
this.type = type;
this.encoding = encoding;
}
, FBB_proto = FakeBlobBuilder.prototype
, FB_proto = FakeBlob.prototype
, FileReaderSync = view.FileReaderSync
, FileException = function(type) {
this.code = this[this.name = type];
}
, file_ex_codes = (
"NOT_FOUND_ERR SECURITY_ERR ABORT_ERR NOT_READABLE_ERR ENCODING_ERR "
+ "NO_MODIFICATION_ALLOWED_ERR INVALID_STATE_ERR SYNTAX_ERR"
).split(" ")
, file_ex_code = file_ex_codes.length
, real_URL = view.URL || view.webkitURL || view
, real_create_object_URL = real_URL.createObjectURL
, real_revoke_object_URL = real_URL.revokeObjectURL
, URL = real_URL
, btoa = view.btoa
, atob = view.atob
, ArrayBuffer = view.ArrayBuffer
, Uint8Array = view.Uint8Array
;
FakeBlob.fake = FB_proto.fake = true;
while (file_ex_code--) {
FileException.prototype[file_ex_codes[file_ex_code]] = file_ex_code + 1;
}
if (!real_URL.createObjectURL) {
URL = view.URL = {};
}
URL.createObjectURL = function(blob) {
var
type = blob.type
, data_URI_header
;
if (type === null) {
type = "application/octet-stream";
}
if (blob instanceof FakeBlob) {
data_URI_header = "data:" + type;
if (blob.encoding === "base64") {
return data_URI_header + ";base64," + blob.data;
} else if (blob.encoding === "URI") {
return data_URI_header + "," + decodeURIComponent(blob.data);
} if (btoa) {
return data_URI_header + ";base64," + btoa(blob.data);
} else {
return data_URI_header + "," + encodeURIComponent(blob.data);
}
} else if (real_create_object_URL) {
return real_create_object_URL.call(real_URL, blob);
}
};
URL.revokeObjectURL = function(object_URL) {
if (object_URL.substring(0, 5) !== "data:" && real_revoke_object_URL) {
real_revoke_object_URL.call(real_URL, object_URL);
}
};
FBB_proto.append = function(data/*, endings*/) {
var bb = this.data;
// decode data to a binary string
if (Uint8Array && (data instanceof ArrayBuffer || data instanceof Uint8Array)) {
var
str = ""
, buf = new Uint8Array(data)
, i = 0
, buf_len = buf.length
;
for (; i < buf_len; i++) {
str += String.fromCharCode(buf[i]);
}
bb.push(str);
} else if (get_class(data) === "Blob" || get_class(data) === "File") {
if (FileReaderSync) {
var fr = new FileReaderSync;
bb.push(fr.readAsBinaryString(data));
} else {
// async FileReader won't work as BlobBuilder is sync
throw new FileException("NOT_READABLE_ERR");
}
} else if (data instanceof FakeBlob) {
if (data.encoding === "base64" && atob) {
bb.push(atob(data.data));
} else if (data.encoding === "URI") {
bb.push(decodeURIComponent(data.data));
} else if (data.encoding === "raw") {
bb.push(data.data);
}
} else {
if (typeof data !== "string") {
data += ""; // convert unsupported types to strings
}
// decode UTF-16 to binary string
bb.push(unescape(encodeURIComponent(data)));
}
};
FBB_proto.getBlob = function(type) {
if (!arguments.length) {
type = null;
}
return new FakeBlob(this.data.join(""), type, "raw");
};
FBB_proto.toString = function() {
return "[object BlobBuilder]";
};
FB_proto.slice = function(start, end, type) {
var args = arguments.length;
if (args < 3) {
type = null;
}
return new FakeBlob(
this.data.slice(start, args > 1 ? end : this.data.length)
, type
, this.encoding
);
};
FB_proto.toString = function() {
return "[object Blob]";
};
return FakeBlobBuilder;
}(view));
return function Blob(blobParts, options) {
var type = options ? (options.type || "") : "";
var builder = new BlobBuilder();
if (blobParts) {
for (var i = 0, len = blobParts.length; i < len; i++) {
builder.append(blobParts[i]);
}
}
return builder.getBlob(type);
};
}(typeof self !== "undefined" && self || typeof window !== "undefined" && window || this.content || this));
/* Blob.js
* A Blob implementation.
* 2013-06-20
*
* By Eli Grey, http://eligrey.com
* By Devin Samarin, https://github.com/eboyjr
* License: X11/MIT
* See LICENSE.md
*/
/*global self, unescape */
/*jslint bitwise: true, regexp: true, confusion: true, es5: true, vars: true, white: true,
plusplus: true */
/*! @source http://purl.eligrey.com/github/Blob.js/blob/master/Blob.js */
if (!(typeof Blob === "function" || typeof Blob === "object") || typeof URL === "undefined")
if ((typeof Blob === "function" || typeof Blob === "object") && typeof webkitURL !== "undefined") self.URL = webkitURL;
else var Blob = (function (view) {
"use strict";
var BlobBuilder = view.BlobBuilder || view.WebKitBlobBuilder || view.MozBlobBuilder || view.MSBlobBuilder || (function(view) {
var
get_class = function(object) {
return Object.prototype.toString.call(object).match(/^\[object\s(.*)\]$/)[1];
}
, FakeBlobBuilder = function BlobBuilder() {
this.data = [];
}
, FakeBlob = function Blob(data, type, encoding) {
this.data = data;
this.size = data.length;
this.type = type;
this.encoding = encoding;
}
, FBB_proto = FakeBlobBuilder.prototype
, FB_proto = FakeBlob.prototype
, FileReaderSync = view.FileReaderSync
, FileException = function(type) {
this.code = this[this.name = type];
}
, file_ex_codes = (
"NOT_FOUND_ERR SECURITY_ERR ABORT_ERR NOT_READABLE_ERR ENCODING_ERR "
+ "NO_MODIFICATION_ALLOWED_ERR INVALID_STATE_ERR SYNTAX_ERR"
).split(" ")
, file_ex_code = file_ex_codes.length
, real_URL = view.URL || view.webkitURL || view
, real_create_object_URL = real_URL.createObjectURL
, real_revoke_object_URL = real_URL.revokeObjectURL
, URL = real_URL
, btoa = view.btoa
, atob = view.atob
, ArrayBuffer = view.ArrayBuffer
, Uint8Array = view.Uint8Array
;
FakeBlob.fake = FB_proto.fake = true;
while (file_ex_code--) {
FileException.prototype[file_ex_codes[file_ex_code]] = file_ex_code + 1;
}
if (!real_URL.createObjectURL) {
URL = view.URL = {};
}
URL.createObjectURL = function(blob) {
var
type = blob.type
, data_URI_header
;
if (type === null) {
type = "application/octet-stream";
}
if (blob instanceof FakeBlob) {
data_URI_header = "data:" + type;
if (blob.encoding === "base64") {
return data_URI_header + ";base64," + blob.data;
} else if (blob.encoding === "URI") {
return data_URI_header + "," + decodeURIComponent(blob.data);
} if (btoa) {
return data_URI_header + ";base64," + btoa(blob.data);
} else {
return data_URI_header + "," + encodeURIComponent(blob.data);
}
} else if (real_create_object_URL) {
return real_create_object_URL.call(real_URL, blob);
}
};
URL.revokeObjectURL = function(object_URL) {
if (object_URL.substring(0, 5) !== "data:" && real_revoke_object_URL) {
real_revoke_object_URL.call(real_URL, object_URL);
}
};
FBB_proto.append = function(data/*, endings*/) {
var bb = this.data;
// decode data to a binary string
if (Uint8Array && (data instanceof ArrayBuffer || data instanceof Uint8Array)) {
var
str = ""
, buf = new Uint8Array(data)
, i = 0
, buf_len = buf.length
;
for (; i < buf_len; i++) {
str += String.fromCharCode(buf[i]);
}
bb.push(str);
} else if (get_class(data) === "Blob" || get_class(data) === "File") {
if (FileReaderSync) {
var fr = new FileReaderSync;
bb.push(fr.readAsBinaryString(data));
} else {
// async FileReader won't work as BlobBuilder is sync
throw new FileException("NOT_READABLE_ERR");
}
} else if (data instanceof FakeBlob) {
if (data.encoding === "base64" && atob) {
bb.push(atob(data.data));
} else if (data.encoding === "URI") {
bb.push(decodeURIComponent(data.data));
} else if (data.encoding === "raw") {
bb.push(data.data);
}
} else {
if (typeof data !== "string") {
data += ""; // convert unsupported types to strings
}
// decode UTF-16 to binary string
bb.push(unescape(encodeURIComponent(data)));
}
};
FBB_proto.getBlob = function(type) {
if (!arguments.length) {
type = null;
}
return new FakeBlob(this.data.join(""), type, "raw");
};
FBB_proto.toString = function() {
return "[object BlobBuilder]";
};
FB_proto.slice = function(start, end, type) {
var args = arguments.length;
if (args < 3) {
type = null;
}
return new FakeBlob(
this.data.slice(start, args > 1 ? end : this.data.length)
, type
, this.encoding
);
};
FB_proto.toString = function() {
return "[object Blob]";
};
return FakeBlobBuilder;
}(view));
return function Blob(blobParts, options) {
var type = options ? (options.type || "") : "";
var builder = new BlobBuilder();
if (blobParts) {
for (var i = 0, len = blobParts.length; i < len; i++) {
builder.append(blobParts[i]);
}
}
return builder.getBlob(type);
};
}(self));
/* FileSaver.js /* FileSaver.js
* A saveAs() FileSaver implementation. * A saveAs() FileSaver implementation.
* 2013-10-21 * 2014-01-24
* *
* By Eli Grey, http://eligrey.com * By Eli Grey, http://eligrey.com
* License: X11/MIT * License: X11/MIT
...@@ -181,9 +14,15 @@ else var Blob = (function (view) { ...@@ -181,9 +14,15 @@ else var Blob = (function (view) {
/*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */ /*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */
var saveAs = saveAs var saveAs = saveAs
|| (typeof navigator !== 'undefined' && navigator.msSaveOrOpenBlob && navigator.msSaveOrOpenBlob.bind(navigator)) // IE 10+ (native saveAs)
|| (navigator.msSaveOrOpenBlob && navigator.msSaveOrOpenBlob.bind(navigator))
// Everyone else
|| (function(view) { || (function(view) {
"use strict"; "use strict";
// IE <10 is explicitly unsupported
if (/MSIE [1-9]\./.test(navigator.userAgent)) {
return;
}
var var
doc = view.document doc = view.document
// only get URL when necessary in case BlobBuilder.js hasn't overridden it yet // only get URL when necessary in case BlobBuilder.js hasn't overridden it yet
...@@ -391,9 +230,13 @@ var saveAs = saveAs ...@@ -391,9 +230,13 @@ var saveAs = saveAs
view.addEventListener("unload", process_deletion_queue, false); view.addEventListener("unload", process_deletion_queue, false);
return saveAs; return saveAs;
}(this.self || this.window || this.content)); }(
typeof self !== "undefined" && self
|| typeof window !== "undefined" && window
|| this.content
));
// `self` is undefined in Firefox for Android content script context // `self` is undefined in Firefox for Android content script context
// while `this` is nsIContentFrameMessageManager // while `this` is nsIContentFrameMessageManager
// with an attribute `content` that corresponds to the window // with an attribute `content` that corresponds to the window
if (typeof module !== 'undefined') module.exports = saveAs; if (typeof module !== "undefined") module.exports = saveAs;
This diff is collapsed.
This diff is collapsed.
/** @license uglifyweb Copyright (c) 2011, The Dojo Foundation All Rights Reserved. /*! @license uglifyweb Copyright (c) 2011, The Dojo Foundation All Rights Reserved.
* The parts that are unique to this repo (not much, just some wrapper code) are * The parts that are unique to this repo (not much, just some wrapper code) are
* released under the new BSD and MIT licenses. * released under the new BSD and MIT licenses.
* *
......
This diff is collapsed.
This diff is collapsed.
...@@ -2,17 +2,16 @@ ...@@ -2,17 +2,16 @@
layout: default layout: default
title: Customize and download title: Customize and download
slug: customize slug: customize
lead: Customize Bootstrap's components, LESS variables, and jQuery plugins to get your very own version. lead: Customize Bootstrap's components, Less variables, and jQuery plugins to get your very own version.
--- ---
<!-- Customizer form --> <!-- Customizer form -->
<form class="bs-customizer" role="form"> <form class="bs-customizer" role="form">
<div class="bs-docs-section" id="less-section"> <div class="bs-docs-section" id="less-section">
<div class="page-header"> <button class="btn btn-default toggle" type="button">Toggle all</button>
<button class="btn btn-default toggle" type="button">Toggle all</button> <h1 id="less" class="page-header">Less files</h1>
<h1 id="less">LESS files</h1>
</div> <p class="lead">Choose which Less files to compile into your custom build of Bootstrap. Not sure which files to use? Read through the <a href="../css/">CSS</a> and <a href="../components/">Components</a> pages in the docs.</p>
<p class="lead">Choose which LESS files to compile into your custom build of Bootstrap. Not sure which files to use? Read through the <a href="../css/">CSS</a> and <a href="../components/">Components</a> pages in the docs.</p>
<div class="row"> <div class="row">
<div class="col-xs-6 col-sm-4"> <div class="col-xs-6 col-sm-4">
...@@ -71,13 +70,13 @@ lead: Customize Bootstrap's components, LESS variables, and jQuery plugins to ge ...@@ -71,13 +70,13 @@ lead: Customize Bootstrap's components, LESS variables, and jQuery plugins to ge
</div> </div>
<div class="checkbox"> <div class="checkbox">
<label> <label>
<input type="checkbox" checked value="button-groups.less" data-dependency="buttons.less"> <input type="checkbox" checked value="button-groups.less" data-dependencies="buttons.less">
Button groups Button groups
</label> </label>
</div> </div>
<div class="checkbox"> <div class="checkbox">
<label> <label>
<input type="checkbox" checked value="input-groups.less" data-dependency="forms.less"> <input type="checkbox" checked value="input-groups.less" data-dependencies="forms.less">
Input groups Input groups
</label> </label>
</div> </div>
...@@ -238,10 +237,9 @@ lead: Customize Bootstrap's components, LESS variables, and jQuery plugins to ge ...@@ -238,10 +237,9 @@ lead: Customize Bootstrap's components, LESS variables, and jQuery plugins to ge
<div class="bs-docs-section" id="plugin-section"> <div class="bs-docs-section" id="plugin-section">
<div class="page-header"> <button class="btn btn-default toggle" type="button">Toggle all</button>
<button class="btn btn-default toggle" type="button">Toggle all</button> <h1 id="plugins" class="page-header">jQuery plugins</h1>
<h1 id="plugins">jQuery plugins</h1>
</div>
<p class="lead">Choose which jQuery plugins should be included in your custom JavaScript files. Unsure what to include? Read the <a href="../javascript/">JavaScript</a> page in the docs.</p> <p class="lead">Choose which jQuery plugins should be included in your custom JavaScript files. Unsure what to include? Read the <a href="../javascript/">JavaScript</a> page in the docs.</p>
<div class="row"> <div class="row">
<div class="col-lg-6"> <div class="col-lg-6">
...@@ -284,7 +282,7 @@ lead: Customize Bootstrap's components, LESS variables, and jQuery plugins to ge ...@@ -284,7 +282,7 @@ lead: Customize Bootstrap's components, LESS variables, and jQuery plugins to ge
</div> </div>
<div class="checkbox"> <div class="checkbox">
<label> <label>
<input type="checkbox" checked value="popover.js" data-dependency="tooltip.js"> <input type="checkbox" checked value="popover.js" data-dependencies="tooltip.js">
Popovers <small>(requires Tooltips)</small> Popovers <small>(requires Tooltips)</small>
</label> </label>
</div> </div>
...@@ -338,18 +336,18 @@ lead: Customize Bootstrap's components, LESS variables, and jQuery plugins to ge ...@@ -338,18 +336,18 @@ lead: Customize Bootstrap's components, LESS variables, and jQuery plugins to ge
<div class="bs-docs-section" id="less-variables-section"> <div class="bs-docs-section" id="less-variables-section">
<div class="page-header"> <button class="btn btn-default toggle" type="button">Reset to defaults</button>
<button class="btn btn-default toggle" type="button">Reset to defaults</button> <h1 id="less-variables" class="page-header">Less variables</h1>
<h1 id="less-variables">LESS variables</h1>
</div> <p class="lead">Customize Less variables to define colors, sizes and more inside your custom CSS stylesheets.</p>
<p class="lead">Customize LESS variables to define colors, sizes and more inside your custom CSS stylesheets.</p>
{% include customizer-variables.html %} {% include customizer-variables.html %}
</div> </div>
<div class="bs-docs-section"> <div class="bs-docs-section">
<div class="page-header"> <h1 id="download" class="page-header">Download</h1>
<h1 id="download">Download</h1>
</div>
<p class="lead">Hooray! Your custom version of Bootstrap is now ready to be compiled. Just click the button below to finish the process.</p> <p class="lead">Hooray! Your custom version of Bootstrap is now ready to be compiled. Just click the button below to finish the process.</p>
<div class="bs-customize-download"> <div class="bs-customize-download">
<button type="submit" id="btn-compile" class="btn btn-block btn-lg btn-outline" onclick="_gaq.push(['_trackEvent', 'Customize', 'Download', 'Customize and Download']);">Compile and Download</button> <button type="submit" id="btn-compile" class="btn btn-block btn-lg btn-outline" onclick="_gaq.push(['_trackEvent', 'Customize', 'Download', 'Customize and Download']);">Compile and Download</button>
......
This diff was suppressed by a .gitattributes entry.
/*! /*!
* Bootstrap v3.0.3 (http://getbootstrap.com) * Bootstrap v3.1.0 (http://getbootstrap.com)
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/ */
......
This diff was suppressed by a .gitattributes entry.
This diff is collapsed.
This diff is collapsed.
...@@ -13,10 +13,10 @@ h3, .h3, ...@@ -13,10 +13,10 @@ h3, .h3,
h4, .h4, h4, .h4,
h5, .h5, h5, .h5,
h6, .h6 { h6, .h6 {
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;; margin-top: 0;
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-weight: normal; font-weight: normal;
color: #333; color: #333;
margin-top: 0;
} }
...@@ -41,9 +41,6 @@ h6, .h6 { ...@@ -41,9 +41,6 @@ h6, .h6 {
} }
/* Nav links */ /* Nav links */
.blog-nav {
}
.blog-nav-item { .blog-nav-item {
position: relative; position: relative;
display: inline-block; display: inline-block;
...@@ -65,15 +62,14 @@ h6, .h6 { ...@@ -65,15 +62,14 @@ h6, .h6 {
position: absolute; position: absolute;
bottom: 0; bottom: 0;
left: 50%; left: 50%;
display: block;
content: " ";
width: 0; width: 0;
height: 0; height: 0;
margin-left: -5px; margin-left: -5px;
vertical-align: middle; vertical-align: middle;
content: " ";
border-right: 5px solid transparent; border-right: 5px solid transparent;
border-left: 5px solid transparent;
border-bottom: 5px solid; border-bottom: 5px solid;
border-left: 5px solid transparent;
} }
...@@ -165,4 +161,3 @@ h6, .h6 { ...@@ -165,4 +161,3 @@ h6, .h6 {
background-color: #f9f9f9; background-color: #f9f9f9;
border-top: 1px solid #e5e5e5; border-top: 1px solid #e5e5e5;
} }
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content=""> <meta name="description" content="">
<meta name="author" content=""> <meta name="author" content="">
<link rel="shortcut icon" href="../../assets/ico/favicon.ico"> <link rel="shortcut icon" href="../../assets/ico/favicon.ico">
...@@ -164,8 +164,8 @@ ...@@ -164,8 +164,8 @@
<!-- Bootstrap core JavaScript <!-- Bootstrap core JavaScript
================================================== --> ================================================== -->
<!-- Placed at the end of the document so the pages load faster --> <!-- Placed at the end of the document so the pages load faster -->
<script src="https://code.jquery.com/jquery-1.10.2.min.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="../../dist/js/bootstrap.min.js"></script> <script src="../../dist/js/bootstrap.min.js"></script>
<script src="../../assets/js/holder.js"></script> <script src="../../assets/js/docs.min.js"></script>
</body> </body>
</html> </html>
...@@ -16,19 +16,19 @@ body { ...@@ -16,19 +16,19 @@ body {
.navbar-wrapper { .navbar-wrapper {
position: absolute; position: absolute;
top: 0; top: 0;
left: 0;
right: 0; right: 0;
left: 0;
z-index: 20; z-index: 20;
} }
/* Flip around the padding for proper display in narrow viewports */ /* Flip around the padding for proper display in narrow viewports */
.navbar-wrapper .container { .navbar-wrapper .container {
padding-left: 0;
padding-right: 0; padding-right: 0;
padding-left: 0;
} }
.navbar-wrapper .navbar { .navbar-wrapper .navbar {
padding-left: 15px;
padding-right: 15px; padding-right: 15px;
padding-left: 15px;
} }
...@@ -65,21 +65,21 @@ body { ...@@ -65,21 +65,21 @@ body {
/* Pad the edges of the mobile views a bit */ /* Pad the edges of the mobile views a bit */
.marketing { .marketing {
padding-left: 15px;
padding-right: 15px; padding-right: 15px;
padding-left: 15px;
} }
/* Center align the text within the three columns below the carousel */ /* Center align the text within the three columns below the carousel */
.marketing .col-lg-4 { .marketing .col-lg-4 {
text-align: center;
margin-bottom: 20px; margin-bottom: 20px;
text-align: center;
} }
.marketing h2 { .marketing h2 {
font-weight: normal; font-weight: normal;
} }
.marketing .col-lg-4 p { .marketing .col-lg-4 p {
margin-left: 10px;
margin-right: 10px; margin-right: 10px;
margin-left: 10px;
} }
...@@ -106,8 +106,8 @@ body { ...@@ -106,8 +106,8 @@ body {
/* Remove the edge padding needed for mobile */ /* Remove the edge padding needed for mobile */
.marketing { .marketing {
padding-left: 0;
padding-right: 0; padding-right: 0;
padding-left: 0;
} }
/* Navbar positioning foo */ /* Navbar positioning foo */
...@@ -115,12 +115,12 @@ body { ...@@ -115,12 +115,12 @@ body {
margin-top: 20px; margin-top: 20px;
} }
.navbar-wrapper .container { .navbar-wrapper .container {
padding-left: 15px;
padding-right: 15px; padding-right: 15px;
padding-left: 15px;
} }
.navbar-wrapper .navbar { .navbar-wrapper .navbar {
padding-left: 0;
padding-right: 0; padding-right: 0;
padding-left: 0;
} }
/* The navbar becomes detached from the top, so we round the corners */ /* The navbar becomes detached from the top, so we round the corners */
...@@ -138,7 +138,6 @@ body { ...@@ -138,7 +138,6 @@ body {
.featurette-heading { .featurette-heading {
font-size: 50px; font-size: 50px;
} }
} }
@media (min-width: 992px) { @media (min-width: 992px) {
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content=""> <meta name="description" content="">
<meta name="author" content=""> <meta name="author" content="">
<link rel="shortcut icon" href="../../assets/ico/favicon.ico"> <link rel="shortcut icon" href="../../assets/ico/favicon.ico">
...@@ -199,8 +199,8 @@ ...@@ -199,8 +199,8 @@
<!-- Bootstrap core JavaScript <!-- Bootstrap core JavaScript
================================================== --> ================================================== -->
<!-- Placed at the end of the document so the pages load faster --> <!-- Placed at the end of the document so the pages load faster -->
<script src="https://code.jquery.com/jquery-1.10.2.min.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="../../dist/js/bootstrap.min.js"></script> <script src="../../dist/js/bootstrap.min.js"></script>
<script src="../../assets/js/holder.js"></script> <script src="../../assets/js/docs.min.js"></script>
</body> </body>
</html> </html>
...@@ -48,8 +48,8 @@ body { ...@@ -48,8 +48,8 @@ body {
vertical-align: top; vertical-align: top;
} }
.cover-container { .cover-container {
margin-left: auto;
margin-right: auto; margin-right: auto;
margin-left: auto;
} }
/* Padding for spacing */ /* Padding for spacing */
...@@ -73,8 +73,8 @@ body { ...@@ -73,8 +73,8 @@ body {
margin-left: 20px; margin-left: 20px;
} }
.masthead-nav > li > a { .masthead-nav > li > a {
padding-left: 0;
padding-right: 0; padding-right: 0;
padding-left: 0;
font-size: 16px; font-size: 16px;
font-weight: bold; font-weight: bold;
color: #fff; /* IE8 proofing */ color: #fff; /* IE8 proofing */
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content=""> <meta name="description" content="">
<meta name="author" content=""> <meta name="author" content="">
<link rel="shortcut icon" href="../../assets/ico/favicon.ico"> <link rel="shortcut icon" href="../../assets/ico/favicon.ico">
...@@ -68,8 +68,8 @@ ...@@ -68,8 +68,8 @@
<!-- Bootstrap core JavaScript <!-- Bootstrap core JavaScript
================================================== --> ================================================== -->
<!-- Placed at the end of the document so the pages load faster --> <!-- Placed at the end of the document so the pages load faster -->
<script src="https://code.jquery.com/jquery-1.10.2.min.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="../../dist/js/bootstrap.min.js"></script> <script src="../../dist/js/bootstrap.min.js"></script>
<script src="../../assets/js/holder.js"></script> <script src="../../assets/js/docs.min.js"></script>
</body> </body>
</html> </html>
...@@ -29,12 +29,14 @@ body { ...@@ -29,12 +29,14 @@ body {
@media (min-width: 768px) { @media (min-width: 768px) {
.sidebar { .sidebar {
position: fixed; position: fixed;
top: 0; top: 51px;
left: 0;
bottom: 0; bottom: 0;
left: 0;
z-index: 1000; z-index: 1000;
display: block; display: block;
padding: 70px 20px 20px; padding: 20px;
overflow-x: hidden;
overflow-y: auto; /* Scrollable contents if viewport is shorter than content. */
background-color: #f5f5f5; background-color: #f5f5f5;
border-right: 1px solid #eee; border-right: 1px solid #eee;
} }
...@@ -42,13 +44,13 @@ body { ...@@ -42,13 +44,13 @@ body {
/* Sidebar navigation */ /* Sidebar navigation */
.nav-sidebar { .nav-sidebar {
margin-left: -20px;
margin-right: -21px; /* 20px padding + 1px border */ margin-right: -21px; /* 20px padding + 1px border */
margin-bottom: 20px; margin-bottom: 20px;
margin-left: -20px;
} }
.nav-sidebar > li > a { .nav-sidebar > li > a {
padding-left: 20px;
padding-right: 20px; padding-right: 20px;
padding-left: 20px;
} }
.nav-sidebar > .active > a { .nav-sidebar > .active > a {
color: #fff; color: #fff;
...@@ -65,8 +67,8 @@ body { ...@@ -65,8 +67,8 @@ body {
} }
@media (min-width: 768px) { @media (min-width: 768px) {
.main { .main {
padding-right: 40px;
padding-left: 40px; padding-left: 40px;
pading-right: 40px;
} }
} }
.main .page-header { .main .page-header {
...@@ -89,5 +91,6 @@ body { ...@@ -89,5 +91,6 @@ body {
margin-bottom: 20px; margin-bottom: 20px;
} }
.placeholder img { .placeholder img {
display: inline-block;
border-radius: 50%; border-radius: 50%;
} }
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content=""> <meta name="description" content="">
<meta name="author" content=""> <meta name="author" content="">
<link rel="shortcut icon" href="../../assets/ico/favicon.ico"> <link rel="shortcut icon" href="../../assets/ico/favicon.ico">
...@@ -236,8 +236,8 @@ ...@@ -236,8 +236,8 @@
<!-- Bootstrap core JavaScript <!-- Bootstrap core JavaScript
================================================== --> ================================================== -->
<!-- Placed at the end of the document so the pages load faster --> <!-- Placed at the end of the document so the pages load faster -->
<script src="https://code.jquery.com/jquery-1.10.2.min.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="../../dist/js/bootstrap.min.js"></script> <script src="../../dist/js/bootstrap.min.js"></script>
<script src="../../assets/js/holder.js"></script> <script src="../../assets/js/docs.min.js"></script>
</body> </body>
</html> </html>
.container { .container {
padding-left: 15px;
padding-right: 15px; padding-right: 15px;
padding-left: 15px;
} }
h4 { h4 {
...@@ -17,12 +17,12 @@ h4 { ...@@ -17,12 +17,12 @@ h4 {
padding-top: 15px; padding-top: 15px;
padding-bottom: 15px; padding-bottom: 15px;
background-color: #eee; background-color: #eee;
border: 1px solid #ddd;
background-color: rgba(86,61,124,.15); background-color: rgba(86,61,124,.15);
border: 1px solid #ddd;
border: 1px solid rgba(86,61,124,.2); border: 1px solid rgba(86,61,124,.2);
} }
hr { hr {
margin-top: 40px; margin-top: 40px;
margin-bottom: 40px; margin-bottom: 40px;
} }
\ No newline at end of file
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content=""> <meta name="description" content="">
<meta name="author" content=""> <meta name="author" content="">
<link rel="shortcut icon" href="../../assets/ico/favicon.ico"> <link rel="shortcut icon" href="../../assets/ico/favicon.ico">
...@@ -63,7 +63,7 @@ ...@@ -63,7 +63,7 @@
<hr> <hr>
<h3>Two columns with two nested columns</h3> <h3>Two columns with two nested columns</h3>
<p>Per the documentation, nesting is easy—just put a row of columns within an existing row. This gives you two columns <strong>starting at desktops and scaling to large desktops</strong>, with another two (equal widths) within the larger column.</p> <p>Per the documentation, nesting is easy—just put a row of columns within an existing column. This gives you two columns <strong>starting at desktops and scaling to large desktops</strong>, with another two (equal widths) within the larger column.</p>
<p>At mobile device sizes, tablets and down, these columns and their nested columns will stack.</p> <p>At mobile device sizes, tablets and down, these columns and their nested columns will stack.</p>
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content=""> <meta name="description" content="">
<meta name="author" content=""> <meta name="author" content="">
<link rel="shortcut icon" href="../../assets/ico/favicon.ico"> <link rel="shortcut icon" href="../../assets/ico/favicon.ico">
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -4,4 +4,4 @@ body { ...@@ -4,4 +4,4 @@ body {
.navbar-static-top { .navbar-static-top {
margin-bottom: 19px; margin-bottom: 19px;
} }
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
docs/examples/screenshots/carousel.jpg

80.4 KB | W: | H:

docs/examples/screenshots/carousel.jpg

80.3 KB | W: | H:

docs/examples/screenshots/carousel.jpg
docs/examples/screenshots/carousel.jpg
docs/examples/screenshots/carousel.jpg
docs/examples/screenshots/carousel.jpg
  • 2-up
  • Swipe
  • Onion skin
docs/examples/screenshots/grid.jpg

97.8 KB | W: | H:

docs/examples/screenshots/grid.jpg

97.6 KB | W: | H:

docs/examples/screenshots/grid.jpg
docs/examples/screenshots/grid.jpg
docs/examples/screenshots/grid.jpg
docs/examples/screenshots/grid.jpg
  • 2-up
  • Swipe
  • Onion skin
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment