Bootstrap 3.0.1 released
Today we’re shipping v3.0.1, a huge patch release with over 750 commits since v3 was released two months ago. We’ve outlined most of the changes below, including documentation updates, bug fixes, and even a few deprecations (our first in the history of the project).
Download Bootstrap 3.0.1 or hit the GitHub repository
Changes
Compared to previous releases, we’re going into a bit more detail here with the docs and bug fixes. Expect more of this with future releases.
Docs
- #9880: Use medium grid classes on jumbotron example
- #9887: Document
.showand.hideclasses - #9908: Add
type="submit"to Customizer compile button to prevent accidental submissions - #9915: Fix inaccurate comment in media query docs
- #9917: Updated broken download link in README
- #9924: Removed non-ASCII character from non-responsive example CSS
- #9928, #9932: Update carousel example to work in IE10 and correctly display navbar in narrow viewports
- #9931: Add ARIA
role="toolbar"to elements with.btn-toolbarin docs examples - #9991: Better docs for tabbable tab markup and its fade option
- #10011: Update Grunt instruction links and wording
- #10012: Add David to project readme to monitor dependency currentness
- #10034: Use npm-registered recent version of
grunt-html-validationinstead of its git repo - #10040: Better cross referencing of default and navbar pull utilities
- #10042: Updated JS Fiddle tooltip delegation example linked in docs
- #10045: Use v2.3.2 release ZIP instead of master zip for downloads from old docs
- #10081: Documents workaround for tooltips+popovers on disabled elements
- #10082: Documents
.navbar-form - #10087: Add version number to all docs pages (in the footer)
- #10088: Updates accessibility docs regarding nesting heading elements
- #10112: More
roleattributes in the docs, this time on link buttons - #10126: Update responsive test cases to properly highlight hidden class examples
- #10131: Corrects button group selector in JavaScript docs
- #10136: Broken image link in Carousel example
- #10146: Document
data-ridecarousel feature - #10209: Fixed broken dismissable alert example
- #10215: More compressed touch icons, updates Respond.js to v1.3.0 and html5shiv.js to v3.6.2, adds
bugsto package.json - #10249: Correct component name of jumbotron component in Jumbotron example
- #10272: Removed unused link for nav alignment in Components page
- #10277: Mention removal of navbar vertical dividers in migration docs
- #10278: Change Google Maps compatibility warning to a general
box-sizingwarning with optional reset - #10282: Cross reference tabs and tabs plugin
- #10298: Add progress bar to migration docs
- #10299, #10323: Getting Started wording changes
- #10316: Document .active and :active for buttons
- #10324, #10338: Restore opt-in warning for tooltips and popovers
- #10342: Update affix docs to better communicate plugin behavior
- #10344: Update IE8-9 support section with table of specific CSS3 and HTML5 features and their support in Bootstrap
- #10372: Homepage now shows two download buttons, one for our assets (CSS, JS, and fonts) and one for the source code (the entire repo)
- #10382: Update Disabling responsiveness docs section for brevity
- #10411: Color coded IE8-9 browser support table
- #10414: Carousel now uses Glyphicons as default left/right chevron icons (text icons are still supported)
- #10417: Document
.hiddenin the Helper classes Screen reader content section - #10419: Add nav lists to migration guide
- #10453: Add additional screen reader text to button group dropdown toggles
- #10459: Update Customization section in Getting started page
- #10492: Account for responsive tables in panels
- #10497, #10584: Fix Windows 8 and Windows Phone 8 behavior in Internet Explorer 10 and applies “bug fix” to docs
- #10528: Add new About page to the docs with backstory, core team, community links, and translations
- #10573: Un-hardcode tooltip arrow widths and padding for easier customization
- #10591: Add modal
remoteoption semantics change to migration docs - #10693: Include a copy of the docs license as a file in the repo
- #10711: Address 100% fluid layouts in grid docs and the required padding
- #10768: Fix mention of renamed
.img-polaroidclass in Migration docs - #10770: Rename
/assetsto/docs-assetsto reduce confusion between/distand docs dependencies - #10790: Disable IE compatibility mode in all docs pages and examples
- #10856: Update grid docs to better explain the sizing and interactions when using multiple grid tier classes
- #11013: Use CDNs for jQuery and HTML5 shiv
- Add blog link back to docs homepage
- Remove links to navbar examples from example navbars in Theme example
- Delete smaller touch icons and only include one
- Remove unused mention of
.prettyprintstyles fromcode.less(we no longer use that plugin and the class is undocumented, so we’re nuking it) - Remove unnecessary
leftandrightproperties from.modal-dialogsince we usemarginto center the modal - Add Linux Firefox to supported browsers list
- Update outdated JSFiddle example
Bug fixes and changes
- #9855: Partial fix for open modal content shifting: removed all
marginsettings to prevent some of the content shifting. Still needs JS love to detect scrollbars and adjust content accordingly (will address in v3.0.2). - #9877: Add improved
.activestate to navbar nav in theme - #9879: Add hover state (move gradient up 15px) to theme buttons]
- #9909: Add
@component-active-colorvariable to complement@component-active-bg(and apply it to dropdowns, nav pills, and list group items) - #9964: Add fonts directory to bower.json
mainfiles list - #9968: Simplify striped progress bar mixin to remove unused color
- #9969: Add support for
outputelement by styling it more like our.form-control - #9973: Removed unnecessary
-ms-linear-gradientprefix - #9981: Account for hover and focus states on pagination disabled items
- #9989: Set monospace
font-familyon<kbd>and<samp>to match browser defaults - #9999: Make
.table-hoverstyling apply to<th>within contextual table rows too - #10013: Position carousel left and right controls from the left and right, respectively
- #10014, #10406: Update grid to use
widthon.containers instead ofmax-widthas IE8 doesn’t fully supportbox-sizing: border-boxwhen combined with min/max width/height - #10022: Add
width: 1em;to all empty Glyphicons to prevent loading flicker - #10024: Use negative margin to fix the border between button and input in input groups
- #10025: Add additional transform mixins
- #10057: Autohiding scrollbars in responsive tables for Windows Phone 8
- #10059: Add
.transition-property()mixin - #10079: Native-style scrolling in responsive tables for iOS
- #10101, #10541, #10565: Generate CSS file banners via Gruntfile
- #10111: Use different colors for dropdown link hover and active states
- #10115: Default carousel controls and Glyphicon controls should behave the same on small devices and up
- #10153: Restore
@headings-colorvariable - #10154: Add
.smallto pair with our heading classes (e.g.,h1and.h1) - #10164: Document
.center-block()mixin and update CSS to include it as a class - #10169: Remove old
@navbar-inverse-search-*variables - #10223: Add
@input-colorto.input-group-addonto match the form controls - #10227: Use correct
max-widthon Offcanvas example media query and addoverflow-x: hiddento prevent scrollbar on narrow devices - #10232: Scope
.tablestyles to immediatethead,tbody, andtfootelements - #10245: Add
@breadcrumb-separatorvariable for customizing breadcrumbs - #10246: Use correct variable for link hover color in Customizer
- #10256: Use
@navbar-default-brand-colorwithin the@navbar-default-brand-hover-colorvariable - #10257: Remove
filteron navbars intheme.lessso that dropdowns can be triggered in IE<10 - #10265: Scope
background-imagereset to Bootstrap buttons and form controls only to avoid Android Firefox bug - #10336: Replace non-ASCII dash in LESS source file
- #10341: Don’t change border color on contextual table classes
- #10399: Add hover styles to text emphasis classes
- #10407: Add line-height to progress bar for proper text alignment within
- #10436: Use
@screen-smvariable instead of hardcoded pixel value in type.less - #10484: Allow for
.table-borderedin panels by removing side and bottom margins - #10516: Use auto positioning for dropdowns in justified nav to fix Firefox rendering
- #10521: Only remove
bottom-borderfrom last row of cells intbodyandtfootwithin responsive tables - #10522: Enable use of form validation class on .radio, .checkbox, .radio-inline, and .checkbox-inline
- #10526: Remove custom background on responsive tables and set it in the docs where it should’ve been originally
- #10560: Remove
display: block;fromaddresselement since browsers set that to start - #10590: Mention required jQuery version in docs
- #10601: Use
overflow-y: auto;for.navbar-collapseinstead ofvisibleto better enable scrolling on Android 4.x devices (see issue for more details on support and gotchas) - #10620: Remove
filteron buttons for IE9 intheme.lessdue to bleed-through with rounded corners (matches behavior and style of Bootstrap 2.x) - #10641: Remove unused
.accordion-toggleclass from docs example - #10656: Inherit link and caret colors for textual dropdowns in panel headers
- #10694: Remove unnecessary
contentproperty from.caret - #10695: Ensure carets in
.nav-pillsdropdown links inherit active color - #10729: Removed the unnecessary override and the
!importantfrom.wrapin the sticky footer examples - #10755: Don’t remove quotes around
qelement by default - #10778: Use newly-updated Glyphicons to workaround old Android WebKit bug
- #10763: Update html5shiv to v3.7.0
- #10863: Fix check for presence of jQuery
- #10893: Remove comma separating the color and the color-stop in
-webkit-linear-gradientin#gradient > .verticalmixin - #10927: Scope
padding-topon.form-control-staticto horizontal forms only - #10949: Use variable for jumbotron
font-sizeinstead of hard-coded value - #10959: Round
.leadfont-sizeto nearest whole pixel - #10997: Move
.hiddenfrom responsive utilities to utilities (where it belongs, especially on account of deprecated.hideper #10769) - #11050: Restore grid mixins
- #11126: Remove
box-shadowfrom.btn-link.dropdown-toggle - #11127:
.navbar-fixed-bottomshould have a top border, not a bottom border - #11139: Add
position: relative;to.modal-dialogso that thez-indextakes effect - #11151: Remove rogue H5BP
.irclass from print styles - #11186: Add
background-colorhacks so that clicking carousel indicators in IE8-9 works as intended - #11188: Refactor
z-indexon navbars. Removes the defaultz-index: 1000;and instead only applies it to static-top, fixed-top, and fixed-bottom. Also fixes up the broken default navbar example’s fubared padding. - #11206: Remove
padding-leftfrom first list item within.list-inline - #11244: Adds
.animation()mixin to replace.progress-bar’s regular CSS animation properties (and drops the-moz,-ms, and-oprefixes as they are not needed per https://caniuse.com/#feat=css-animation). - #11248: Apply
background-color: #fff;toselects in print styles to fix Chrome bug - Audited Customizer variables section and rearranged content
Deprecated
- #9963, #10567: Deprecate
@screen-*variables for@screen-*-minto better match the@screen-*-maxvariables and provide more context to their actual uses. - #10005: Finish removing uses of
@screen-{device}variables by deprecating them for@screen-*-minwherever possible. - #10100: Deprecate
.hide-textmixin for.text-hide. This matches our class-mixin strategy elsewhere (e.g.,.clearfix) and ensures the class and mixin use the same name to avoid confusion. - #10125: Deprecate inconsistent container variables for new
@container-{screen-size}variables (e.g., use@container-sminstead of@container-tablet) - #10769: Deprecate
.hidefor.hiddenso we don’t duplicate functionality.
For even more details, see the 3.0.1 milestone.
Moving to MIT license
We’ve been looking to move to the MIT license for quite some time, and today’s release takes us that much closer. Starting with v3.0.1, all new contributions to Bootstrap will be dual-licensed as Apache 2 and MIT. The intent is to move the entire project (including all prior contributions) to the MIT license in a future version (hopefully v3.1.0).
To make the change, every contributor to Bootstrap must consent to relicense their changes (since we have no CLA). We’re making excellent progress on that front with the community’s help and will address holdouts as they come up.
As a heads up, we’ve placed notices in the contributing guidelines and our project readme about the pending change and transition period.
It goes without saying that we don’t need to do this, but we want to make Bootstrap available to all communities who cannot currently use it due to licensing conflicts. Theoretically these communities could change their licenses, but when you step back and objectively look at the situation, it’s much easier for us to change. We hope you understand and stick it out with us as we make the move.
Growing the team
The Bootstrap core team doubled a few months ago when we added Chris and Julian to the project. They’ve helped manage issues, written some awesome code, and provided critical input in the direction of the project. As Bootstrap grows, so too must our core team, and we’re once again actively seeking new team members.
It’ll be a slow process, much like last time, but we need the help on several fronts to keep us shipping and iterating. In particular, we’ll be keeping an eye out for folks with top notch CSS and JavaScript skills.
Up next
We’re already tracking issues for a v3.0.2 release and its changes will be along the same lines as today’s release—bugs and docs. v3.1.0 will likely ship after that sometime with a few new features. As always, no dates have been set yet for any future releases.