From d56a07b2cac69ba311985f19d385089afd87295e Mon Sep 17 00:00:00 2001 From: Sahat Yalkabov Date: Wed, 2 Jul 2014 00:57:48 -0400 Subject: [PATCH] bootstrap 3.2 upgrade --- public/css/lib/bootstrap/.csscomb.json | 297 +++++ public/css/lib/bootstrap/.csslintrc | 19 + public/css/lib/bootstrap/alerts.less | 7 +- public/css/lib/bootstrap/badges.less | 38 +- public/css/lib/bootstrap/bootstrap.less | 5 +- public/css/lib/bootstrap/button-groups.less | 58 +- public/css/lib/bootstrap/buttons.less | 16 +- public/css/lib/bootstrap/carousel.less | 32 +- public/css/lib/bootstrap/code.less | 7 +- .../lib/bootstrap/component-animations.less | 10 +- public/css/lib/bootstrap/dropdowns.less | 2 + public/css/lib/bootstrap/forms.less | 205 +++- public/css/lib/bootstrap/glyphicons.less | 10 +- public/css/lib/bootstrap/grid.less | 8 + public/css/lib/bootstrap/input-groups.less | 6 +- public/css/lib/bootstrap/jumbotron.less | 4 + public/css/lib/bootstrap/labels.less | 2 +- public/css/lib/bootstrap/list-group.less | 23 +- public/css/lib/bootstrap/mixins.less | 1003 +---------------- public/css/lib/bootstrap/mixins/alerts.less | 14 + .../bootstrap/mixins/background-variant.less | 8 + .../lib/bootstrap/mixins/border-radius.less | 18 + public/css/lib/bootstrap/mixins/buttons.less | 50 + .../lib/bootstrap/mixins/center-block.less | 7 + public/css/lib/bootstrap/mixins/clearfix.less | 22 + public/css/lib/bootstrap/mixins/forms.less | 81 ++ .../css/lib/bootstrap/mixins/gradients.less | 59 + .../lib/bootstrap/mixins/grid-framework.less | 91 ++ public/css/lib/bootstrap/mixins/grid.less | 122 ++ .../css/lib/bootstrap/mixins/hide-text.less | 21 + public/css/lib/bootstrap/mixins/image.less | 34 + public/css/lib/bootstrap/mixins/labels.less | 12 + .../css/lib/bootstrap/mixins/list-group.less | 29 + .../css/lib/bootstrap/mixins/nav-divider.less | 10 + .../bootstrap/mixins/nav-vertical-align.less | 9 + public/css/lib/bootstrap/mixins/opacity.less | 8 + .../css/lib/bootstrap/mixins/pagination.less | 23 + public/css/lib/bootstrap/mixins/panels.less | 24 + .../lib/bootstrap/mixins/progress-bar.less | 10 + .../lib/bootstrap/mixins/reset-filter.less | 8 + public/css/lib/bootstrap/mixins/resize.less | 6 + .../mixins/responsive-visibility.less | 15 + public/css/lib/bootstrap/mixins/size.less | 10 + .../css/lib/bootstrap/mixins/tab-focus.less | 9 + .../css/lib/bootstrap/mixins/table-row.less | 28 + .../lib/bootstrap/mixins/text-emphasis.less | 8 + .../lib/bootstrap/mixins/text-overflow.less | 8 + .../lib/bootstrap/mixins/vendor-prefixes.less | 224 ++++ public/css/lib/bootstrap/modals.less | 52 +- public/css/lib/bootstrap/navbar.less | 92 +- public/css/lib/bootstrap/navs.less | 2 +- public/css/lib/bootstrap/normalize.less | 40 +- public/css/lib/bootstrap/panels.less | 28 +- public/css/lib/bootstrap/popovers.less | 23 +- public/css/lib/bootstrap/progress-bars.less | 29 +- .../css/lib/bootstrap/responsive-embed.less | 34 + .../lib/bootstrap/responsive-utilities.less | 107 +- public/css/lib/bootstrap/scaffolding.less | 18 +- public/css/lib/bootstrap/tables.less | 8 +- public/css/lib/bootstrap/theme.less | 11 + public/css/lib/bootstrap/thumbnails.less | 4 +- public/css/lib/bootstrap/type.less | 108 +- public/css/lib/bootstrap/utilities.less | 1 + public/css/lib/bootstrap/variables.less | 845 +++++++------- 64 files changed, 2430 insertions(+), 1692 deletions(-) create mode 100644 public/css/lib/bootstrap/.csscomb.json create mode 100644 public/css/lib/bootstrap/.csslintrc create mode 100644 public/css/lib/bootstrap/mixins/alerts.less create mode 100644 public/css/lib/bootstrap/mixins/background-variant.less create mode 100644 public/css/lib/bootstrap/mixins/border-radius.less create mode 100644 public/css/lib/bootstrap/mixins/buttons.less create mode 100644 public/css/lib/bootstrap/mixins/center-block.less create mode 100644 public/css/lib/bootstrap/mixins/clearfix.less create mode 100644 public/css/lib/bootstrap/mixins/forms.less create mode 100644 public/css/lib/bootstrap/mixins/gradients.less create mode 100644 public/css/lib/bootstrap/mixins/grid-framework.less create mode 100644 public/css/lib/bootstrap/mixins/grid.less create mode 100644 public/css/lib/bootstrap/mixins/hide-text.less create mode 100644 public/css/lib/bootstrap/mixins/image.less create mode 100644 public/css/lib/bootstrap/mixins/labels.less create mode 100644 public/css/lib/bootstrap/mixins/list-group.less create mode 100644 public/css/lib/bootstrap/mixins/nav-divider.less create mode 100644 public/css/lib/bootstrap/mixins/nav-vertical-align.less create mode 100644 public/css/lib/bootstrap/mixins/opacity.less create mode 100644 public/css/lib/bootstrap/mixins/pagination.less create mode 100644 public/css/lib/bootstrap/mixins/panels.less create mode 100644 public/css/lib/bootstrap/mixins/progress-bar.less create mode 100644 public/css/lib/bootstrap/mixins/reset-filter.less create mode 100644 public/css/lib/bootstrap/mixins/resize.less create mode 100644 public/css/lib/bootstrap/mixins/responsive-visibility.less create mode 100644 public/css/lib/bootstrap/mixins/size.less create mode 100644 public/css/lib/bootstrap/mixins/tab-focus.less create mode 100644 public/css/lib/bootstrap/mixins/table-row.less create mode 100644 public/css/lib/bootstrap/mixins/text-emphasis.less create mode 100644 public/css/lib/bootstrap/mixins/text-overflow.less create mode 100644 public/css/lib/bootstrap/mixins/vendor-prefixes.less create mode 100644 public/css/lib/bootstrap/responsive-embed.less diff --git a/public/css/lib/bootstrap/.csscomb.json b/public/css/lib/bootstrap/.csscomb.json new file mode 100644 index 0000000000..8456e41df2 --- /dev/null +++ b/public/css/lib/bootstrap/.csscomb.json @@ -0,0 +1,297 @@ +{ + "always-semicolon": true, + "block-indent": 2, + "colon-space": [0, 1], + "color-case": "lower", + "color-shorthand": true, + "combinator-space": true, + "element-case": "lower", + "eof-newline": true, + "leading-zero": false, + "remove-empty-rulesets": true, + "rule-indent": 2, + "stick-brace": " ", + "strip-spaces": true, + "unitless-zero": true, + "vendor-prefix-align": true, + "sort-order": [ + [ + "position", + "top", + "right", + "bottom", + "left", + "z-index", + "display", + "float", + "width", + "min-width", + "max-width", + "height", + "min-height", + "max-height", + "-webkit-box-sizing", + "-moz-box-sizing", + "box-sizing", + "-webkit-appearance", + "padding", + "padding-top", + "padding-right", + "padding-bottom", + "padding-left", + "margin", + "margin-top", + "margin-right", + "margin-bottom", + "margin-left", + "overflow", + "overflow-x", + "overflow-y", + "-webkit-overflow-scrolling", + "-ms-overflow-x", + "-ms-overflow-y", + "-ms-overflow-style", + "clip", + "clear", + "font", + "font-family", + "font-size", + "font-style", + "font-weight", + "font-variant", + "font-size-adjust", + "font-stretch", + "font-effect", + "font-emphasize", + "font-emphasize-position", + "font-emphasize-style", + "font-smooth", + "-webkit-hyphens", + "-moz-hyphens", + "hyphens", + "line-height", + "color", + "text-align", + "-webkit-text-align-last", + "-moz-text-align-last", + "-ms-text-align-last", + "text-align-last", + "text-emphasis", + "text-emphasis-color", + "text-emphasis-style", + "text-emphasis-position", + "text-decoration", + "text-indent", + "text-justify", + "text-outline", + "-ms-text-overflow", + "text-overflow", + "text-overflow-ellipsis", + "text-overflow-mode", + "text-shadow", + "text-transform", + "text-wrap", + "-webkit-text-size-adjust", + "-ms-text-size-adjust", + "letter-spacing", + "-ms-word-break", + "word-break", + "word-spacing", + "-ms-word-wrap", + "word-wrap", + "-moz-tab-size", + "-o-tab-size", + "tab-size", + "white-space", + "vertical-align", + "list-style", + "list-style-position", + "list-style-type", + "list-style-image", + "pointer-events", + "cursor", + "visibility", + "zoom", + "flex-direction", + "flex-order", + "flex-pack", + "flex-align", + "table-layout", + "empty-cells", + "caption-side", + "border-spacing", + "border-collapse", + "content", + "quotes", + "counter-reset", + "counter-increment", + "resize", + "-webkit-user-select", + "-moz-user-select", + "-ms-user-select", + "-o-user-select", + "user-select", + "nav-index", + "nav-up", + "nav-right", + "nav-down", + "nav-left", + "background", + "background-color", + "background-image", + "-ms-filter:\\'progid:DXImageTransform.Microsoft.gradient", + "filter:progid:DXImageTransform.Microsoft.gradient", + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader", + "filter", + "background-repeat", + "background-attachment", + "background-position", + "background-position-x", + "background-position-y", + "-webkit-background-clip", + "-moz-background-clip", + "background-clip", + "background-origin", + "-webkit-background-size", + "-moz-background-size", + "-o-background-size", + "background-size", + "border", + "border-color", + "border-style", + "border-width", + "border-top", + "border-top-color", + "border-top-style", + "border-top-width", + "border-right", + "border-right-color", + "border-right-style", + "border-right-width", + "border-bottom", + "border-bottom-color", + "border-bottom-style", + "border-bottom-width", + "border-left", + "border-left-color", + "border-left-style", + "border-left-width", + "border-radius", + "border-top-left-radius", + "border-top-right-radius", + "border-bottom-right-radius", + "border-bottom-left-radius", + "-webkit-border-image", + "-moz-border-image", + "-o-border-image", + "border-image", + "-webkit-border-image-source", + "-moz-border-image-source", + "-o-border-image-source", + "border-image-source", + "-webkit-border-image-slice", + "-moz-border-image-slice", + "-o-border-image-slice", + "border-image-slice", + "-webkit-border-image-width", + "-moz-border-image-width", + "-o-border-image-width", + "border-image-width", + "-webkit-border-image-outset", + "-moz-border-image-outset", + "-o-border-image-outset", + "border-image-outset", + "-webkit-border-image-repeat", + "-moz-border-image-repeat", + "-o-border-image-repeat", + "border-image-repeat", + "outline", + "outline-width", + "outline-style", + "outline-color", + "outline-offset", + "-webkit-box-shadow", + "-moz-box-shadow", + "box-shadow", + "filter:progid:DXImageTransform.Microsoft.Alpha(Opacity", + "-ms-filter:\\'progid:DXImageTransform.Microsoft.Alpha", + "opacity", + "-ms-interpolation-mode", + "-webkit-transition", + "-moz-transition", + "-ms-transition", + "-o-transition", + "transition", + "-webkit-transition-delay", + "-moz-transition-delay", + "-ms-transition-delay", + "-o-transition-delay", + "transition-delay", + "-webkit-transition-timing-function", + "-moz-transition-timing-function", + "-ms-transition-timing-function", + "-o-transition-timing-function", + "transition-timing-function", + "-webkit-transition-duration", + "-moz-transition-duration", + "-ms-transition-duration", + "-o-transition-duration", + "transition-duration", + "-webkit-transition-property", + "-moz-transition-property", + "-ms-transition-property", + "-o-transition-property", + "transition-property", + "-webkit-transform", + "-moz-transform", + "-ms-transform", + "-o-transform", + "transform", + "-webkit-transform-origin", + "-moz-transform-origin", + "-ms-transform-origin", + "-o-transform-origin", + "transform-origin", + "-webkit-animation", + "-moz-animation", + "-ms-animation", + "-o-animation", + "animation", + "-webkit-animation-name", + "-moz-animation-name", + "-ms-animation-name", + "-o-animation-name", + "animation-name", + "-webkit-animation-duration", + "-moz-animation-duration", + "-ms-animation-duration", + "-o-animation-duration", + "animation-duration", + "-webkit-animation-play-state", + "-moz-animation-play-state", + "-ms-animation-play-state", + "-o-animation-play-state", + "animation-play-state", + "-webkit-animation-timing-function", + "-moz-animation-timing-function", + "-ms-animation-timing-function", + "-o-animation-timing-function", + "animation-timing-function", + "-webkit-animation-delay", + "-moz-animation-delay", + "-ms-animation-delay", + "-o-animation-delay", + "animation-delay", + "-webkit-animation-iteration-count", + "-moz-animation-iteration-count", + "-ms-animation-iteration-count", + "-o-animation-iteration-count", + "animation-iteration-count", + "-webkit-animation-direction", + "-moz-animation-direction", + "-ms-animation-direction", + "-o-animation-direction", + "animation-direction" + ] + ] +} diff --git a/public/css/lib/bootstrap/.csslintrc b/public/css/lib/bootstrap/.csslintrc new file mode 100644 index 0000000000..005b86236c --- /dev/null +++ b/public/css/lib/bootstrap/.csslintrc @@ -0,0 +1,19 @@ +{ + "adjoining-classes": false, + "box-sizing": false, + "box-model": false, + "compatible-vendor-prefixes": false, + "floats": false, + "font-sizes": false, + "gradients": false, + "important": false, + "known-properties": false, + "outline-none": false, + "qualified-headings": false, + "regex-selectors": false, + "shorthand": false, + "text-indent": false, + "unique-headings": false, + "universal-selector": false, + "unqualified-attributes": false +} diff --git a/public/css/lib/bootstrap/alerts.less b/public/css/lib/bootstrap/alerts.less index 3eab066294..df070b8ab2 100644 --- a/public/css/lib/bootstrap/alerts.less +++ b/public/css/lib/bootstrap/alerts.less @@ -33,12 +33,13 @@ } } -// Dismissable alerts +// Dismissible alerts // // Expand the right padding and account for the close button's positioning. -.alert-dismissable { - padding-right: (@alert-padding + 20); +.alert-dismissable, // The misspelled .alert-dismissable was deprecated in 3.2.0. +.alert-dismissible { + padding-right: (@alert-padding + 20); // Adjust close link position .close { diff --git a/public/css/lib/bootstrap/badges.less b/public/css/lib/bootstrap/badges.less index 56828cab7c..20624f30db 100644 --- a/public/css/lib/bootstrap/badges.less +++ b/public/css/lib/bootstrap/badges.less @@ -3,7 +3,7 @@ // -------------------------------------------------- -// Base classes +// Base class .badge { display: inline-block; min-width: 10px; @@ -32,24 +32,24 @@ top: 0; padding: 1px 5px; } -} -// Hover state, but only for links -a.badge { - &:hover, - &:focus { - color: @badge-link-hover-color; - text-decoration: none; - cursor: pointer; + // Hover state, but only for links + a& { + &:hover, + &:focus { + color: @badge-link-hover-color; + text-decoration: none; + cursor: pointer; + } + } + + // Account for badges in navs + a.list-group-item.active > &, + .nav-pills > .active > a > & { + color: @badge-active-color; + background-color: @badge-active-bg; + } + .nav-pills > li > a > & { + margin-left: 3px; } } - -// Account for counters in navs -a.list-group-item.active > .badge, -.nav-pills > .active > a > .badge { - color: @badge-active-color; - background-color: @badge-active-bg; -} -.nav-pills > li > a > .badge { - margin-left: 3px; -} diff --git a/public/css/lib/bootstrap/bootstrap.less b/public/css/lib/bootstrap/bootstrap.less index b368b87107..61b77474f9 100644 --- a/public/css/lib/bootstrap/bootstrap.less +++ b/public/css/lib/bootstrap/bootstrap.less @@ -2,9 +2,10 @@ @import "variables.less"; @import "mixins.less"; -// Reset +// Reset and dependencies @import "normalize.less"; @import "print.less"; +@import "glyphicons.less"; // Core CSS @import "scaffolding.less"; @@ -17,7 +18,6 @@ // Components @import "component-animations.less"; -@import "glyphicons.less"; @import "dropdowns.less"; @import "button-groups.less"; @import "input-groups.less"; @@ -35,6 +35,7 @@ @import "media.less"; @import "list-group.less"; @import "panels.less"; +@import "responsive-embed.less"; @import "wells.less"; @import "close.less"; diff --git a/public/css/lib/bootstrap/button-groups.less b/public/css/lib/bootstrap/button-groups.less index 6ded4082cb..7021ecd171 100644 --- a/public/css/lib/bootstrap/button-groups.less +++ b/public/css/lib/bootstrap/button-groups.less @@ -20,7 +20,7 @@ } &:focus { // Remove focus outline when dropdown JS adds it after closing the menu - outline: none; + outline: 0; } } } @@ -38,8 +38,7 @@ // Optional: Group multiple button groups together for a toolbar .btn-toolbar { margin-left: -5px; // Offset the first child's margin - &:extend(.clearfix all) -; + &:extend(.clearfix all); .btn-group, .input-group { @@ -63,7 +62,6 @@ .border-right-radius(0); } } - // Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it .btn-group > .btn:last-child:not(:first-child), .btn-group > .dropdown-toggle:not(:first-child) { @@ -74,18 +72,15 @@ .btn-group > .btn-group { float: left; } - .btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { border-radius: 0; } - .btn-group > .btn-group:first-child { > .btn:last-child, > .dropdown-toggle { .border-right-radius(0); } } - .btn-group > .btn-group:last-child > .btn:first-child { .border-left-radius(0); } @@ -96,24 +91,15 @@ outline: 0; } + // Sizing // // Remix the default button sizing classes into new ones for easier manipulation. -.btn-group-xs > .btn { - &:extend(.btn-xs) -; -} +.btn-group-xs > .btn { &:extend(.btn-xs); } +.btn-group-sm > .btn { &:extend(.btn-sm); } +.btn-group-lg > .btn { &:extend(.btn-lg); } -.btn-group-sm > .btn { - &:extend(.btn-sm) -; -} - -.btn-group-lg > .btn { - &:extend(.btn-lg) -; -} // Split button dropdowns // ---------------------- @@ -123,7 +109,6 @@ padding-left: 8px; padding-right: 8px; } - .btn-group > .btn-lg + .dropdown-toggle { padding-left: 12px; padding-right: 12px; @@ -132,7 +117,7 @@ // The clickable button for toggling the menu // Remove the gradient and set the same inset shadow as the :active state .btn-group.open .dropdown-toggle { - .box-shadow(inset 0 3px 5px rgba(0, 0, 0, .125)); + .box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); // Show no shadow for `.btn-link` since it has no other button styles. &.btn-link { @@ -140,22 +125,22 @@ } } + // Reposition the caret .btn .caret { margin-left: 0; } - // Carets in other button sizes .btn-lg .caret { border-width: @caret-width-large @caret-width-large 0; border-bottom-width: 0; } - // Upside down carets for .dropup .dropup .btn-lg .caret { border-width: 0 @caret-width-large @caret-width-large; } + // Vertical button groups // ---------------------- @@ -171,8 +156,7 @@ // Clear floats so dropdown menus can be properly placed > .btn-group { - &:extend(.clearfix all) - ; + &:extend(.clearfix all); > .btn { float: none; } @@ -200,22 +184,21 @@ .border-top-radius(0); } } - .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { border-radius: 0; } - .btn-group-vertical > .btn-group:first-child:not(:last-child) { > .btn:last-child, > .dropdown-toggle { .border-bottom-radius(0); } } - .btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { .border-top-radius(0); } + + // Justified button groups // ---------------------- @@ -233,10 +216,25 @@ > .btn-group .btn { width: 100%; } + + > .btn-group .dropdown-menu { + left: auto; + } } + // Checkbox and radio options +// +// In order to support the browser's form validation feedback, powered by the +// `required` attribute, we have to "hide" the inputs via `opacity`. We cannot +// use `display: none;` or `visibility: hidden;` as that also hides the popover. +// This way, we ensure a DOM element is visible to position the popover from. +// +// See https://github.com/twbs/bootstrap/pull/12794 for more. + [data-toggle="buttons"] > .btn > input[type="radio"], [data-toggle="buttons"] > .btn > input[type="checkbox"] { - display: none; + position: absolute; + z-index: -1; + .opacity(0); } diff --git a/public/css/lib/bootstrap/buttons.less b/public/css/lib/bootstrap/buttons.less index da313ba3aa..492bdc65ae 100644 --- a/public/css/lib/bootstrap/buttons.less +++ b/public/css/lib/bootstrap/buttons.less @@ -2,6 +2,7 @@ // Buttons // -------------------------------------------------- + // Base styles // -------------------------------------------------- @@ -36,7 +37,7 @@ &.active { outline: 0; background-image: none; - .box-shadow(inset 0 3px 5px rgba(0, 0, 0, .125)); + .box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); } &.disabled, @@ -49,37 +50,34 @@ } } + // Alternate buttons // -------------------------------------------------- .btn-default { .button-variant(@btn-default-color; @btn-default-bg; @btn-default-border); } - .btn-primary { .button-variant(@btn-primary-color; @btn-primary-bg; @btn-primary-border); } - // Success appears as green .btn-success { .button-variant(@btn-success-color; @btn-success-bg; @btn-success-border); } - // Info appears as blue-green .btn-info { .button-variant(@btn-info-color; @btn-info-bg; @btn-info-border); } - // Warning appears as orange .btn-warning { .button-variant(@btn-warning-color; @btn-warning-bg; @btn-warning-border); } - // Danger and error appear as red .btn-danger { .button-variant(@btn-danger-color; @btn-danger-bg; @btn-danger-border); } + // Link buttons // ------------------------- @@ -119,6 +117,7 @@ } } + // Button Sizes // -------------------------------------------------- @@ -126,24 +125,21 @@ // 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); } - .btn-sm { // 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); } - .btn-xs { .button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @border-radius-small); } + // Block button // -------------------------------------------------- .btn-block { display: block; width: 100%; - padding-left: 0; - padding-right: 0; } // Vertically space out multiple block buttons diff --git a/public/css/lib/bootstrap/carousel.less b/public/css/lib/bootstrap/carousel.less index 0b76731ac4..1644ddf7f5 100644 --- a/public/css/lib/bootstrap/carousel.less +++ b/public/css/lib/bootstrap/carousel.less @@ -2,6 +2,7 @@ // Carousel // -------------------------------------------------- + // Wrapper for the slide container and indicators .carousel { position: relative; @@ -20,8 +21,7 @@ // Account for jankitude on images > img, > a > img { - &:extend(.img-responsive) - ; + &:extend(.img-responsive); line-height: 1; } } @@ -93,7 +93,7 @@ // Hover/focus state &:hover, &:focus { - outline: none; + outline: 0; color: @carousel-control-color; text-decoration: none; .opacity(.9); @@ -112,28 +112,30 @@ .icon-prev, .glyphicon-chevron-left { left: 50%; + margin-left: -10px; } .icon-next, .glyphicon-chevron-right { right: 50%; + margin-right: -10px; } .icon-prev, .icon-next { - width: 20px; + width: 20px; height: 20px; margin-top: -10px; - margin-left: -10px; font-family: serif; } + .icon-prev { &:before { - content: '\2039'; // SINGLE LEFT-POINTING ANGLE QUOTATION MARK (U+2039) + content: '\2039';// SINGLE LEFT-POINTING ANGLE QUOTATION MARK (U+2039) } } .icon-next { &:before { - content: '\203a'; // SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (U+203A) + content: '\203a';// SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (U+203A) } } } @@ -156,7 +158,7 @@ li { display: inline-block; - width: 10px; + width: 10px; height: 10px; margin: 1px; text-indent: -999px; @@ -173,11 +175,11 @@ // For IE8, we set solid black as it doesn't support `rgba()`. For IE9, we // set alpha transparency for the best results possible. background-color: #000 \9; // IE8 - background-color: rgba(0, 0, 0, 0); // IE9 + background-color: rgba(0,0,0,0); // IE9 } .active { margin: 0; - width: 12px; + width: 12px; height: 12px; background-color: @carousel-indicator-active-bg; } @@ -202,6 +204,7 @@ } } + // Scale up controls for tablets and up @media screen and (min-width: @screen-sm-min) { @@ -214,9 +217,16 @@ width: 30px; height: 30px; margin-top: -15px; - margin-left: -15px; font-size: 30px; } + .glyphicon-chevron-left, + .icon-prev { + margin-left: -15px; + } + .glyphicon-chevron-right, + .icon-next { + margin-right: -15px; + } } // Show and left align the captions diff --git a/public/css/lib/bootstrap/code.less b/public/css/lib/bootstrap/code.less index 3eed26c05b..baa13df613 100644 --- a/public/css/lib/bootstrap/code.less +++ b/public/css/lib/bootstrap/code.less @@ -17,7 +17,6 @@ code { font-size: 90%; color: @code-color; background-color: @code-bg; - white-space: nowrap; border-radius: @border-radius-base; } @@ -29,6 +28,12 @@ kbd { background-color: @kbd-bg; border-radius: @border-radius-small; box-shadow: inset 0 -1px 0 rgba(0,0,0,.25); + + kbd { + padding: 0; + font-size: 100%; + box-shadow: none; + } } // Blocks of code diff --git a/public/css/lib/bootstrap/component-animations.less b/public/css/lib/bootstrap/component-animations.less index 1efe45e2c3..9400a0d32f 100644 --- a/public/css/lib/bootstrap/component-animations.less +++ b/public/css/lib/bootstrap/component-animations.less @@ -5,7 +5,7 @@ // Heads up! // // We don't use the `.opacity()` mixin here since it causes a bug with text -// fields in IE7-8. Source: https://github.com/twitter/bootstrap/pull/3552. +// fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552. .fade { opacity: 0; @@ -17,10 +17,12 @@ .collapse { display: none; - &.in { - display: block; - } + + &.in { display: block; } + tr&.in { display: table-row; } + tbody&.in { display: table-row-group; } } + .collapsing { position: relative; height: 0; diff --git a/public/css/lib/bootstrap/dropdowns.less b/public/css/lib/bootstrap/dropdowns.less index f165165e7a..3eb7fc05c4 100644 --- a/public/css/lib/bootstrap/dropdowns.less +++ b/public/css/lib/bootstrap/dropdowns.less @@ -38,6 +38,7 @@ margin: 2px 0 0; // override default ul list-style: none; font-size: @font-size-base; + text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer) background-color: @dropdown-bg; border: 1px solid @dropdown-fallback-border; // IE8 fallback border: 1px solid @dropdown-border; @@ -154,6 +155,7 @@ font-size: @font-size-small; line-height: @line-height-base; color: @dropdown-header-color; + white-space: nowrap; // as with > li > a } // Backdrop to catch body clicks on mobile, etc. diff --git a/public/css/lib/bootstrap/forms.less b/public/css/lib/bootstrap/forms.less index ba1ac21f2e..2c5e9bfa93 100644 --- a/public/css/lib/bootstrap/forms.less +++ b/public/css/lib/bootstrap/forms.less @@ -2,6 +2,7 @@ // Forms // -------------------------------------------------- + // Normalize non-controls // // Restyle and baseline non-control form elements. @@ -10,7 +11,7 @@ fieldset { padding: 0; margin: 0; border: 0; - // Chrome and Firefox set a `min-width: -webkit-min-content;` on fieldsets, + // Chrome and Firefox set a `min-width: min-content;` on fieldsets, // so we reset that to ensure it behaves more like a standard block element. // See https://github.com/twbs/bootstrap/issues/12359. min-width: 0; @@ -30,10 +31,12 @@ legend { label { display: inline-block; + max-width: 100%; // Force IE8 to wrap long content (see https://github.com/twbs/bootstrap/issues/13141) margin-bottom: 5px; font-weight: bold; } + // Normalize form controls // // While most of our form styles require extra classes, some basic normalization @@ -49,7 +52,7 @@ input[type="search"] { input[type="radio"], input[type="checkbox"] { margin: 4px 0 0; - margin-top: 1px \9; /* IE8-9 */ + margin-top: 1px \9; // IE8-9 line-height: normal; } @@ -86,6 +89,7 @@ output { color: @input-color; } + // Common form controls // // Shared size and type resets for form controls. Apply `.form-control` to any @@ -120,7 +124,7 @@ output { background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 border: 1px solid @input-border; border-radius: @input-border-radius; - .box-shadow(inset 0 1px 1px rgba(0, 0, 0, .075)); + .box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); .transition(~"border-color ease-in-out .15s, box-shadow ease-in-out .15s"); // Customize the `:focus` state to imitate native WebKit styles. @@ -148,6 +152,7 @@ output { } } + // Search inputs in iOS // // This overrides the extra rounded corners on search inputs in iOS so that our @@ -159,15 +164,32 @@ input[type="search"] { -webkit-appearance: none; } -// Special styles for iOS date input -// -// In Mobile Safari, date inputs require a pixel line-height that matches the -// given height of the input. -input[type="date"] { +// Special styles for iOS temporal inputs +// +// In Mobile Safari, setting `display: block` on temporal inputs causes the +// 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. Since this fucks up everything else, we have to +// appropriately reset it for Internet Explorer and the size variations. + +input[type="date"], +input[type="time"], +input[type="datetime-local"], +input[type="month"] { line-height: @input-height-base; + // IE8+ misaligns the text within date inputs, so we reset + line-height: @line-height-base ~"\0"; + + &.input-sm { + line-height: @input-height-small; + } + &.input-lg { + line-height: @input-height-large; + } } + // Form groups // // Designed to help with the organization and spacing of vertical forms. For @@ -177,30 +199,33 @@ input[type="date"] { margin-bottom: 15px; } + // Checkboxes and radios // // Indent the labels to position radios/checkboxes as hanging controls. .radio, .checkbox { + position: relative; display: block; min-height: @line-height-computed; // clear the floating input if there is no label text margin-top: 10px; margin-bottom: 10px; - padding-left: 20px; + label { - display: inline; + padding-left: 20px; + margin-bottom: 0; font-weight: normal; cursor: pointer; } } - .radio input[type="radio"], .radio-inline input[type="radio"], .checkbox input[type="checkbox"], .checkbox-inline input[type="checkbox"] { - float: left; + position: absolute; margin-left: -20px; + margin-top: 4px \9; } .radio + .radio, @@ -218,7 +243,6 @@ input[type="date"] { font-weight: normal; cursor: pointer; } - .radio-inline + .radio-inline, .checkbox-inline + .checkbox-inline { margin-top: 0; @@ -226,19 +250,56 @@ input[type="date"] { } // Apply same disabled cursor tweak as for inputs +// Some special care is needed because