B

The Bootstrap Blog

Announcements, discussions, and more for Bootstrap and the Official Bootstrap Themes.

Bootstrap 4 Alpha 4

Alpha 4 is here to address those pesky build and package errors, a few CSS bugs, and some documentation inconsistencies we introduced in our last release.

This is a super small release compared to our previous alphas, so here’s the rundown on what’s changed:

  • Fixed package.json errors
  • Additional migration notices for more components
  • Fix broken flexbox utilities on flexbox grid page
  • Fix inconsistent checkbox and radio markup, as well as validation styles
  • Minor tweaks to cards, alerts, utilities, and input groups

At the time of release, the Bootstrap CDN hasn’t been updated for Alpha 4. Apologies for the delay, and stay tuned for an update on when they’re live.

For more details on this release’s changes, take a look at the Alpha 4 ship list issue, as well as the closed Alpha 4 milestone. Be sure to join our official Slack room! and dive into our issue tracker with bug reports, questions, and general feedback whenever possible.

Using the Bootstrap CDN? Review the changelog and update your CDN links to point to the latest files:

<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.4/css/bootstrap.min.css" integrity="sha384-2hfp1SzUoho7/TsGGGDaFdsuuDL0LX2hnUp6VkX3CUQ2K4K+xjboZdsXyp4oUHZj" crossorigin="anonymous">

<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.4/js/bootstrap.min.js" integrity="sha384-VjEeINv9OSwtWFLAtmc4JCtEJXXBub00gtSnszmspDLCtC0I4z4nqz7rEFbIZLLU" crossorigin="anonymous"></script>

<3,
@mdo & team

Bootstrap 4 Alpha 3

Alpha 3 has landed! We have an overhauled grid, updated form controls, a new font stack, tons of bug fixes, and more. It’s been several months since our last update, but the size of this update should help get us back on track.

Work on Alpha 3 started rather broadly, addressing bug fixes and docs updates of all shapes and sizes, but finished with a narrow focus on our form controls and grid system. If you’ve followed the development in our v4-dev branch, you might already be familiar with some of these bigger changes.

Skip to the updated alpha docs site, or keep reading for the highlights.

Grid system

The grid system was overhauled with three major pull requests—#19099, #20349, and #20361. Those PRs largely focused on the following changes:

  • Our ready-made grid classes (containers and columns) are now behind a Sass variable, meaning grid classes can easily be disabled via Sass variable. Update the boolean $enable-grid-classes variable and recompile to remove them.

  • Grid modifier classes are simpler and no longer require the col- prefix. For example, instead of .col-offset-*-*, .col-push-*-*, and .col-pull-*-*, we now have .offset-*-*, .push-*-*, and .pull-*-*.

  • Mixins have been changed, and then changed again, to in an effort to keep generated classes simple and cooperative between standard and flexbox modes. Our two primary column mixins are now make-col-ready, which houses the position, padding-*s, and min-height (to prevent collapsing empty columns), and make-col for setting the float and width.

  • Added a grid customization section to the docs to explain how to change the number of columns, grid tier breakpoints, container widths, and more.

These changes are available in our standard grid, as well as our flexbox grid. More on that below.

Flexbox

Flexbox auto-layout

Flexbox mode has been updated across the board in Alpha 3, starting from the grid system (it uses the same variable and the updated Sass mixins) and moving through our utilities and components.

  • New flexbox grid docs. In addition to the standard grid docs, we now have a dedicated docs page for our flexbox grid as it behaves slightly differently than the standard grid. This new page includes details on how and why this grid works the way it does, as well as additional code examples.

  • Automatic equal-width column sizing with new .col-{breakpoint} classes. For example, for three equal-width columns at the xs breakpoint, you’d create three columns each with just .col-xs.

  • New flexbox alignment utility classes for vertically and horizontally distributing items. Works with our flexbox grid, as well as just about any other custom component.

Forms

Form validation states

Forms saw a ton of activity early on in Alpha 3’s development. Documentation, class names, layout options, and validation styles have all been drastically improved.

  • New classes for checkboxes, radios, input sizing, and legends. While not 100% final, all our form controls are named more clearly and consistently across our CSS.

  • Replaced the base64 PNG background images with inline SVGs for our custom form controls and validation states. Scale those form controls to your heart’s content!

  • Speaking of validation states, we have brand new form validation and help text options. Validation states can now be applied on a per-input basis (with .form-control-{state}) and optional validation feedback can be shown with .form-control-feedback. Independent form help text can now be controlled with the new .form-text class.

<div class="form-group has-success">
  <label class="col-form-label" for="inputSuccess1">
    Input with success
  </label>
  <input type="text" class="form-control form-control-success" id="inputSuccess1">
  <div class="form-control-feedback">
    Success! You've done it.
  </div>
  <small class="form-text text-muted">
    Example help text that remains unchanged.
  </small>
</div>
  • Fixed a few form related bugs, like the horizontal label padding in #17498, misuse of <fieldset>s for form groups, sizing classes not applying to <select>s, and more.

  • Documentation for forms has been overhauled. We have simpler examples of our available form controls, clearer guidance on validation states (and when to use each), and more.

System fonts

