Commit 11a835f5 authored by Mark Otto's avatar Mark Otto
Browse files

Merge branch 'master' into equal-height-experiment

parents b5739694 9863344e
Showing with 112 additions and 65 deletions
+112 -65
...@@ -4,14 +4,15 @@ node_js: ...@@ -4,14 +4,15 @@ node_js:
before_install: before_install:
- time sudo pip install --use-mirrors -r test-infra/requirements.txt - time sudo pip install --use-mirrors -r test-infra/requirements.txt
- rvm use 1.9.3 --fuzzy - rvm use 1.9.3 --fuzzy
- if [ "$TWBS_TEST" = validate-html ]; then echo "ruby=$(basename $(rvm gemdir)) jekyll=$JEKYLL_VERSION" > pseudo_Gemfile.lock; fi - export GEMDIR=$(rvm gemdir)
- if [ "$TWBS_TEST" = validate-html ]; then echo "ruby=$(basename $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 'npm packages' test-infra/npm-shrinkwrap.canonical.json ./node_modules || time ./test-infra/uncached-npm-install.sh - ./test-infra/s3_cache.py download npm-modules
- 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 ./test-infra/s3_cache.py download rubygems; fi
after_script: after_script:
- 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" = core ]; then ./test-infra/s3_cache.py upload npm-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 ./test-infra/s3_cache.py upload rubygems; fi
env: env:
global: global:
- JEKYLL_VERSION: 1.5.0 - JEKYLL_VERSION: 1.5.0
......
...@@ -78,6 +78,9 @@ module.exports = function (grunt) { ...@@ -78,6 +78,9 @@ module.exports = function (grunt) {
src: '<%= jshint.test.src %>' src: '<%= jshint.test.src %>'
}, },
assets: { assets: {
options: {
requireCamelCaseOrUpperCaseIdentifiers: null
},
src: '<%= jshint.assets.src %>' src: '<%= jshint.assets.src %>'
} }
}, },
......
# [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) # [Bootstrap](http://getbootstrap.com) [![Bower version](https://badge.fury.io/bo/bootstrap.svg)](http://badge.fury.io/bo/bootstrap) [![Build Status](https://secure.travis-ci.org/twbs/bootstrap.svg)](http://travis-ci.org/twbs/bootstrap) [![devDependency Status](https://david-dm.org/twbs/bootstrap/dev-status.svg?theme=.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.
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/ */
/*! normalize.css v3.0.0 | MIT License | git.io/normalize */ /*! normalize.css v3.0.1 | MIT License | git.io/normalize */
html { html {
font-family: sans-serif; font-family: sans-serif;
...@@ -6684,7 +6684,7 @@ button.close { ...@@ -6684,7 +6684,7 @@ button.close {
.tooltip { .tooltip {
position: absolute; position: absolute;
z-index: 1030; z-index: 1070;
display: block; display: block;
font-size: 12px; font-size: 12px;
line-height: 1.4; line-height: 1.4;
...@@ -6800,7 +6800,7 @@ button.close { ...@@ -6800,7 +6800,7 @@ button.close {
position: absolute; position: absolute;
top: 0; top: 0;
right: 0; right: 0;
z-index: 1010; z-index: 1060;
display: none; display: none;
max-width: 276px; max-width: 276px;
padding: 1px; padding: 1px;
...@@ -7053,11 +7053,13 @@ button.close { ...@@ -7053,11 +7053,13 @@ button.close {
.carousel-control .icon-prev, .carousel-control .icon-prev,
.carousel-control .glyphicon-chevron-left { .carousel-control .glyphicon-chevron-left {
right: 50%; right: 50%;
margin-right: -10px;
} }
.carousel-control .icon-next, .carousel-control .icon-next,
.carousel-control .glyphicon-chevron-right { .carousel-control .glyphicon-chevron-right {
left: 50%; left: 50%;
margin-left: -10px;
} }
.carousel-control .icon-prev, .carousel-control .icon-prev,
...@@ -7065,7 +7067,6 @@ button.close { ...@@ -7065,7 +7067,6 @@ button.close {
width: 20px; width: 20px;
height: 20px; height: 20px;
margin-top: -10px; margin-top: -10px;
margin-right: -10px;
font-family: serif; font-family: serif;
} }
...@@ -7134,10 +7135,19 @@ button.close { ...@@ -7134,10 +7135,19 @@ button.close {
width: 30px; width: 30px;
height: 30px; height: 30px;
margin-top: -15px; margin-top: -15px;
margin-right: -15px;
font-size: 30px; font-size: 30px;
} }
.carousel-control .glyphicon-chevron-left,
.carousel-control .icon-prev {
margin-right: -15px;
}
.carousel-control .glyphicon-chevron-right,
.carousel-control .icon-next {
margin-left: -15px;
}
.carousel-caption { .carousel-caption {
right: 20%; right: 20%;
left: 20%; left: 20%;
......
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/ */
/*! normalize.css v3.0.0 | MIT License | git.io/normalize */ /*! normalize.css v3.0.1 | MIT License | git.io/normalize */
html { html {
font-family: sans-serif; font-family: sans-serif;
-webkit-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;
...@@ -5399,7 +5399,7 @@ button.close { ...@@ -5399,7 +5399,7 @@ button.close {
} }
.tooltip { .tooltip {
position: absolute; position: absolute;
z-index: 1030; z-index: 1070;
display: block; display: block;
font-size: 12px; font-size: 12px;
line-height: 1.4; line-height: 1.4;
...@@ -5499,7 +5499,7 @@ button.close { ...@@ -5499,7 +5499,7 @@ button.close {
position: absolute; position: absolute;
top: 0; top: 0;
left: 0; left: 0;
z-index: 1010; z-index: 1060;
display: none; display: none;
max-width: 276px; max-width: 276px;
padding: 1px; padding: 1px;
...@@ -5717,17 +5717,18 @@ button.close { ...@@ -5717,17 +5717,18 @@ button.close {
.carousel-control .icon-prev, .carousel-control .icon-prev,
.carousel-control .glyphicon-chevron-left { .carousel-control .glyphicon-chevron-left {
left: 50%; left: 50%;
margin-left: -10px;
} }
.carousel-control .icon-next, .carousel-control .icon-next,
.carousel-control .glyphicon-chevron-right { .carousel-control .glyphicon-chevron-right {
right: 50%; right: 50%;
margin-right: -10px;
} }
.carousel-control .icon-prev, .carousel-control .icon-prev,
.carousel-control .icon-next { .carousel-control .icon-next {
width: 20px; width: 20px;
height: 20px; height: 20px;
margin-top: -10px; margin-top: -10px;
margin-left: -10px;
font-family: serif; font-family: serif;
} }
.carousel-control .icon-prev:before { .carousel-control .icon-prev:before {
...@@ -5788,9 +5789,16 @@ button.close { ...@@ -5788,9 +5789,16 @@ button.close {
width: 30px; width: 30px;
height: 30px; height: 30px;
margin-top: -15px; margin-top: -15px;
margin-left: -15px;
font-size: 30px; font-size: 30px;
} }
.carousel-control .glyphicon-chevron-left,
.carousel-control .icon-prev {
margin-left: -15px;
}
.carousel-control .glyphicon-chevron-right,
.carousel-control .icon-next {
margin-right: -15px;
}
.carousel-caption { .carousel-caption {
right: 20%; right: 20%;
left: 20%; left: 20%;
......
File suppressed by a .gitattributes entry or the file's encoding is unsupported.
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -313,7 +313,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re ...@@ -313,7 +313,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re
if (pos > (this.$items.length - 1) || pos < 0) return if (pos > (this.$items.length - 1) || pos < 0) return
if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) }) if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) }) // yes, "slid". not a typo. past tense of "to slide".
if (activeIndex == pos) return this.pause().cycle() if (activeIndex == pos) return this.pause().cycle()
return this.slide(pos > activeIndex ? 'next' : 'prev', $(this.$items[pos])) return this.slide(pos > activeIndex ? 'next' : 'prev', $(this.$items[pos]))
...@@ -367,7 +367,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re ...@@ -367,7 +367,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re
if (this.$indicators.length) { if (this.$indicators.length) {
this.$indicators.find('.active').removeClass('active') this.$indicators.find('.active').removeClass('active')
this.$element.one('slid.bs.carousel', function () { this.$element.one('slid.bs.carousel', function () { // yes, "slid". not a typo. past tense of "to slide".
var $nextIndicator = $(that.$indicators.children()[that.getActiveIndex()]) var $nextIndicator = $(that.$indicators.children()[that.getActiveIndex()])
$nextIndicator && $nextIndicator.addClass('active') $nextIndicator && $nextIndicator.addClass('active')
}) })
...@@ -383,14 +383,14 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re ...@@ -383,14 +383,14 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re
$next.removeClass([type, direction].join(' ')).addClass('active') $next.removeClass([type, direction].join(' ')).addClass('active')
$active.removeClass(['active', direction].join(' ')) $active.removeClass(['active', direction].join(' '))
that.sliding = false that.sliding = false
setTimeout(function () { that.$element.trigger('slid.bs.carousel') }, 0) setTimeout(function () { that.$element.trigger('slid.bs.carousel') }, 0) // yes, "slid". not a typo. past tense of "to slide".
}) })
.emulateTransitionEnd($active.css('transition-duration').slice(0, -1) * 1000) .emulateTransitionEnd($active.css('transition-duration').slice(0, -1) * 1000)
} else { } else {
$active.removeClass('active') $active.removeClass('active')
$next.addClass('active') $next.addClass('active')
this.sliding = false this.sliding = false
this.$element.trigger('slid.bs.carousel') this.$element.trigger('slid.bs.carousel') // yes, "slid". not a typo. past tense of "to slide".
} }
isCycling && this.cycle() isCycling && this.cycle()
...@@ -511,8 +511,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re ...@@ -511,8 +511,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re
this.$element this.$element
.removeClass('collapse') .removeClass('collapse')
.addClass('collapsing') .addClass('collapsing')[dimension](0)
[dimension](0)
this.transitioning = 1 this.transitioning = 1
...@@ -520,8 +519,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re ...@@ -520,8 +519,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re
if (e && e.target != this.$element[0]) return if (e && e.target != this.$element[0]) return
this.$element this.$element
.removeClass('collapsing') .removeClass('collapsing')
.addClass('collapse in') .addClass('collapse in')[dimension]('auto')
[dimension]('auto')
this.transitioning = 0 this.transitioning = 0
this.$element.trigger('shown.bs.collapse') this.$element.trigger('shown.bs.collapse')
} }
...@@ -532,8 +530,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re ...@@ -532,8 +530,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re
this.$element this.$element
.one($.support.transition.end, $.proxy(complete, this)) .one($.support.transition.end, $.proxy(complete, this))
.emulateTransitionEnd(350) .emulateTransitionEnd(350)[dimension](this.$element[0][scrollSize])
[dimension](this.$element[0][scrollSize])
} }
Collapse.prototype.hide = function () { Collapse.prototype.hide = function () {
...@@ -545,9 +542,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re ...@@ -545,9 +542,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re
var dimension = this.dimension() var dimension = this.dimension()
this.$element this.$element[dimension](this.$element[dimension]())[0].offsetHeight
[dimension](this.$element[dimension]())
[0].offsetHeight
this.$element this.$element
.addClass('collapsing') .addClass('collapsing')
...@@ -795,11 +790,12 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re ...@@ -795,11 +790,12 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re
// ====================== // ======================
var Modal = function (element, options) { var Modal = function (element, options) {
this.options = options this.options = options
this.$body = $(document.body) this.$body = $(document.body)
this.$element = $(element) this.$element = $(element)
this.$backdrop = this.$backdrop =
this.isShown = null this.isShown = null
this.scrollbarWidth = 0
if (this.options.remote) { if (this.options.remote) {
this.$element this.$element
...@@ -830,6 +826,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re ...@@ -830,6 +826,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re
this.isShown = true this.isShown = true
this.checkScrollbar()
this.$body.addClass('modal-open') this.$body.addClass('modal-open')
this.setScrollbar() this.setScrollbar()
...@@ -976,11 +973,14 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re ...@@ -976,11 +973,14 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re
} }
} }
Modal.prototype.checkScrollbar = function () {
if (document.body.clientWidth >= window.innerWidth) return
this.scrollbarWidth = this.scrollbarWidth || this.measureScrollbar()
}
Modal.prototype.setScrollbar = function () { Modal.prototype.setScrollbar = function () {
if (document.body.clientHeight <= window.innerHeight) return var bodyPad = parseInt(this.$body.css('padding-right') || 0)
var scrollbarWidth = this.measureScrollbar() if (this.scrollbarWidth) this.$body.css('padding-right', bodyPad + this.scrollbarWidth)
var bodyPad = parseInt(this.$body.css('padding-right') || 0)
if (scrollbarWidth) this.$body.css('padding-right', bodyPad + scrollbarWidth)
} }
Modal.prototype.resetScrollbar = function () { Modal.prototype.resetScrollbar = function () {
......
This diff is collapsed.
...@@ -13,6 +13,11 @@ ...@@ -13,6 +13,11 @@
description: Bootstrap auf Deutsch description: Bootstrap auf Deutsch
url: http://holdirbootstrap.de/ url: http://holdirbootstrap.de/
- name: Italian
code: it
description: Bootstrap in Italiano
url: http://www.hackerstribe.com/guide/IT-bootstrap-3.1.1/
- name: Korean - name: Korean
code: ko code: ko
description: Bootstrap 한국어 description: Bootstrap 한국어
......
...@@ -21,6 +21,10 @@ ...@@ -21,6 +21,10 @@
<h4>Don't mix with other components</h4> <h4>Don't mix with other components</h4>
<p>Icon classes cannot be directly combined with other components. They should not be used along with other classes on the same element. Instead, add a nested <code>&lt;span&gt;</code> and apply the icon classes to the <code>&lt;span&gt;</code>.</p> <p>Icon classes cannot be directly combined with other components. They should not be used along with other classes on the same element. Instead, add a nested <code>&lt;span&gt;</code> and apply the icon classes to the <code>&lt;span&gt;</code>.</p>
</div> </div>
<div class="bs-callout bs-callout-danger">
<h4>Only for use on empty elements</h4>
<p>Icon classes should only be used on elements that contain no text content and have no child elements.</p>
</div>
{% highlight html %} {% highlight html %}
<span class="glyphicon glyphicon-search"></span> <span class="glyphicon glyphicon-search"></span>
{% endhighlight %} {% endhighlight %}
......
...@@ -17,6 +17,10 @@ ...@@ -17,6 +17,10 @@
<h4>Requires JavaScript</h4> <h4>Requires JavaScript</h4>
<p>If JavaScript is disabled and the viewport is narrow enough that the navbar collapses, it will be impossible to expand the navbar and view the content within the <code>.navbar-collapse</code>.</p> <p>If JavaScript is disabled and the viewport is narrow enough that the navbar collapses, it will be impossible to expand the navbar and view the content within the <code>.navbar-collapse</code>.</p>
</div> </div>
<div class="bs-callout bs-callout-info">
<h4>Changing the collapsed mobile navbar breakpoint</h4>
<p>The navbar collapses into its vertical mobile view when the viewport is narrower than <code>@grid-float-breakpoint</code>, and expands into its horizontal non-mobile view when the viewport is at least <code>@grid-float-breakpoint</code> in width. Adjust this variable in the Less source to control when the navbar collapses/expands. The default value is <code>768px</code> (the smallest "small" or "tablet" screen).</p>
</div>
<div class="bs-example"> <div class="bs-example">
<nav class="navbar navbar-default" role="navigation"> <nav class="navbar navbar-default" role="navigation">
...@@ -38,7 +42,7 @@ ...@@ -38,7 +42,7 @@
<li class="active"><a href="#">Link</a></li> <li class="active"><a href="#">Link</a></li>
<li><a href="#">Link</a></li> <li><a href="#">Link</a></li>
<li class="dropdown"> <li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a> <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <span class="caret"></span></a>
<ul class="dropdown-menu" role="menu"> <ul class="dropdown-menu" role="menu">
<li><a href="#">Action</a></li> <li><a href="#">Action</a></li>
<li><a href="#">Another action</a></li> <li><a href="#">Another action</a></li>
...@@ -59,7 +63,7 @@ ...@@ -59,7 +63,7 @@
<ul class="nav navbar-nav navbar-right"> <ul class="nav navbar-nav navbar-right">
<li><a href="#">Link</a></li> <li><a href="#">Link</a></li>
<li class="dropdown"> <li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a> <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <span class="caret"></span></a>
<ul class="dropdown-menu" role="menu"> <ul class="dropdown-menu" role="menu">
<li><a href="#">Action</a></li> <li><a href="#">Action</a></li>
<li><a href="#">Another action</a></li> <li><a href="#">Another action</a></li>
...@@ -93,7 +97,7 @@ ...@@ -93,7 +97,7 @@
<li class="active"><a href="#">Link</a></li> <li class="active"><a href="#">Link</a></li>
<li><a href="#">Link</a></li> <li><a href="#">Link</a></li>
<li class="dropdown"> <li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a> <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <span class="caret"></span></a>
<ul class="dropdown-menu"> <ul class="dropdown-menu">
<li><a href="#">Action</a></li> <li><a href="#">Action</a></li>
<li><a href="#">Another action</a></li> <li><a href="#">Another action</a></li>
...@@ -114,7 +118,7 @@ ...@@ -114,7 +118,7 @@
<ul class="nav navbar-nav navbar-right"> <ul class="nav navbar-nav navbar-right">
<li><a href="#">Link</a></li> <li><a href="#">Link</a></li>
<li class="dropdown"> <li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a> <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <span class="caret"></span></a>
<ul class="dropdown-menu"> <ul class="dropdown-menu">
<li><a href="#">Action</a></li> <li><a href="#">Action</a></li>
<li><a href="#">Another action</a></li> <li><a href="#">Another action</a></li>
......
...@@ -348,7 +348,7 @@ ...@@ -348,7 +348,7 @@
<h2 id="tables-responsive">Responsive tables</h2> <h2 id="tables-responsive">Responsive tables</h2>
<p>Create responsive tables by wrapping any <code>.table</code> in <code>.table-responsive</code> to make them scroll horizontally up to small devices (under 768px). When viewing on anything larger than 768px wide, you will not see any difference in these tables.</p> <p>Create responsive tables by wrapping any <code>.table</code> in <code>.table-responsive</code> to make them scroll horizontally on small devices (under 768px). When viewing on anything larger than 768px wide, you will not see any difference in these tables.</p>
<div class="bs-example"> <div class="bs-example">
<div class="table-responsive"> <div class="table-responsive">
<table class="table"> <table class="table">
......
...@@ -146,10 +146,10 @@ You can use the mark tag to <mark>highlight</mark> text. ...@@ -146,10 +146,10 @@ You can use the mark tag to <mark>highlight</mark> text.
<h3>Underlined text</h3> <h3>Underlined text</h3>
<p>To underline text use the <code>&lt;u&gt;</code> tag.</p> <p>To underline text use the <code>&lt;u&gt;</code> tag.</p>
<div class="bs-example"> <div class="bs-example">
<p><u>This line of text is will render as underlined</u></p> <p><u>This line of text will render as underlined</u></p>
</div> </div>
{% highlight html %} {% highlight html %}
<u>This line of text is will render as underlined</u> <u>This line of text will render as underlined</u>
{% endhighlight %} {% endhighlight %}
<p>Make use of HTML's default emphasis tags with lightweight styles.</p> <p>Make use of HTML's default emphasis tags with lightweight styles.</p>
......
...@@ -176,11 +176,13 @@ if (navigator.userAgent.match(/IEMobile\/10\.0/)) { ...@@ -176,11 +176,13 @@ if (navigator.userAgent.match(/IEMobile\/10\.0/)) {
<p>On <code>&lt;select&gt;</code> elements, the Android stock browser will not display the side controls if there is a <code>border-radius</code> and/or <code>border</code> applied. Use the snippet of code below to remove the offending CSS and render the <code>&lt;select&gt;</code> as an unstyled element on the Android stock browser. The user agent sniffing avoids interference with Chrome, Safari, and Mozilla browsers.</p> <p>On <code>&lt;select&gt;</code> elements, the Android stock browser will not display the side controls if there is a <code>border-radius</code> and/or <code>border</code> applied. Use the snippet of code below to remove the offending CSS and render the <code>&lt;select&gt;</code> as an unstyled element on the Android stock browser. The user agent sniffing avoids interference with Chrome, Safari, and Mozilla browsers.</p>
{% highlight html %} {% highlight html %}
<script> <script>
var nua = navigator.userAgent $(function () {
var isAndroid = (nua.indexOf('Mozilla/5.0') > -1 && nua.indexOf('Android ') > -1 && nua.indexOf('AppleWebKit') > -1 && nua.indexOf('Chrome') === -1) var nua = navigator.userAgent
if (isAndroid) { var isAndroid = (nua.indexOf('Mozilla/5.0') > -1 && nua.indexOf('Android ') > -1 && nua.indexOf('AppleWebKit') > -1 && nua.indexOf('Chrome') === -1)
$('select.form-control').removeClass('form-control').css('width', '100%') if (isAndroid) {
} $('select.form-control').removeClass('form-control').css('width', '100%')
}
})
</script> </script>
{% endhighlight %} {% endhighlight %}
<p>Want to see an example? <a href="http://jsbin.com/OyaqoDO/2">Check out this JS Bin demo.</a></p> <p>Want to see an example? <a href="http://jsbin.com/OyaqoDO/2">Check out this JS Bin demo.</a></p>
......
...@@ -8,21 +8,21 @@ ...@@ -8,21 +8,21 @@
<h3 id="download-bootstrap">Bootstrap</h3> <h3 id="download-bootstrap">Bootstrap</h3>
<p>Compiled and minified CSS, JavaScript, and fonts. No docs or original source files are included.</p> <p>Compiled and minified CSS, JavaScript, and fonts. No docs or original source files are included.</p>
<p> <p>
<a href="{{ site.download.dist }}" class="btn btn-lg btn-outline" role="button" onclick="_gaq.push(['_trackEvent', 'Getting started', 'Download', 'Download compiled']);">Download Bootstrap</a> <a href="{{ site.download.dist }}" class="btn btn-lg btn-outline" role="button" onclick="ga('send', 'event', 'Getting started', 'Download', 'Download compiled');">Download Bootstrap</a>
</p> </p>
</div> </div>
<div class="col-sm-4"> <div class="col-sm-4">
<h3 id="download-source">Source code</h3> <h3 id="download-source">Source code</h3>
<p>Source Less, JavaScript, and font files, along with our docs. <strong>Requires a Less compiler and <a href="{{ site.repo }}#compiling-css-and-javascript">some setup.</a></strong></p> <p>Source Less, JavaScript, and font files, along with our docs. <strong>Requires a Less compiler and <a href="{{ site.repo }}#compiling-css-and-javascript">some setup.</a></strong></p>
<p> <p>
<a href="{{ site.download.source }}" class="btn btn-lg btn-outline" role="button" onclick="_gaq.push(['_trackEvent', 'Getting started', 'Download', 'Download source']);">Download source</a> <a href="{{ site.download.source }}" class="btn btn-lg btn-outline" role="button" onclick="ga('send', 'event', 'Getting started', 'Download', 'Download source');">Download source</a>
</p> </p>
</div> </div>
<div class="col-sm-4"> <div class="col-sm-4">
<h3 id="download-sass">Sass</h3> <h3 id="download-sass">Sass</h3>
<p><a href="{{ site.sass_repo }}">Bootstrap ported from Less to Sass</a> for easy inclusion in Rails, Compass, or Sass-only projects.</p> <p><a href="{{ site.sass_repo }}">Bootstrap ported from Less to Sass</a> for easy inclusion in Rails, Compass, or Sass-only projects.</p>
<p> <p>
<a href="{{ site.download.sass }}" class="btn btn-lg btn-outline" role="button" onclick="_gaq.push(['_trackEvent', 'Getting started', 'Download', 'Download Sass']);">Download Sass</a> <a href="{{ site.download.sass }}" class="btn btn-lg btn-outline" role="button" onclick="ga('send', 'event', 'Getting started', 'Download', 'Download Sass');">Download Sass</a>
</p> </p>
</div> </div>
</div> </div>
......
...@@ -35,6 +35,8 @@ ...@@ -35,6 +35,8 @@
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga'); })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-146052-10', 'getbootstrap.com'); ga('create', 'UA-146052-10', 'getbootstrap.com');
ga('send', 'pageview'); ga('send', 'pageview');
</script> </script>
...@@ -64,7 +64,7 @@ ...@@ -64,7 +64,7 @@
</table> </table>
</div><!-- /.table-responsive --> </div><!-- /.table-responsive -->
{% highlight js %} {% highlight js %}
$('#my-alert').bind('closed.bs.alert', function () { $('#my-alert').on('closed.bs.alert', function () {
// do something… // do something…
}) })
{% endhighlight %} {% endhighlight %}
......
...@@ -37,10 +37,14 @@ ...@@ -37,10 +37,14 @@
<h4>Checkbox</h4> <h4>Checkbox</h4>
<p>Add <code>data-toggle="buttons"</code> to a group of checkboxes for checkbox style toggling on btn-group.</p> <p>Add <code>data-toggle="buttons"</code> to a group of checkboxes for checkbox style toggling on btn-group.</p>
<div class="bs-callout bs-callout-warning">
<h4>Pre-checked options need <code>.active</code></h4>
<p>For pre-checked options, you must add the <code>.active</code> class to the input's <code>label</code> yourself.</p>
</div>
<div class="bs-example" style="padding-bottom: 24px;"> <div class="bs-example" style="padding-bottom: 24px;">
<div class="btn-group" data-toggle="buttons"> <div class="btn-group" data-toggle="buttons">
<label class="btn btn-primary"> <label class="btn btn-primary active">
<input type="checkbox"> Option 1 <input type="checkbox" checked> Option 1 (pre-checked)
</label> </label>
<label class="btn btn-primary"> <label class="btn btn-primary">
<input type="checkbox"> Option 2 <input type="checkbox"> Option 2
...@@ -52,8 +56,8 @@ ...@@ -52,8 +56,8 @@
</div><!-- /example --> </div><!-- /example -->
{% highlight html %} {% highlight html %}
<div class="btn-group" data-toggle="buttons"> <div class="btn-group" data-toggle="buttons">
<label class="btn btn-primary"> <label class="btn btn-primary active">
<input type="checkbox"> Option 1 <input type="checkbox" checked> Option 1 (pre-checked)
</label> </label>
<label class="btn btn-primary"> <label class="btn btn-primary">
<input type="checkbox"> Option 2 <input type="checkbox"> Option 2
...@@ -66,10 +70,14 @@ ...@@ -66,10 +70,14 @@
<h4>Radio</h4> <h4>Radio</h4>
<p>Add <code>data-toggle="buttons"</code> to a group of radio inputs for radio style toggling on btn-group.</p> <p>Add <code>data-toggle="buttons"</code> to a group of radio inputs for radio style toggling on btn-group.</p>
<div class="bs-callout bs-callout-warning">
<h4>Preselected options need <code>.active</code></h4>
<p>For preselected options, you must add the <code>.active</code> class to the input's <code>label</code> yourself.</p>
</div>
<div class="bs-example" style="padding-bottom: 24px;"> <div class="bs-example" style="padding-bottom: 24px;">
<div class="btn-group" data-toggle="buttons"> <div class="btn-group" data-toggle="buttons">
<label class="btn btn-primary"> <label class="btn btn-primary active">
<input type="radio" name="options" id="option1"> Option 1 <input type="radio" name="options" id="option1" checked> Option 1 (preselected)
</label> </label>
<label class="btn btn-primary"> <label class="btn btn-primary">
<input type="radio" name="options" id="option2"> Option 2 <input type="radio" name="options" id="option2"> Option 2
...@@ -81,8 +89,8 @@ ...@@ -81,8 +89,8 @@
</div><!-- /example --> </div><!-- /example -->
{% highlight html %} {% highlight html %}
<div class="btn-group" data-toggle="buttons"> <div class="btn-group" data-toggle="buttons">
<label class="btn btn-primary"> <label class="btn btn-primary active">
<input type="radio" name="options" id="option1"> Option 1 <input type="radio" name="options" id="option1" checked> Option 1 (preselected)
</label> </label>
<label class="btn btn-primary"> <label class="btn btn-primary">
<input type="radio" name="options" id="option2"> Option 2 <input type="radio" name="options" id="option2"> Option 2
......
Supports Markdown
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