Skip to content
Snippets Groups Projects
Commit 893d8799 authored by Chris Hallberg's avatar Chris Hallberg
Browse files

Bootstrap upgrade to 3.3.6.

parent 2a7ff113
No related merge requests found
Showing
with 159 additions and 61 deletions
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
font-weight: @badge-font-weight; font-weight: @badge-font-weight;
color: @badge-color; color: @badge-color;
line-height: @badge-line-height; line-height: @badge-line-height;
vertical-align: baseline; vertical-align: middle;
white-space: nowrap; white-space: nowrap;
text-align: center; text-align: center;
background-color: @badge-bg; background-color: @badge-bg;
......
/*!
* Bootstrap v3.3.6 (http://getbootstrap.com)
* Copyright 2011-2015 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
// Core variables and mixins // Core variables and mixins
@import "variables.less"; @import "variables.less";
@import "mixins.less"; @import "mixins.less";
......
...@@ -36,6 +36,7 @@ ...@@ -36,6 +36,7 @@
margin-left: -5px; // Offset the first child's margin margin-left: -5px; // Offset the first child's margin
&:extend(.clearfix all); &:extend(.clearfix all);
.btn,
.btn-group, .btn-group,
.input-group { .input-group {
float: left; float: left;
...@@ -172,12 +173,12 @@ ...@@ -172,12 +173,12 @@
border-radius: 0; border-radius: 0;
} }
&:first-child:not(:last-child) { &:first-child:not(:last-child) {
border-top-right-radius: @border-radius-base; .border-top-radius(@btn-border-radius-base);
.border-bottom-radius(0); .border-bottom-radius(0);
} }
&:last-child:not(:first-child) { &:last-child:not(:first-child) {
border-bottom-left-radius: @border-radius-base;
.border-top-radius(0); .border-top-radius(0);
.border-bottom-radius(@btn-border-radius-base);
} }
} }
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214
border: 1px solid transparent; border: 1px solid transparent;
white-space: nowrap; white-space: nowrap;
.button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @border-radius-base); .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @btn-border-radius-base);
.user-select(none); .user-select(none);
&, &,
...@@ -47,10 +47,16 @@ ...@@ -47,10 +47,16 @@
&[disabled], &[disabled],
fieldset[disabled] & { fieldset[disabled] & {
cursor: @cursor-disabled; cursor: @cursor-disabled;
pointer-events: none; // Future-proof disabling of clicks
.opacity(.65); .opacity(.65);
.box-shadow(none); .box-shadow(none);
} }
a& {
&.disabled,
fieldset[disabled] & {
pointer-events: none; // Future-proof disabling of clicks on `<a>` elements
}
}
} }
...@@ -126,14 +132,14 @@ ...@@ -126,14 +132,14 @@
.btn-lg { .btn-lg {
// line-height: ensure even-numbered height of button next to large input // line-height: ensure even-numbered height of button next to large input
.button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large); .button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @btn-border-radius-large);
} }
.btn-sm { .btn-sm {
// line-height: ensure proper height of button next to small input // line-height: ensure proper height of button next to small input
.button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small); .button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small);
} }
.btn-xs { .btn-xs {
.button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @border-radius-small); .button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small);
} }
......
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
@media all and (transform-3d), (-webkit-transform-3d) { @media all and (transform-3d), (-webkit-transform-3d) {
.transition-transform(~'0.6s ease-in-out'); .transition-transform(~'0.6s ease-in-out');
.backface-visibility(~'hidden'); .backface-visibility(~'hidden');
.perspective(1000); .perspective(1000px);
&.next, &.next,
&.active.right { &.active.right {
...@@ -101,6 +101,7 @@ ...@@ -101,6 +101,7 @@
color: @carousel-control-color; color: @carousel-control-color;
text-align: center; text-align: center;
text-shadow: @carousel-text-shadow; text-shadow: @carousel-text-shadow;
background-color: rgba(0, 0, 0, 0); // Fix IE9 click-thru bug
// We can't have this transition here because WebKit cancels the carousel // We can't have this transition here because WebKit cancels the carousel
// animation if you trip this while in the middle of another animation. // animation if you trip this while in the middle of another animation.
...@@ -130,6 +131,7 @@ ...@@ -130,6 +131,7 @@
.glyphicon-chevron-right { .glyphicon-chevron-right {
position: absolute; position: absolute;
top: 50%; top: 50%;
margin-top: -10px;
z-index: 5; z-index: 5;
display: inline-block; display: inline-block;
} }
...@@ -147,7 +149,6 @@ ...@@ -147,7 +149,6 @@
.icon-next { .icon-next {
width: 20px; width: 20px;
height: 20px; height: 20px;
margin-top: -10px;
line-height: 1; line-height: 1;
font-family: serif; font-family: serif;
} }
...@@ -240,18 +241,18 @@ ...@@ -240,18 +241,18 @@
.glyphicon-chevron-right, .glyphicon-chevron-right,
.icon-prev, .icon-prev,
.icon-next { .icon-next {
width: 30px; width: (@carousel-control-font-size * 1.5);
height: 30px; height: (@carousel-control-font-size * 1.5);
margin-top: -15px; margin-top: (@carousel-control-font-size / -2);
font-size: 30px; font-size: (@carousel-control-font-size * 1.5);
} }
.glyphicon-chevron-left, .glyphicon-chevron-left,
.icon-prev { .icon-prev {
margin-left: -15px; margin-left: (@carousel-control-font-size / -2);
} }
.glyphicon-chevron-right, .glyphicon-chevron-right,
.icon-next { .icon-next {
margin-right: -15px; margin-right: (@carousel-control-font-size / -2);
} }
} }
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
margin-left: 2px; margin-left: 2px;
vertical-align: middle; vertical-align: middle;
border-top: @caret-width-base dashed; border-top: @caret-width-base dashed;
border-top: @caret-width-base solid ~"\9"; // IE8
border-right: @caret-width-base solid transparent; border-right: @caret-width-base solid transparent;
border-left: @caret-width-base solid transparent; border-left: @caret-width-base solid transparent;
} }
...@@ -184,7 +185,8 @@ ...@@ -184,7 +185,8 @@
// Reverse the caret // Reverse the caret
.caret { .caret {
border-top: 0; border-top: 0;
border-bottom: @caret-width-base solid; border-bottom: @caret-width-base dashed;
border-bottom: @caret-width-base solid ~"\9"; // IE8
content: ""; content: "";
} }
// Different positioning for bottom up menu // Different positioning for bottom up menu
......
...@@ -56,7 +56,6 @@ input[type="checkbox"] { ...@@ -56,7 +56,6 @@ input[type="checkbox"] {
line-height: normal; line-height: normal;
} }
// Set the height of file controls to match text inputs
input[type="file"] { input[type="file"] {
display: block; display: block;
} }
...@@ -133,6 +132,12 @@ output { ...@@ -133,6 +132,12 @@ output {
// Placeholder // Placeholder
.placeholder(); .placeholder();
// Unstyle the caret on `<select>`s in IE10+.
&::-ms-expand {
border: 0;
background-color: transparent;
}
// Disabled and read-only inputs // Disabled and read-only inputs
// //
// HTML5 says that controls under a fieldset > legend:first-child won't be // HTML5 says that controls under a fieldset > legend:first-child won't be
...@@ -175,13 +180,17 @@ input[type="search"] { ...@@ -175,13 +180,17 @@ input[type="search"] {
// text within the input to become vertically misaligned. As a workaround, we // text within the input to become vertically misaligned. As a workaround, we
// set a pixel line-height that matches the given height of the input, but only // set a pixel line-height that matches the given height of the input, but only
// for Safari. See https://bugs.webkit.org/show_bug.cgi?id=139848 // for Safari. See https://bugs.webkit.org/show_bug.cgi?id=139848
//
// Note that as of 8.3, iOS doesn't support `datetime` or `week`.
@media screen and (-webkit-min-device-pixel-ratio: 0) { @media screen and (-webkit-min-device-pixel-ratio: 0) {
input[type="date"], input[type="date"],
input[type="time"], input[type="time"],
input[type="datetime-local"], input[type="datetime-local"],
input[type="month"] { input[type="month"] {
line-height: @input-height-base; &.form-control {
line-height: @input-height-base;
}
&.input-sm, &.input-sm,
.input-group-sm & { .input-group-sm & {
...@@ -322,14 +331,26 @@ input[type="checkbox"] { ...@@ -322,14 +331,26 @@ input[type="checkbox"] {
} }
.form-group-sm { .form-group-sm {
.form-control { .form-control {
.input-size(@input-height-small; @padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @input-border-radius-small);
}
.form-control-static {
height: @input-height-small; height: @input-height-small;
padding: @padding-small-vertical @padding-small-horizontal; padding: @padding-small-vertical @padding-small-horizontal;
font-size: @font-size-small; font-size: @font-size-small;
line-height: @line-height-small; line-height: @line-height-small;
border-radius: @input-border-radius-small;
}
select.form-control {
height: @input-height-small;
line-height: @input-height-small;
}
textarea.form-control,
select[multiple].form-control {
height: auto;
}
.form-control-static {
height: @input-height-small;
min-height: (@line-height-computed + @font-size-small); min-height: (@line-height-computed + @font-size-small);
padding: (@padding-small-vertical + 1) @padding-small-horizontal;
font-size: @font-size-small;
line-height: @line-height-small;
} }
} }
...@@ -338,14 +359,26 @@ input[type="checkbox"] { ...@@ -338,14 +359,26 @@ input[type="checkbox"] {
} }
.form-group-lg { .form-group-lg {
.form-control { .form-control {
.input-size(@input-height-large; @padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @input-border-radius-large);
}
.form-control-static {
height: @input-height-large; height: @input-height-large;
padding: @padding-large-vertical @padding-large-horizontal; padding: @padding-large-vertical @padding-large-horizontal;
font-size: @font-size-large; font-size: @font-size-large;
line-height: @line-height-large; line-height: @line-height-large;
border-radius: @input-border-radius-large;
}
select.form-control {
height: @input-height-large;
line-height: @input-height-large;
}
textarea.form-control,
select[multiple].form-control {
height: auto;
}
.form-control-static {
height: @input-height-large;
min-height: (@line-height-computed + @font-size-large); min-height: (@line-height-computed + @font-size-large);
padding: (@padding-large-vertical + 1) @padding-large-horizontal;
font-size: @font-size-large;
line-height: @line-height-large;
} }
} }
...@@ -376,12 +409,16 @@ input[type="checkbox"] { ...@@ -376,12 +409,16 @@ input[type="checkbox"] {
text-align: center; text-align: center;
pointer-events: none; pointer-events: none;
} }
.input-lg + .form-control-feedback { .input-lg + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
width: @input-height-large; width: @input-height-large;
height: @input-height-large; height: @input-height-large;
line-height: @input-height-large; line-height: @input-height-large;
} }
.input-sm + .form-control-feedback { .input-sm + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
width: @input-height-small; width: @input-height-small;
height: @input-height-small; height: @input-height-small;
line-height: @input-height-small; line-height: @input-height-small;
...@@ -402,10 +439,10 @@ input[type="checkbox"] { ...@@ -402,10 +439,10 @@ input[type="checkbox"] {
.has-feedback label { .has-feedback label {
& ~ .form-control-feedback { & ~ .form-control-feedback {
top: (@line-height-computed + 5); // Height of the `label` and its margin top: (@line-height-computed + 5); // Height of the `label` and its margin
} }
&.sr-only ~ .form-control-feedback { &.sr-only ~ .form-control-feedback {
top: 0; top: 0;
} }
} }
...@@ -550,7 +587,7 @@ input[type="checkbox"] { ...@@ -550,7 +587,7 @@ input[type="checkbox"] {
// Reposition the icon because it's now within a grid column and columns have // Reposition the icon because it's now within a grid column and columns have
// `position: relative;` on them. Also accounts for the grid gutter padding. // `position: relative;` on them. Also accounts for the grid gutter padding.
.has-feedback .form-control-feedback { .has-feedback .form-control-feedback {
right: (@grid-gutter-width / 2); right: floor((@grid-gutter-width / 2));
} }
// Form group sizes // Form group sizes
...@@ -560,7 +597,8 @@ input[type="checkbox"] { ...@@ -560,7 +597,8 @@ input[type="checkbox"] {
.form-group-lg { .form-group-lg {
@media (min-width: @screen-sm-min) { @media (min-width: @screen-sm-min) {
.control-label { .control-label {
padding-top: ((@padding-large-vertical * @line-height-large) + 1); padding-top: (@padding-large-vertical + 1);
font-size: @font-size-large;
} }
} }
} }
...@@ -568,6 +606,7 @@ input[type="checkbox"] { ...@@ -568,6 +606,7 @@ input[type="checkbox"] {
@media (min-width: @screen-sm-min) { @media (min-width: @screen-sm-min) {
.control-label { .control-label {
padding-top: (@padding-small-vertical + 1); padding-top: (@padding-small-vertical + 1);
font-size: @font-size-small;
} }
} }
} }
......
...@@ -32,8 +32,8 @@ ...@@ -32,8 +32,8 @@
} }
// Individual icons // Individual icons
.glyphicon-asterisk { &:before { content: "\2a"; } } .glyphicon-asterisk { &:before { content: "\002a"; } }
.glyphicon-plus { &:before { content: "\2b"; } } .glyphicon-plus { &:before { content: "\002b"; } }
.glyphicon-euro, .glyphicon-euro,
.glyphicon-eur { &:before { content: "\20ac"; } } .glyphicon-eur { &:before { content: "\20ac"; } }
.glyphicon-minus { &:before { content: "\2212"; } } .glyphicon-minus { &:before { content: "\2212"; } }
......
...@@ -29,6 +29,10 @@ ...@@ -29,6 +29,10 @@
width: 100%; width: 100%;
margin-bottom: 0; margin-bottom: 0;
&:focus {
z-index: 3;
}
} }
} }
...@@ -79,18 +83,18 @@ ...@@ -79,18 +83,18 @@
text-align: center; text-align: center;
background-color: @input-group-addon-bg; background-color: @input-group-addon-bg;
border: 1px solid @input-group-addon-border-color; border: 1px solid @input-group-addon-border-color;
border-radius: @border-radius-base; border-radius: @input-border-radius;
// Sizing // Sizing
&.input-sm { &.input-sm {
padding: @padding-small-vertical @padding-small-horizontal; padding: @padding-small-vertical @padding-small-horizontal;
font-size: @font-size-small; font-size: @font-size-small;
border-radius: @border-radius-small; border-radius: @input-border-radius-small;
} }
&.input-lg { &.input-lg {
padding: @padding-large-vertical @padding-large-horizontal; padding: @padding-large-vertical @padding-large-horizontal;
font-size: @font-size-large; font-size: @font-size-large;
border-radius: @border-radius-large; border-radius: @input-border-radius-large;
} }
// Nuke default margins from checkboxes and radios to vertically center within. // Nuke default margins from checkboxes and radios to vertically center within.
...@@ -160,6 +164,7 @@ ...@@ -160,6 +164,7 @@
&:last-child { &:last-child {
> .btn, > .btn,
> .btn-group { > .btn-group {
z-index: 2;
margin-left: -1px; margin-left: -1px;
} }
} }
......
...@@ -4,7 +4,8 @@ ...@@ -4,7 +4,8 @@
.jumbotron { .jumbotron {
padding: @jumbotron-padding (@jumbotron-padding / 2); padding-top: @jumbotron-padding;
padding-bottom: @jumbotron-padding;
margin-bottom: @jumbotron-padding; margin-bottom: @jumbotron-padding;
color: @jumbotron-color; color: @jumbotron-color;
background-color: @jumbotron-bg; background-color: @jumbotron-bg;
...@@ -27,6 +28,8 @@ ...@@ -27,6 +28,8 @@
.container &, .container &,
.container-fluid & { .container-fluid & {
border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container
padding-left: (@grid-gutter-width / 2);
padding-right: (@grid-gutter-width / 2);
} }
.container { .container {
...@@ -34,7 +37,8 @@ ...@@ -34,7 +37,8 @@
} }
@media screen and (min-width: @screen-sm-min) { @media screen and (min-width: @screen-sm-min) {
padding: (@jumbotron-padding * 1.6) 0; padding-top: (@jumbotron-padding * 1.6);
padding-bottom: (@jumbotron-padding * 1.6);
.container &, .container &,
.container-fluid & { .container-fluid & {
...@@ -44,7 +48,7 @@ ...@@ -44,7 +48,7 @@
h1, h1,
.h1 { .h1 {
font-size: (@font-size-base * 4.5); font-size: @jumbotron-heading-font-size;
} }
} }
} }
...@@ -38,12 +38,13 @@ ...@@ -38,12 +38,13 @@
} }
// Linked list items // Interactive list items
// //
// Use anchor elements instead of `li`s or `div`s to create linked list items. // Use anchor or button elements instead of `li`s or `div`s to create interactive items.
// Includes an extra `.active` modifier class for showing selected items. // Includes an extra `.active` modifier class for showing selected items.
a.list-group-item { a.list-group-item,
button.list-group-item {
color: @list-group-link-color; color: @list-group-link-color;
.list-group-item-heading { .list-group-item-heading {
...@@ -59,6 +60,11 @@ a.list-group-item { ...@@ -59,6 +60,11 @@ a.list-group-item {
} }
} }
button.list-group-item {
width: 100%;
text-align: left;
}
.list-group-item { .list-group-item {
// Disabled state // Disabled state
&.disabled, &.disabled,
......
...@@ -19,6 +19,11 @@ ...@@ -19,6 +19,11 @@
.media-object { .media-object {
display: block; display: block;
// Fix collapse in webkit from max-width: 100% and display: table-cell.
&.img-thumbnail {
max-width: none;
}
} }
.media-right, .media-right,
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
@import "mixins/responsive-visibility.less"; @import "mixins/responsive-visibility.less";
@import "mixins/size.less"; @import "mixins/size.less";
@import "mixins/tab-focus.less"; @import "mixins/tab-focus.less";
@import "mixins/reset-text.less";
@import "mixins/text-emphasis.less"; @import "mixins/text-emphasis.less";
@import "mixins/text-overflow.less"; @import "mixins/text-overflow.less";
@import "mixins/vendor-prefixes.less"; @import "mixins/vendor-prefixes.less";
......
...@@ -2,7 +2,8 @@ ...@@ -2,7 +2,8 @@
.bg-variant(@color) { .bg-variant(@color) {
background-color: @color; background-color: @color;
a&:hover { a&:hover,
a&:focus {
background-color: darken(@color, 10%); background-color: darken(@color, 10%);
} }
} }
...@@ -8,15 +8,31 @@ ...@@ -8,15 +8,31 @@
background-color: @background; background-color: @background;
border-color: @border; border-color: @border;
&:hover,
&:focus, &:focus,
&.focus, &.focus {
color: @color;
background-color: darken(@background, 10%);
border-color: darken(@border, 25%);
}
&:hover {
color: @color;
background-color: darken(@background, 10%);
border-color: darken(@border, 12%);
}
&:active, &:active,
&.active, &.active,
.open > .dropdown-toggle& { .open > .dropdown-toggle& {
color: @color; color: @color;
background-color: darken(@background, 10%); background-color: darken(@background, 10%);
border-color: darken(@border, 12%); border-color: darken(@border, 12%);
&:hover,
&:focus,
&.focus {
color: @color;
background-color: darken(@background, 17%);
border-color: darken(@border, 25%);
}
} }
&:active, &:active,
&.active, &.active,
...@@ -26,12 +42,9 @@ ...@@ -26,12 +42,9 @@
&.disabled, &.disabled,
&[disabled], &[disabled],
fieldset[disabled] & { fieldset[disabled] & {
&,
&:hover, &:hover,
&:focus, &:focus,
&.focus, &.focus {
&:active,
&.active {
background-color: @background; background-color: @background;
border-color: @border; border-color: @border;
} }
......
...@@ -19,8 +19,8 @@ ...@@ -19,8 +19,8 @@
// Prevent columns from collapsing when empty // Prevent columns from collapsing when empty
min-height: 1px; min-height: 1px;
// Inner gutter via padding // Inner gutter via padding
padding-left: (@grid-gutter-width / 2); padding-left: ceil((@grid-gutter-width / 2));
padding-right: (@grid-gutter-width / 2); padding-right: floor((@grid-gutter-width / 2));
} }
} }
.col(1); // kickstart it .col(1); // kickstart it
......
...@@ -6,15 +6,15 @@ ...@@ -6,15 +6,15 @@
.container-fixed(@gutter: @grid-gutter-width) { .container-fixed(@gutter: @grid-gutter-width) {
margin-right: auto; margin-right: auto;
margin-left: auto; margin-left: auto;
padding-left: (@gutter / 2); padding-left: floor((@gutter / 2));
padding-right: (@gutter / 2); padding-right: ceil((@gutter / 2));
&:extend(.clearfix all); &:extend(.clearfix all);
} }
// Creates a wrapper for a series of columns // Creates a wrapper for a series of columns
.make-row(@gutter: @grid-gutter-width) { .make-row(@gutter: @grid-gutter-width) {
margin-left: (@gutter / -2); margin-left: ceil((@gutter / -2));
margin-right: (@gutter / -2); margin-right: floor((@gutter / -2));
&:extend(.clearfix all); &:extend(.clearfix all);
} }
......
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