We’ve replaced the decades old Helvetica/Arial font stack with a system font stack, utilizing newer, more readable, and more powerful fonts that companies like Apple, Google, and Microsoft have specifically designed for today’s devices.

Originally this was planned to affect Linux users, but font usage and support is rather inconsistent across distros and user preferences. For that reason, there’s no intended font change for folks on Linux.

And so much more…

There were nearly 1,200 commits to Alpha 3 and this post barely scratches the surface. We’ve fixed dozens of other bugs and worked hard to improve our documentation across the board.

For more details on this release’s changes, take a look at the Alpha 3 ship list issue, as well as the closed Alpha 3 milestone.

Anxious to jump in? Then head to the v4 alpha docs!

Be sure to join our official Slack room! and dive into our issue tracker with bug reports, questions, and general feedback whenever possible.

What’s next?

More exploration, more bugfixes, more docs updates, and, best of all, more alphas. The daily grind keeps us super busy these days, but we’ll do our best to keep the momentum going. Stay tuned!

<3,
@mdo & team

Bootstrap 3.3.7 released

Bootstrap 3.3.7 is here! We’ve had over 220 commits and 80 closed issues and pull requests from nearly 30 contributors since our last release. Woohoo!

Here are some of the highlights:

  • Added support for jQuery 3.
  • Added inline source files into sourcemap eliminating 4xx errors on the CDN.
  • Updated several devDependencies and gems.
  • Removed unsupported vendor prefixes for @viewport.

For a complete breakdown, read the release changelog and the v3.3.7 milestone.

Download Bootstrap

Download the latest release—source code, compiled assets, and documentation—as a ZIP file directly from GitHub:

Download Bootstrap 3.3.7

Hit the project repository or Sass repository for more options. Also, remember we’re available on npm, too.

Bootstrap CDN

After reviewing the changelog, update your CDN links to point to the v3.3.7 files:

<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">

<!-- Optional theme -->
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">

<!-- Latest compiled and minified JavaScript -->
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>

<3,

@cvrebert & team

New Bootstrap 4 alpha

Bootstrap 4 alpha 2 is now available. Since our last release, nearly 100 people have pushed over 900 commits to v4 and we’ve closed over 400 issues and pull requests. Those numbers are outrageously awesome to see, and we’ve still got a ton of work ahead of us this year for v4.

As mentioned in our last post, the general plan for v4’s development starts with a few alpha releases. We’re a little behind on that, but should be getting caught up as the year winds down. Expect another alpha or two this month to really round things out.

Here’s a look at a handful of the changes since our last alpha:

  • Overhauled spacing utilities to use a numerical tiering (to avoid confusion with grid tiers).
  • Continued refactoring efforts to replace markup-specific selectors with classes across several components (including pagination, lists, and more). Still more to do here with additional components.
  • Reverted media queries and grid containers from rems to pixels as viewports are not affected by font-size. See #17403 for details. We’ve got a ton of grid work left, too. Feel free to follow along with #18471.
  • Reverted .0625rem width borders to 1px for more consistent component borders that avoid zoom and font-size bugs across browsers.
  • Renamed .img-responsive to .img-fluid to avoid future confusion on the various responsive image solutions out there.
  • Replaced ZeroClipboard with clipboard.js for Flash-independent copy buttons.
  • Inputs and buttons now share the same border variable to ensure components are always sized similarly.
  • Updated all pseudo-element selectors to use the spec’s preferred double colon (e.g., ::before as opposed to :before).
  • Cards now have outline variants and mixins to support extending base classes further.
  • Utility classes for floats and text alignment now have responsive ranges. This means we’ve dropped the non-responsive classes to avoid duplication.
  • Added support for jQuery 2.
  • And hundreds more Sass improvements, bug fixes, documentation updates, and more.

We highly encourage folks to skim through the second alpha’s milestone on GitHub for a better idea of what’s changed across the board. You can also follow along with other v4 efforts with the v4 label on our issue tracker.

Ready to dive in? Then head to the v4 alpha docs!

Be sure to join our official Slack room! and dive into our issue tracker with bug reports, questions, and general feedback whenever possible.

<3,

@mdo & team

Bootstrap 3.3.6 released

Bootstrap 3.3.6 is here! It’s a long overdue release that addresses dozens of CSS bug fixes and documentation updates. We’ve had over 180 commits and 100 closed issues and pull requests from nearly 30 contributors since our last release. Woohoo!

Here are some of the highlights:

  • Added support for an official NuGet package (yeah, it’s an old one, but folks still use it!).
  • Enabled source maps for our compiled minified CSS.
  • Updated over a dozen browser bug entries as browsers continue to fix bugs (aww yeah!).
  • Updated several JavaScript plugin docs to clarify usage.
  • Made local documentation development easier with a local jQuery fallback.

For a complete breakdown, read the release changelog and the v3.3.6 milestone.

Download Bootstrap

Download the latest release—source code, compiled assets, and documentation—as a ZIP file directly from GitHub:

Download Bootstrap 3.3.6

Hit the project repository or Sass repository for more options. Also, remember we’re available on npm, too.

Bootstrap CDN

After reviewing the changelog, update your CDN links to point to the v3.3.6 files:

<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">

<!-- Optional theme -->
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap-theme.min.css">

<!-- Latest compiled and minified JavaScript -->
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>

<3,

@mdo & team