diff options
| author | Mark Otto <[email protected]> | 2013-10-20 22:55:45 -0700 |
|---|---|---|
| committer | Mark Otto <[email protected]> | 2013-10-20 22:55:45 -0700 |
| commit | 2eec3f919e7bd7ee847c2631ae9c53515cac1c8f (patch) | |
| tree | b9dd9c6b61fcb72aafe47dd85beac8cfb9da4fe2 /less | |
| parent | ab3d0a27b3d93eebff3852728f94ddc4fcb35199 (diff) | |
| parent | 6585c5898a47deb2df5f7db4f9ef3fe8fa1e5a4a (diff) | |
| download | bootstrap-2eec3f919e7bd7ee847c2631ae9c53515cac1c8f.tar.xz bootstrap-2eec3f919e7bd7ee847c2631ae9c53515cac1c8f.zip | |
Merge branch 'master' into pr/10656
Conflicts:
dist/css/bootstrap.min.css
Diffstat (limited to 'less')
| -rw-r--r-- | less/alerts.less | 2 | ||||
| -rw-r--r-- | less/bootstrap.less | 10 | ||||
| -rw-r--r-- | less/breadcrumbs.less | 2 | ||||
| -rw-r--r-- | less/button-groups.less | 5 | ||||
| -rw-r--r-- | less/buttons.less | 5 | ||||
| -rw-r--r-- | less/carousel.less | 15 | ||||
| -rw-r--r-- | less/code.less | 11 | ||||
| -rw-r--r-- | less/dropdowns.less | 1 | ||||
| -rw-r--r-- | less/forms.less | 7 | ||||
| -rw-r--r-- | less/glyphicons.less | 22 | ||||
| -rw-r--r-- | less/grid.less | 301 | ||||
| -rw-r--r-- | less/jumbotron.less | 4 | ||||
| -rw-r--r-- | less/list-group.less | 24 | ||||
| -rw-r--r-- | less/mixins.less | 88 | ||||
| -rw-r--r-- | less/modals.less | 13 | ||||
| -rw-r--r-- | less/navbar.less | 11 | ||||
| -rw-r--r-- | less/navs.less | 32 | ||||
| -rw-r--r-- | less/normalize.less | 22 | ||||
| -rw-r--r-- | less/panels.less | 9 | ||||
| -rw-r--r-- | less/print.less | 1 | ||||
| -rw-r--r-- | less/responsive-utilities.less | 37 | ||||
| -rw-r--r-- | less/scaffolding.less | 2 | ||||
| -rw-r--r-- | less/tables.less | 41 | ||||
| -rw-r--r-- | less/theme.less | 19 | ||||
| -rw-r--r-- | less/thumbnails.less | 3 | ||||
| -rw-r--r-- | less/tooltip.less | 16 | ||||
| -rw-r--r-- | less/type.less | 22 | ||||
| -rw-r--r-- | less/utilities.less | 11 | ||||
| -rw-r--r-- | less/variables.less | 34 |
29 files changed, 304 insertions, 466 deletions
diff --git a/less/alerts.less b/less/alerts.less index be09d18d0..3eab06629 100644 --- a/less/alerts.less +++ b/less/alerts.less @@ -15,7 +15,7 @@ // Headings for larger alerts h4 { margin-top: 0; - // Specified for the h4 to prevent conflicts of changing @headingsColor + // Specified for the h4 to prevent conflicts of changing @headings-color color: inherit; } // Provide class for links that match alerts diff --git a/less/bootstrap.less b/less/bootstrap.less index 1344b462f..b368b8710 100644 --- a/less/bootstrap.less +++ b/less/bootstrap.less @@ -1,13 +1,3 @@ -/*! - * Bootstrap v3.0.0 - * - * Copyright 2013 Twitter, Inc - * Licensed under the Apache License v2.0 - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Designed and built with all the love in the world by @mdo and @fat. - */ - // Core variables and mixins @import "variables.less"; @import "mixins.less"; diff --git a/less/breadcrumbs.less b/less/breadcrumbs.less index aded518ce..60b33ea72 100644 --- a/less/breadcrumbs.less +++ b/less/breadcrumbs.less @@ -11,7 +11,7 @@ border-radius: @border-radius-base; > li { display: inline-block; - &+li:before { + + li:before { content: "@{breadcrumb-separator}\00a0"; // Unicode space added since inline-block means non-collapsing white-space padding: 0 5px; color: @breadcrumb-color; diff --git a/less/button-groups.less b/less/button-groups.less index 43ada11d9..d236dcb8d 100644 --- a/less/button-groups.less +++ b/less/button-groups.less @@ -150,6 +150,11 @@ // 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)); + + // Show no shadow for `.btn-link` since it has no other button styles. + &.btn-link { + .box-shadow(none); + } } diff --git a/less/buttons.less b/less/buttons.less index 40511ab96..a0909606f 100644 --- a/less/buttons.less +++ b/less/buttons.less @@ -9,18 +9,15 @@ // Core styles .btn { display: inline-block; - padding: @padding-base-vertical @padding-base-horizontal; margin-bottom: 0; // For input.btn - font-size: @font-size-base; font-weight: @btn-font-weight; - line-height: @line-height-base; text-align: center; vertical-align: middle; cursor: pointer; background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 border: 1px solid transparent; - border-radius: @border-radius-base; white-space: nowrap; + .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @border-radius-base); .user-select(none); &:focus { diff --git a/less/carousel.less b/less/carousel.less index 9fff41e73..d0d90736f 100644 --- a/less/carousel.less +++ b/less/carousel.less @@ -160,6 +160,17 @@ border: 1px solid @carousel-indicator-border-color; border-radius: 10px; cursor: pointer; + + // IE8-9 hack for event handling + // + // Internet Explorer 8-9 does not support clicks on elements without a set + // `background-color`. We cannot use `filter` since that's not viewed as a + // background color by the browser. Thus, a hack is needed. + // + // 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 } .active { margin: 0; @@ -190,12 +201,12 @@ // Scale up controls for tablets and up -@media screen and (min-width: @screen-sm) { +@media screen and (min-width: @screen-sm-min) { // Scale up the controls a smidge .carousel-control { .glyphicons-chevron-left, - .glyphicons-chevron-right + .glyphicons-chevron-right, .icon-prev, .icon-next { width: 30px; diff --git a/less/code.less b/less/code.less index d6661d2b9..54ab46ac8 100644 --- a/less/code.less +++ b/less/code.less @@ -5,7 +5,9 @@ // Inline and block code styles code, -pre { +kbd, +pre, +samp { font-family: @font-family-monospace; } @@ -33,11 +35,6 @@ pre { border: 1px solid @pre-border-color; border-radius: @border-radius-base; - // Make prettyprint styles more spaced out for readability - &.prettyprint { - margin-bottom: @line-height-computed; - } - // Account for some code outputs that place code tags in pre tags code { padding: 0; @@ -45,7 +42,7 @@ pre { color: inherit; white-space: pre-wrap; background-color: transparent; - border: 0; + border-radius: 0; } } diff --git a/less/dropdowns.less b/less/dropdowns.less index 96af127a5..e6bd18779 100644 --- a/less/dropdowns.less +++ b/less/dropdowns.less @@ -16,7 +16,6 @@ // Firefox fix for https://github.com/twbs/bootstrap/issues/9538. Once fixed, // we can just straight up remove this. border-bottom: 0 dotted; - content: ""; } // The dropdown wrapper (div) diff --git a/less/forms.less b/less/forms.less index 32391942b..f6bbce596 100644 --- a/less/forms.less +++ b/less/forms.less @@ -267,7 +267,6 @@ input[type="checkbox"], .form-control-static { margin-bottom: 0; // Remove default margin from `p` - padding-top: (@padding-base-vertical + 1); } @@ -354,8 +353,12 @@ input[type="checkbox"], .make-row(); } + .form-control-static { + padding-top: (@padding-base-vertical + 1); + } + // Only right align form labels here when the columns stop stacking - @media (min-width: @screen-sm) { + @media (min-width: @screen-sm-min) { .control-label { text-align: right; } diff --git a/less/glyphicons.less b/less/glyphicons.less index 7b66e6ba1..709d31865 100644 --- a/less/glyphicons.less +++ b/less/glyphicons.less @@ -14,7 +14,7 @@ src: url('@{icon-font-path}@{icon-font-name}.eot?#iefix') format('embedded-opentype'), url('@{icon-font-path}@{icon-font-name}.woff') format('woff'), url('@{icon-font-path}@{icon-font-name}.ttf') format('truetype'), - url('@{icon-font-path}@{icon-font-name}.svg#glyphicons-halflingsregular') format('svg'); + url('@{icon-font-path}@{icon-font-name}.svg#glyphicons_halflingsregular') format('svg'); } // Catchall baseclass @@ -72,6 +72,7 @@ .glyphicon-repeat { &:before { content: "\e030"; } } .glyphicon-refresh { &:before { content: "\e031"; } } .glyphicon-list-alt { &:before { content: "\e032"; } } +.glyphicon-lock { &:before { content: "\e033"; } } .glyphicon-flag { &:before { content: "\e034"; } } .glyphicon-headphones { &:before { content: "\e035"; } } .glyphicon-volume-off { &:before { content: "\e036"; } } @@ -82,7 +83,9 @@ .glyphicon-tag { &:before { content: "\e041"; } } .glyphicon-tags { &:before { content: "\e042"; } } .glyphicon-book { &:before { content: "\e043"; } } +.glyphicon-bookmark { &:before { content: "\e044"; } } .glyphicon-print { &:before { content: "\e045"; } } +.glyphicon-camera { &:before { content: "\e046"; } } .glyphicon-font { &:before { content: "\e047"; } } .glyphicon-bold { &:before { content: "\e048"; } } .glyphicon-italic { &:before { content: "\e049"; } } @@ -136,10 +139,12 @@ .glyphicon-exclamation-sign { &:before { content: "\e101"; } } .glyphicon-gift { &:before { content: "\e102"; } } .glyphicon-leaf { &:before { content: "\e103"; } } +.glyphicon-fire { &:before { content: "\e104"; } } .glyphicon-eye-open { &:before { content: "\e105"; } } .glyphicon-eye-close { &:before { content: "\e106"; } } .glyphicon-warning-sign { &:before { content: "\e107"; } } .glyphicon-plane { &:before { content: "\e108"; } } +.glyphicon-calendar { &:before { content: "\e109"; } } .glyphicon-random { &:before { content: "\e110"; } } .glyphicon-comment { &:before { content: "\e111"; } } .glyphicon-magnet { &:before { content: "\e112"; } } @@ -153,6 +158,7 @@ .glyphicon-resize-horizontal { &:before { content: "\e120"; } } .glyphicon-hdd { &:before { content: "\e121"; } } .glyphicon-bullhorn { &:before { content: "\e122"; } } +.glyphicon-bell { &:before { content: "\e123"; } } .glyphicon-certificate { &:before { content: "\e124"; } } .glyphicon-thumbs-up { &:before { content: "\e125"; } } .glyphicon-thumbs-down { &:before { content: "\e126"; } } @@ -165,13 +171,17 @@ .glyphicon-circle-arrow-up { &:before { content: "\e133"; } } .glyphicon-circle-arrow-down { &:before { content: "\e134"; } } .glyphicon-globe { &:before { content: "\e135"; } } +.glyphicon-wrench { &:before { content: "\e136"; } } .glyphicon-tasks { &:before { content: "\e137"; } } .glyphicon-filter { &:before { content: "\e138"; } } +.glyphicon-briefcase { &:before { content: "\e139"; } } .glyphicon-fullscreen { &:before { content: "\e140"; } } .glyphicon-dashboard { &:before { content: "\e141"; } } +.glyphicon-paperclip { &:before { content: "\e142"; } } .glyphicon-heart-empty { &:before { content: "\e143"; } } .glyphicon-link { &:before { content: "\e144"; } } .glyphicon-phone { &:before { content: "\e145"; } } +.glyphicon-pushpin { &:before { content: "\e146"; } } .glyphicon-usd { &:before { content: "\e148"; } } .glyphicon-gbp { &:before { content: "\e149"; } } .glyphicon-sort { &:before { content: "\e150"; } } @@ -224,13 +234,3 @@ .glyphicon-cloud-upload { &:before { content: "\e198"; } } .glyphicon-tree-conifer { &:before { content: "\e199"; } } .glyphicon-tree-deciduous { &:before { content: "\e200"; } } -.glyphicon-briefcase { &:before { content: "\1f4bc"; } } -.glyphicon-calendar { &:before { content: "\1f4c5"; } } -.glyphicon-pushpin { &:before { content: "\1f4cc"; } } -.glyphicon-paperclip { &:before { content: "\1f4ce"; } } -.glyphicon-camera { &:before { content: "\1f4f7"; } } -.glyphicon-lock { &:before { content: "\1f512"; } } -.glyphicon-bell { &:before { content: "\1f514"; } } -.glyphicon-bookmark { &:before { content: "\1f516"; } } -.glyphicon-fire { &:before { content: "\1f525"; } } -.glyphicon-wrench { &:before { content: "\1f527"; } } diff --git a/less/grid.less b/less/grid.less index a1ec1b298..67e78f760 100644 --- a/less/grid.less +++ b/less/grid.less @@ -2,7 +2,6 @@ // Grid system // -------------------------------------------------- - // Set the container width, and override it for fixed navbars in media queries .container { .container-fixed(); @@ -14,61 +13,7 @@ } // Common styles for small and large grid columns -.col-xs-1, -.col-xs-2, -.col-xs-3, -.col-xs-4, -.col-xs-5, -.col-xs-6, -.col-xs-7, -.col-xs-8, -.col-xs-9, -.col-xs-10, -.col-xs-11, -.col-xs-12, -.col-sm-1, -.col-sm-2, -.col-sm-3, -.col-sm-4, -.col-sm-5, -.col-sm-6, -.col-sm-7, -.col-sm-8, -.col-sm-9, -.col-sm-10, -.col-sm-11, -.col-sm-12, -.col-md-1, -.col-md-2, -.col-md-3, -.col-md-4, -.col-md-5, -.col-md-6, -.col-md-7, -.col-md-8, -.col-md-9, -.col-md-10, -.col-md-11, -.col-md-12, -.col-lg-1, -.col-lg-2, -.col-lg-3, -.col-lg-4, -.col-lg-5, -.col-lg-6, -.col-lg-7, -.col-lg-8, -.col-lg-9, -.col-lg-10, -.col-lg-11, -.col-lg-12 { - position: relative; - // Prevent columns from collapsing when empty - min-height: 1px; - // Inner gutter via padding - padding-left: (@grid-gutter-width / 2); - padding-right: (@grid-gutter-width / 2); -} +.make-grid-columns(); // Extra small grid @@ -79,31 +24,11 @@ // Note that `.col-xs-12` doesn't get floated on purpose--there's no need since // it's full-width. -.col-xs-1, -.col-xs-2, -.col-xs-3, -.col-xs-4, -.col-xs-5, -.col-xs-6, -.col-xs-7, -.col-xs-8, -.col-xs-9, -.col-xs-10, -.col-xs-11 { - float: left; -} -.col-xs-1 { width: percentage((1 / @grid-columns)); } -.col-xs-2 { width: percentage((2 / @grid-columns)); } -.col-xs-3 { width: percentage((3 / @grid-columns)); } -.col-xs-4 { width: percentage((4 / @grid-columns)); } -.col-xs-5 { width: percentage((5 / @grid-columns)); } -.col-xs-6 { width: percentage((6 / @grid-columns)); } -.col-xs-7 { width: percentage((7 / @grid-columns)); } -.col-xs-8 { width: percentage((8 / @grid-columns)); } -.col-xs-9 { width: percentage((9 / @grid-columns)); } -.col-xs-10 { width: percentage((10/ @grid-columns)); } -.col-xs-11 { width: percentage((11/ @grid-columns)); } -.col-xs-12 { width: 100%; } +.make-grid-columns-float(xs); +.make-grid(@grid-columns, xs, width); +.make-grid(@grid-columns, xs, pull); +.make-grid(@grid-columns, xs, push); +.make-grid(@grid-columns, xs, offset); // Small grid @@ -114,74 +39,16 @@ // Note that `.col-sm-12` doesn't get floated on purpose--there's no need since // it's full-width. -@media (min-width: @screen-sm) { +@media (min-width: @screen-sm-min) { .container { width: @container-sm; } - .col-sm-1, - .col-sm-2, - .col-sm-3, - .col-sm-4, - .col-sm-5, - .col-sm-6, - .col-sm-7, - .col-sm-8, - .col-sm-9, - .col-sm-10, - .col-sm-11 { - float: left; - } - .col-sm-1 { width: percentage((1 / @grid-columns)); } - .col-sm-2 { width: percentage((2 / @grid-columns)); } - .col-sm-3 { width: percentage((3 / @grid-columns)); } - .col-sm-4 { width: percentage((4 / @grid-columns)); } - .col-sm-5 { width: percentage((5 / @grid-columns)); } - .col-sm-6 { width: percentage((6 / @grid-columns)); } - .col-sm-7 { width: percentage((7 / @grid-columns)); } - .col-sm-8 { width: percentage((8 / @grid-columns)); } - .col-sm-9 { width: percentage((9 / @grid-columns)); } - .col-sm-10 { width: percentage((10/ @grid-columns)); } - .col-sm-11 { width: percentage((11/ @grid-columns)); } - .col-sm-12 { width: 100%; } - - // Push and pull columns for source order changes - .col-sm-push-1 { left: percentage((1 / @grid-columns)); } - .col-sm-push-2 { left: percentage((2 / @grid-columns)); } - .col-sm-push-3 { left: percentage((3 / @grid-columns)); } - .col-sm-push-4 { left: percentage((4 / @grid-columns)); } - .col-sm-push-5 { left: percentage((5 / @grid-columns)); } - .col-sm-push-6 { left: percentage((6 / @grid-columns)); } - .col-sm-push-7 { left: percentage((7 / @grid-columns)); } - .col-sm-push-8 { left: percentage((8 / @grid-columns)); } - .col-sm-push-9 { left: percentage((9 / @grid-columns)); } - .col-sm-push-10 { left: percentage((10/ @grid-columns)); } - .col-sm-push-11 { left: percentage((11/ @grid-columns)); } - - .col-sm-pull-1 { right: percentage((1 / @grid-columns)); } - .col-sm-pull-2 { right: percentage((2 / @grid-columns)); } - .col-sm-pull-3 { right: percentage((3 / @grid-columns)); } - .col-sm-pull-4 { right: percentage((4 / @grid-columns)); } - .col-sm-pull-5 { right: percentage((5 / @grid-columns)); } - .col-sm-pull-6 { right: percentage((6 / @grid-columns)); } - .col-sm-pull-7 { right: percentage((7 / @grid-columns)); } - .col-sm-pull-8 { right: percentage((8 / @grid-columns)); } - .col-sm-pull-9 { right: percentage((9 / @grid-columns)); } - .col-sm-pull-10 { right: percentage((10/ @grid-columns)); } - .col-sm-pull-11 { right: percentage((11/ @grid-columns)); } - - // Offsets - .col-sm-offset-1 { margin-left: percentage((1 / @grid-columns)); } - .col-sm-offset-2 { margin-left: percentage((2 / @grid-columns)); } - .col-sm-offset-3 { margin-left: percentage((3 / @grid-columns)); } - .col-sm-offset-4 { margin-left: percentage((4 / @grid-columns)); } - .col-sm-offset-5 { margin-left: percentage((5 / @grid-columns)); } - .col-sm-offset-6 { margin-left: percentage((6 / @grid-columns)); } - .col-sm-offset-7 { margin-left: percentage((7 / @grid-columns)); } - .col-sm-offset-8 { margin-left: percentage((8 / @grid-columns)); } - .col-sm-offset-9 { margin-left: percentage((9 / @grid-columns)); } - .col-sm-offset-10 { margin-left: percentage((10/ @grid-columns)); } - .col-sm-offset-11 { margin-left: percentage((11/ @grid-columns)); } + .make-grid-columns-float(sm); + .make-grid(@grid-columns, sm, width); + .make-grid(@grid-columns, sm, pull); + .make-grid(@grid-columns, sm, push); + .make-grid(@grid-columns, sm, offset); } @@ -192,76 +59,16 @@ // Note that `.col-md-12` doesn't get floated on purpose--there's no need since // it's full-width. -@media (min-width: @screen-md) { +@media (min-width: @screen-md-min) { .container { width: @container-md; } - .col-md-1, - .col-md-2, - .col-md-3, - .col-md-4, - .col-md-5, - .col-md-6, - .col-md-7, - .col-md-8, - .col-md-9, - .col-md-10, - .col-md-11 { - float: left; - } - .col-md-1 { width: percentage((1 / @grid-columns)); } - .col-md-2 { width: percentage((2 / @grid-columns)); } - .col-md-3 { width: percentage((3 / @grid-columns)); } - .col-md-4 { width: percentage((4 / @grid-columns)); } - .col-md-5 { width: percentage((5 / @grid-columns)); } - .col-md-6 { width: percentage((6 / @grid-columns)); } - .col-md-7 { width: percentage((7 / @grid-columns)); } - .col-md-8 { width: percentage((8 / @grid-columns)); } - .col-md-9 { width: percentage((9 / @grid-columns)); } - .col-md-10 { width: percentage((10/ @grid-columns)); } - .col-md-11 { width: percentage((11/ @grid-columns)); } - .col-md-12 { width: 100%; } - // Push and pull columns for source order changes - .col-md-push-0 { left: auto; } - .col-md-push-1 { left: percentage((1 / @grid-columns)); } - .col-md-push-2 { left: percentage((2 / @grid-columns)); } - .col-md-push-3 { left: percentage((3 / @grid-columns)); } - .col-md-push-4 { left: percentage((4 / @grid-columns)); } - .col-md-push-5 { left: percentage((5 / @grid-columns)); } - .col-md-push-6 { left: percentage((6 / @grid-columns)); } - .col-md-push-7 { left: percentage((7 / @grid-columns)); } - .col-md-push-8 { left: percentage((8 / @grid-columns)); } - .col-md-push-9 { left: percentage((9 / @grid-columns)); } - .col-md-push-10 { left: percentage((10/ @grid-columns)); } - .col-md-push-11 { left: percentage((11/ @grid-columns)); } - - .col-md-pull-0 { right: auto; } - .col-md-pull-1 { right: percentage((1 / @grid-columns)); } - .col-md-pull-2 { right: percentage((2 / @grid-columns)); } - .col-md-pull-3 { right: percentage((3 / @grid-columns)); } - .col-md-pull-4 { right: percentage((4 / @grid-columns)); } - .col-md-pull-5 { right: percentage((5 / @grid-columns)); } - .col-md-pull-6 { right: percentage((6 / @grid-columns)); } - .col-md-pull-7 { right: percentage((7 / @grid-columns)); } - .col-md-pull-8 { right: percentage((8 / @grid-columns)); } - .col-md-pull-9 { right: percentage((9 / @grid-columns)); } - .col-md-pull-10 { right: percentage((10/ @grid-columns)); } - .col-md-pull-11 { right: percentage((11/ @grid-columns)); } - - // Offsets - .col-md-offset-0 { margin-left: 0; } - .col-md-offset-1 { margin-left: percentage((1 / @grid-columns)); } - .col-md-offset-2 { margin-left: percentage((2 / @grid-columns)); } - .col-md-offset-3 { margin-left: percentage((3 / @grid-columns)); } - .col-md-offset-4 { margin-left: percentage((4 / @grid-columns)); } - .col-md-offset-5 { margin-left: percentage((5 / @grid-columns)); } - .col-md-offset-6 { margin-left: percentage((6 / @grid-columns)); } - .col-md-offset-7 { margin-left: percentage((7 / @grid-columns)); } - .col-md-offset-8 { margin-left: percentage((8 / @grid-columns)); } - .col-md-offset-9 { margin-left: percentage((9 / @grid-columns)); } - .col-md-offset-10 { margin-left: percentage((10/ @grid-columns)); } - .col-md-offset-11 { margin-left: percentage((11/ @grid-columns)); } + .make-grid-columns-float(md); + .make-grid(@grid-columns, md, width); + .make-grid(@grid-columns, md, pull); + .make-grid(@grid-columns, md, push); + .make-grid(@grid-columns, md, offset); } @@ -277,70 +84,10 @@ width: @container-lg; } - .col-lg-1, - .col-lg-2, - .col-lg-3, - .col-lg-4, - .col-lg-5, - .col-lg-6, - .col-lg-7, - .col-lg-8, - .col-lg-9, - .col-lg-10, - .col-lg-11 { - float: left; - } - .col-lg-1 { width: percentage((1 / @grid-columns)); } - .col-lg-2 { width: percentage((2 / @grid-columns)); } - .col-lg-3 { width: percentage((3 / @grid-columns)); } - .col-lg-4 { width: percentage((4 / @grid-columns)); } - .col-lg-5 { width: percentage((5 / @grid-columns)); } - .col-lg-6 { width: percentage((6 / @grid-columns)); } - .col-lg-7 { width: percentage((7 / @grid-columns)); } - .col-lg-8 { width: percentage((8 / @grid-columns)); } - .col-lg-9 { width: percentage((9 / @grid-columns)); } - .col-lg-10 { width: percentage((10/ @grid-columns)); } - .col-lg-11 { width: percentage((11/ @grid-columns)); } - .col-lg-12 { width: 100%; } - - // Push and pull columns for source order changes - .col-lg-push-0 { left: auto; } - .col-lg-push-1 { left: percentage((1 / @grid-columns)); } - .col-lg-push-2 { left: percentage((2 / @grid-columns)); } - .col-lg-push-3 { left: percentage((3 / @grid-columns)); } - .col-lg-push-4 { left: percentage((4 / @grid-columns)); } - .col-lg-push-5 { left: percentage((5 / @grid-columns)); } - .col-lg-push-6 { left: percentage((6 / @grid-columns)); } - .col-lg-push-7 { left: percentage((7 / @grid-columns)); } - .col-lg-push-8 { left: percentage((8 / @grid-columns)); } - .col-lg-push-9 { left: percentage((9 / @grid-columns)); } - .col-lg-push-10 { left: percentage((10/ @grid-columns)); } - .col-lg-push-11 { left: percentage((11/ @grid-columns)); } - - .col-lg-pull-0 { right: auto; } - .col-lg-pull-1 { right: percentage((1 / @grid-columns)); } - .col-lg-pull-2 { right: percentage((2 / @grid-columns)); } - .col-lg-pull-3 { right: percentage((3 / @grid-columns)); } - .col-lg-pull-4 { right: percentage((4 / @grid-columns)); } - .col-lg-pull-5 { right: percentage((5 / @grid-columns)); } - .col-lg-pull-6 { right: percentage((6 / @grid-columns)); } - .col-lg-pull-7 { right: percentage((7 / @grid-columns)); } - .col-lg-pull-8 { right: percentage((8 / @grid-columns)); } - .col-lg-pull-9 { right: percentage((9 / @grid-columns)); } - .col-lg-pull-10 { right: percentage((10/ @grid-columns)); } - .col-lg-pull-11 { right: percentage((11/ @grid-columns)); } - - // Offsets - .col-lg-offset-0 { margin-left: 0; } - .col-lg-offset-1 { margin-left: percentage((1 / @grid-columns)); } - .col-lg-offset-2 { margin-left: percentage((2 / @grid-columns)); } - .col-lg-offset-3 { margin-left: percentage((3 / @grid-columns)); } - .col-lg-offset-4 { margin-left: percentage((4 / @grid-columns)); } - .col-lg-offset-5 { margin-left: percentage((5 / @grid-columns)); } - .col-lg-offset-6 { margin-left: percentage((6 / @grid-columns)); } - .col-lg-offset-7 { margin-left: percentage((7 / @grid-columns)); } - .col-lg-offset-8 { margin-left: percentage((8 / @grid-columns)); } - .col-lg-offset-9 { margin-left: percentage((9 / @grid-columns)); } - .col-lg-offset-10 { margin-left: percentage((10/ @grid-columns)); } - .col-lg-offset-11 { margin-left: percentage((11/ @grid-columns)); } + .make-grid-columns-float(lg); + .make-grid(@grid-columns, lg, width); + .make-grid(@grid-columns, lg, pull); + .make-grid(@grid-columns, lg, push); + .make-grid(@grid-columns, lg, offset); } + diff --git a/less/jumbotron.less b/less/jumbotron.less index 53289fb2c..22c29780a 100644 --- a/less/jumbotron.less +++ b/less/jumbotron.less @@ -6,7 +6,7 @@ .jumbotron { padding: @jumbotron-padding; margin-bottom: @jumbotron-padding; - font-size: (@font-size-base * 1.5); + font-size: @jumbotron-font-size; font-weight: 200; line-height: (@line-height-base * 1.5); color: @jumbotron-color; @@ -24,7 +24,7 @@ border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container } - @media screen and (min-width: @screen-sm) { + @media screen and (min-width: @screen-sm-min) { padding-top: (@jumbotron-padding * 1.6); padding-bottom: (@jumbotron-padding * 1.6); diff --git a/less/list-group.less b/less/list-group.less index 46cda4085..2cee52973 100644 --- a/less/list-group.less +++ b/less/list-group.less @@ -39,21 +39,21 @@ > .badge + .badge { margin-right: 5px; } +} - // Linked list items - a& { - color: @list-group-link-color; +// Linked list items +a.list-group-item { + color: @list-group-link-color; - .list-group-item-heading { - color: @list-group-link-heading-color; - } + .list-group-item-heading { + color: @list-group-link-heading-color; + } - // Hover state - &:hover, - &:focus { - text-decoration: none; - background-color: @list-group-hover-bg; - } + // Hover state + &:hover, + &:focus { + text-decoration: none; + background-color: @list-group-hover-bg; } // Active class on item itself, not parent diff --git a/less/mixins.less b/less/mixins.less index f8afa0eeb..61df50891 100644 --- a/less/mixins.less +++ b/less/mixins.less @@ -389,10 +389,12 @@ // ------------------------- .panel-variant(@border; @heading-text-color; @heading-bg-color; @heading-border;) { border-color: @border; + & > .panel-heading { color: @heading-text-color; background-color: @heading-bg-color; border-color: @heading-border; + + .panel-collapse .panel-body { border-top-color: @border; } @@ -413,6 +415,7 @@ background-color: @background; border-color: @border; color: @text-color; + hr { border-top-color: darken(@border, 5%); } @@ -562,12 +565,13 @@ } .responsive-invisibility() { - display: none !important; - tr& { display: none !important; } + &, + tr&, th&, td& { display: none !important; } } + // Grid System // ----------- @@ -699,6 +703,80 @@ } +// Framework grid generation +// +// Used only by Bootstrap to generate the correct number of grid classes given +// any value of `@grid-columns`. + +.make-grid-columns() { + // Common styles for all sizes of grid columns, widths 1-12 + .col(@index) when (@index = 1) { // initial + @item: ~".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}"; + .col(@index + 1, @item); + } + .col(@index, @list) when (@index =< @grid-columns) { // general; "=<" isn't a typo + @item: ~".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}"; + .col(@index + 1, ~"@{list}, @{item}"); + } + .col(@index, @list) when (@index > @grid-columns) { // terminal + @{list} { + position: relative; + // Prevent columns from collapsing when empty + min-height: 1px; + // Inner gutter via padding + padding-left: (@grid-gutter-width / 2); + padding-right: (@grid-gutter-width / 2); + } + } + .col(1); // kickstart it +} + +.make-grid-columns-float(@class) { + .col(@index) when (@index = 1) { // initial + @item: ~".col-@{class}-@{index}"; + .col(@index + 1, @item); + } + .col(@index, @list) when (@index < @grid-columns) { // general + @item: ~".col-@{class}-@{index}"; + .col(@index + 1, ~"@{list}, @{item}"); + } + .col(@index, @list) when (@index = @grid-columns) { // terminal + @{list} { + float: left; + } + } + .col(1); // kickstart it +} + +.calc-grid(@index, @class, @type) when (@type = width) { + .col-@{class}-@{index} { + width: percentage((@index / @grid-columns)); + } +} +.calc-grid(@index, @class, @type) when (@type = push) { + .col-@{class}-push-@{index} { + left: percentage((@index / @grid-columns)); + } +} +.calc-grid(@index, @class, @type) when (@type = pull) { + .col-@{class}-pull-@{index} { + right: percentage((@index / @grid-columns)); + } +} +.calc-grid(@index, @class, @type) when (@type = offset) { + .col-@{class}-offset-@{index} { + margin-left: percentage((@index / @grid-columns)); + } +} + +// Basic looping in LESS +.make-grid(@index, @class, @type) when (@index > 0) { + .calc-grid(@index, @class, @type); + // next iteration + .make-grid(@index - 1, @class, @type); +} + + // Form validation states // // Used in forms.less to generate the form validation CSS for warnings, errors, @@ -707,7 +785,11 @@ .form-control-validation(@text-color: #555; @border-color: #ccc; @background-color: #f5f5f5) { // Color the label and help text .help-block, - .control-label { + .control-label, + .radio, + .checkbox, + .radio-inline, + .checkbox-inline { color: @text-color; } // Set the border and box shadow on specific inputs to match diff --git a/less/modals.less b/less/modals.less index f886fb25c..99cf76469 100644 --- a/less/modals.less +++ b/less/modals.less @@ -10,14 +10,6 @@ // Kill the scroll on the body .modal-open { overflow: hidden; - - - // Account for hiding of scrollbar - body&, - .navbar-fixed-top, - .navbar-fixed-bottom { - margin-right: 15px - } } // Container that the modal scrolls within @@ -42,6 +34,7 @@ // Shell div to position the modal with bottom padding .modal-dialog { + position: relative; margin-left: auto; margin-right: auto; width: auto; @@ -125,11 +118,9 @@ } // Scale up the modal -@media screen and (min-width: @screen-sm) { +@media screen and (min-width: @screen-sm-min) { .modal-dialog { - left: 50%; - right: auto; width: 600px; padding-top: 30px; padding-bottom: 30px; diff --git a/less/navbar.less b/less/navbar.less index 351e20417..577e20ed5 100644 --- a/less/navbar.less +++ b/less/navbar.less @@ -10,7 +10,6 @@ .navbar { position: relative; - z-index: @zindex-navbar; min-height: @navbar-height; // Ensure a navbar always shows (e.g., without a .navbar-brand in collapsed mode) margin-bottom: @navbar-margin-bottom; border: 1px solid transparent; @@ -116,7 +115,9 @@ // Static top (unfixed, but 100% wide) navbar .navbar-static-top { + z-index: @zindex-navbar; border-width: 0 0 1px; + @media (min-width: @grid-float-breakpoint) { border-radius: 0; } @@ -128,7 +129,7 @@ position: fixed; right: 0; left: 0; - border-width: 0 0 1px; + z-index: @zindex-navbar-fixed; // Undo the rounded corners @media (min-width: @grid-float-breakpoint) { @@ -136,12 +137,13 @@ } } .navbar-fixed-top { - z-index: @zindex-navbar-fixed; top: 0; + border-width: 0 0 1px; } .navbar-fixed-bottom { bottom: 0; margin-bottom: 0; // override .navbar defaults + border-width: 1px 0 0; } @@ -152,6 +154,7 @@ padding: @navbar-padding-vertical @navbar-padding-horizontal; font-size: @font-size-large; line-height: @line-height-computed; + &:hover, &:focus { text-decoration: none; @@ -408,7 +411,7 @@ .navbar-collapse, .navbar-form { - border-color: darken(@navbar-default-bg, 7%); + border-color: @navbar-default-border; } // Dropdown menu items and carets diff --git a/less/navs.less b/less/navs.less index bdab92606..bebb63311 100644 --- a/less/navs.less +++ b/less/navs.less @@ -48,6 +48,11 @@ &:focus { background-color: @nav-link-hover-bg; border-color: @link-color; + + .caret { + border-top-color: @link-hover-color; + border-bottom-color: @link-hover-color; + } } } @@ -120,7 +125,7 @@ // Links rendered as pills > a { - border-radius: 5px; + border-radius: @nav-pills-border-radius; } + li { margin-left: 2px; @@ -133,6 +138,11 @@ &:focus { color: @nav-pills-active-link-hover-color; background-color: @nav-pills-active-link-hover-bg; + + .caret { + border-top-color: @nav-pills-active-link-hover-color; + border-bottom-color: @nav-pills-active-link-hover-color; + } } } } @@ -180,6 +190,8 @@ } // Move borders to anchors instead of bottom of list +// +// Mixin for adding on top the shared `.nav-justified` styles for our tabs .nav-tabs-justified { border-bottom: 0; @@ -212,25 +224,17 @@ // Tabbable tabs // ------------------------- -// Clear any floats -.tabbable { - .clearfix(); -} - -// Show/hide tabbable areas -.tab-content > .tab-pane, -.pill-content > .pill-pane { - display: none; -} -.tab-content, -.pill-content { +// Hide tabbable panes to start, show them when `.active` +.tab-content { + > .tab-pane { + display: none; + } > .active { display: block; } } - // Dropdowns // ------------------------- diff --git a/less/normalize.less b/less/normalize.less index a2e9c6485..42a393fc0 100644 --- a/less/normalize.less +++ b/less/normalize.less @@ -1,4 +1,4 @@ -/*! normalize.css v2.1.0 | MIT License | git.io/normalize */ +/*! normalize.css v2.1.3 | MIT License | git.io/normalize */ // ========================================================================== // HTML5 display definitions @@ -44,10 +44,12 @@ audio:not([controls]) { } // -// Address styling not present in IE 8/9. +// Address `[hidden]` styling not present in IE 8/9. +// Hide the `template` element in IE, Safari, and Firefox < 22. // -[hidden] { +[hidden], +template { display: none; } @@ -63,8 +65,8 @@ audio:not([controls]) { html { font-family: sans-serif; // 1 - -webkit-text-size-adjust: 100%; // 2 -ms-text-size-adjust: 100%; // 2 + -webkit-text-size-adjust: 100%; // 2 } // @@ -80,6 +82,14 @@ body { // ========================================================================== // +// Remove the gray background color from active links in IE 10. +// + +a { + background: transparent; +} + +// // Address `outline` inconsistency between Chrome and other browsers. // @@ -329,8 +339,8 @@ html input[disabled] { } // -// 1. Address box sizing set to `content-box` in IE 8/9. -// 2. Remove excess padding in IE 8/9. +// 1. Address box sizing set to `content-box` in IE 8/9/10. +// 2. Remove excess padding in IE 8/9/10. // input[type="checkbox"], diff --git a/less/panels.less b/less/panels.less index c02cd130e..50bf419d7 100644 --- a/less/panels.less +++ b/less/panels.less @@ -56,13 +56,16 @@ // watch it go full width. .panel { - > .table { + > .table, + > .table-responsive { margin-bottom: 0; } - > .panel-body + .table { + > .panel-body + .table, + > .panel-body + .table-responsive { border-top: 1px solid @table-border-color; } - > .table-bordered { + > .table-bordered, + > .table-responsive > .table-bordered { border: 0; > thead, > tbody, diff --git a/less/print.less b/less/print.less index 1e4bffe3f..2a5b154fe 100644 --- a/less/print.less +++ b/less/print.less @@ -26,7 +26,6 @@ } // Don't show links for images, or javascript/internal links - .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; diff --git a/less/responsive-utilities.less b/less/responsive-utilities.less index 02bb39bfb..df53e479d 100644 --- a/less/responsive-utilities.less +++ b/less/responsive-utilities.less @@ -3,36 +3,25 @@ // -------------------------------------------------- -// IE10 Metro responsive -// Required for Windows 8 Metro split-screen snapping with IE10 +// IE10 in Windows (Phone) 8 // -// Source: http://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/ -@-ms-viewport{ - width: device-width; -} - -// IE10 on Windows Phone 8 -// IE10 on WP8 doesn't report CSS pixels, but actual device pixels. In -// other words, say on a Lumia, you'll get 768px as the device width, -// meaning users will see the tablet styles and not phone styles. +// Support for responsive views via media queries is kind of borked in IE10, for +// Surface/desktop in split view and for Windows Phone 8. This particular fix +// must be accompanied by a snippet of JavaScript to sniff the user agent and +// apply some conditional CSS to *only* the Surface/desktop Windows 8. Look at +// our Getting Started page for more information on this bug. // -// Alternatively you can override this with JS (see source below), but -// we won't be doing that here given our limited scope. +// For more information, see the following: // -// Source: http://timkadlec.com/2013/01/windows-phone-8-and-device-width/ -@media screen and (max-width: 400px) { - @-ms-viewport{ - width: 320px; - } -} +// Issue: https://github.com/twbs/bootstrap/issues/10497 +// Docs: http://getbootstrap.com/getting-started/#browsers +// Source: http://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/ -// Hide from screenreaders and browsers -// Credit: HTML5 Boilerplate -.hidden { - display: none !important; - visibility: hidden !important; +@-ms-viewport { + width: device-width; } + // Visibility utilities .visible-xs { diff --git a/less/scaffolding.less b/less/scaffolding.less index 046eb774a..976b4e3c2 100644 --- a/less/scaffolding.less +++ b/less/scaffolding.less @@ -114,6 +114,6 @@ hr { margin: -1px; padding: 0; overflow: hidden; - clip: rect(0 0 0 0); + clip: rect(0,0,0,0); border: 0; } diff --git a/less/tables.less b/less/tables.less index ace7e4ba1..0deadc782 100644 --- a/less/tables.less +++ b/less/tables.less @@ -91,12 +91,10 @@ th { } } } - > thead { - > tr { - > th, - > td { - border-bottom-width: 2px; - } + > thead > tr { + > th, + > td { + border-bottom-width: 2px; } } } @@ -106,14 +104,10 @@ th { // // Default zebra-stripe styles (alternating gray and transparent backgrounds) -.table-striped { - > tbody { - > tr:nth-child(odd) { - > td, - > th { - background-color: @table-bg-accent; - } - } +.table-striped > tbody > tr:nth-child(odd) { + > td, + > th { + background-color: @table-bg-accent; } } @@ -122,14 +116,10 @@ th { // // Placed here since it has to come after the potential zebra striping -.table-hover { - > tbody { - > tr:hover { - > td, - > th { - background-color: @table-bg-hover; - } - } +.table-hover > tbody > tr:hover { + > td, + > th { + background-color: @table-bg-hover; } } @@ -181,20 +171,19 @@ table { // by enabling horizontal scrolling. Only applies <768px. Everything above that // will display normally. -@media (max-width: @screen-sm-min) { +@media (max-width: @screen-xs-max) { .table-responsive { width: 100%; - margin-bottom: 15px; + margin-bottom: (@line-height-computed * 0.75); overflow-y: hidden; overflow-x: scroll; -ms-overflow-style: -ms-autohiding-scrollbar; border: 1px solid @table-border-color; -webkit-overflow-scrolling: touch; - // Tighten up spacing and give a background color + // Tighten up spacing > .table { margin-bottom: 0; - background-color: #fff; // Ensure the content doesn't wrap > thead, diff --git a/less/theme.less b/less/theme.less index 71d1d1e6b..0addce3f2 100644 --- a/less/theme.less +++ b/less/theme.less @@ -31,8 +31,9 @@ } // Mixin for generating new styles -.btn-styles(@btn-color: #555;) { +.btn-styles(@btn-color: #555) { #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%)); + .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners background-repeat: repeat-x; border-color: darken(@btn-color, 14%); @@ -59,7 +60,7 @@ } // Apply the mixin to the buttons -.btn-default { .btn-styles(@btn-default-bg;); text-shadow: 0 1px 0 #fff; border-color: #ccc; } +.btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; } .btn-primary { .btn-styles(@btn-primary-bg); } .btn-success { .btn-styles(@btn-success-bg); } .btn-warning { .btn-styles(@btn-warning-bg); } @@ -103,13 +104,14 @@ // Default navbar .navbar-default { - #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg;); + #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg); + .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered border-radius: @navbar-border-radius; @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075); .box-shadow(@shadow); .navbar-nav > .active > a { - #gradient > .vertical(@start-color: darken(@navbar-default-bg, 5%); @end-color: darken(@navbar-default-bg, 2%);); + #gradient > .vertical(@start-color: darken(@navbar-default-bg, 5%); @end-color: darken(@navbar-default-bg, 2%)); .box-shadow(inset 0 3px 9px rgba(0,0,0,.075)); } } @@ -120,10 +122,11 @@ // Inverted navbar .navbar-inverse { - #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg;); + #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg); + .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered .navbar-nav > .active > a { - #gradient > .vertical(@start-color: @navbar-inverse-bg; @end-color: lighten(@navbar-inverse-bg, 2.5%);); + #gradient > .vertical(@start-color: @navbar-inverse-bg; @end-color: lighten(@navbar-inverse-bg, 2.5%)); .box-shadow(inset 0 3px 9px rgba(0,0,0,.25)); } @@ -173,7 +176,7 @@ // Give the progress background some depth .progress { - #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg;) + #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg) } // Mixin for generating new styles @@ -237,7 +240,7 @@ // -------------------------------------------------- .well { - #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg;); + #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg); border-color: darken(@well-bg, 10%); @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1); .box-shadow(@shadow); diff --git a/less/thumbnails.less b/less/thumbnails.less index a210cac72..df46fbdc2 100644 --- a/less/thumbnails.less +++ b/less/thumbnails.less @@ -17,7 +17,8 @@ // Add a hover state for linked versions only a.thumbnail:hover, -a.thumbnail:focus { +a.thumbnail:focus, +a.thumbnail.active { border-color: @link-color; } diff --git a/less/tooltip.less b/less/tooltip.less index 5a95b8462..ce793cb93 100644 --- a/less/tooltip.less +++ b/less/tooltip.less @@ -14,10 +14,10 @@ .opacity(0); &.in { .opacity(.9); } - &.top { margin-top: -3px; padding: 5px 0; } - &.right { margin-left: 3px; padding: 0 5px; } - &.bottom { margin-top: 3px; padding: 5px 0; } - &.left { margin-left: -3px; padding: 0 5px; } + &.top { margin-top: -3px; padding: @tooltip-arrow-width 0; } + &.right { margin-left: 3px; padding: 0 @tooltip-arrow-width; } + &.bottom { margin-top: 3px; padding: @tooltip-arrow-width 0; } + &.left { margin-left: -3px; padding: 0 @tooltip-arrow-width; } } // Wrapper for the tooltip content @@ -49,13 +49,13 @@ } &.top-left .tooltip-arrow { bottom: 0; - left: 5px; + left: @tooltip-arrow-width; border-width: @tooltip-arrow-width @tooltip-arrow-width 0; border-top-color: @tooltip-arrow-color; } &.top-right .tooltip-arrow { bottom: 0; - right: 5px; + right: @tooltip-arrow-width; border-width: @tooltip-arrow-width @tooltip-arrow-width 0; border-top-color: @tooltip-arrow-color; } @@ -82,13 +82,13 @@ } &.bottom-left .tooltip-arrow { top: 0; - left: 5px; + left: @tooltip-arrow-width; border-width: 0 @tooltip-arrow-width @tooltip-arrow-width; border-bottom-color: @tooltip-arrow-color; } &.bottom-right .tooltip-arrow { top: 0; - right: 5px; + right: @tooltip-arrow-width; border-width: 0 @tooltip-arrow-width @tooltip-arrow-width; border-bottom-color: @tooltip-arrow-color; } diff --git a/less/type.less b/less/type.less index 2f154516c..e5544ab3e 100644 --- a/less/type.less +++ b/less/type.less @@ -11,11 +11,11 @@ p { } .lead { margin-bottom: @line-height-computed; - font-size: (@font-size-base * 1.15); + font-size: floor(@font-size-base * 1.15); font-weight: 200; line-height: 1.4; - @media (min-width: @screen-sm) { + @media (min-width: @screen-sm-min) { font-size: (@font-size-base * 1.5); } } @@ -82,7 +82,8 @@ h1, h2, h3, h4, h5, h6, line-height: @headings-line-height; color: @headings-color; - small { + small, + .small { font-weight: normal; line-height: 1; color: @headings-small-color; @@ -95,7 +96,8 @@ h3 { margin-top: @line-height-computed; margin-bottom: (@line-height-computed / 2); - small { + small, + .small { font-size: 65%; } } @@ -105,7 +107,8 @@ h6 { margin-top: (@line-height-computed / 2); margin-bottom: (@line-height-computed / 2); - small { + small, + .small { font-size: 75%; } } @@ -240,10 +243,12 @@ blockquote { border-right: 5px solid @blockquote-border-color; border-left: 0; p, - small { + small, + .small { text-align: right; } - small { + small, + .small { &:before { content: ''; } @@ -255,8 +260,6 @@ blockquote { } // Quotes -q:before, -q:after, blockquote:before, blockquote:after { content: ""; @@ -264,7 +267,6 @@ blockquote:after { // Addresses address { - display: block; margin-bottom: @line-height-computed; font-style: normal; line-height: @line-height-base; diff --git a/less/utilities.less b/less/utilities.less index fa2d004ae..a26031214 100644 --- a/less/utilities.less +++ b/less/utilities.less @@ -23,6 +23,7 @@ // Toggling content // ------------------------- +// Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1 .hide { display: none !important; } @@ -37,6 +38,16 @@ } +// Hide from screenreaders and browsers +// +// Credit: HTML5 Boilerplate + +.hidden { + display: none !important; + visibility: hidden !important; +} + + // For Affix plugin // ------------------------- diff --git a/less/variables.less b/less/variables.less index d0f921481..e596215d0 100644 --- a/less/variables.less +++ b/less/variables.less @@ -48,9 +48,9 @@ @font-size-large: ceil(@font-size-base * 1.25); // ~18px @font-size-small: ceil(@font-size-base * 0.85); // ~12px -@font-size-h1: floor(@font-size-base * 2.60); // ~36px +@font-size-h1: floor(@font-size-base * 2.6); // ~36px @font-size-h2: floor(@font-size-base * 2.15); // ~30px -@font-size-h3: ceil(@font-size-base * 1.70); // ~24px +@font-size-h3: ceil(@font-size-base * 1.7); // ~24px @font-size-h4: ceil(@font-size-base * 1.25); // ~18px @font-size-h5: @font-size-base; @font-size-h6: ceil(@font-size-base * 0.85); // ~12px @@ -247,7 +247,7 @@ // Padding, to be divided by two and applied to the left and right of all columns @grid-gutter-width: 30px; // Point at which the navbar stops collapsing -@grid-float-breakpoint: @screen-sm; +@grid-float-breakpoint: @screen-sm-min; // Navbar @@ -256,13 +256,14 @@ // Basics of a navbar @navbar-height: 50px; @navbar-margin-bottom: @line-height-computed; -@navbar-default-color: #777; -@navbar-default-bg: #f8f8f8; -@navbar-default-border: darken(@navbar-default-bg, 6.5%); @navbar-border-radius: @border-radius-base; @navbar-padding-horizontal: floor(@grid-gutter-width / 2); @navbar-padding-vertical: ((@navbar-height - @line-height-computed) / 2); +@navbar-default-color: #777; +@navbar-default-bg: #f8f8f8; +@navbar-default-border: darken(@navbar-default-bg, 6.5%); + // Navbar links @navbar-default-link-color: #777; @navbar-default-link-hover-color: #333; @@ -335,6 +336,7 @@ @nav-tabs-justified-active-link-border-color: @body-bg; // Pills +@nav-pills-border-radius: @border-radius-base; @nav-pills-active-link-hover-bg: @component-active-bg; @nav-pills-active-link-hover-color: @component-active-color; @@ -366,21 +368,13 @@ @jumbotron-padding: 30px; @jumbotron-color: inherit; @jumbotron-bg: @gray-lighter; - @jumbotron-heading-color: inherit; +@jumbotron-font-size: ceil(@font-size-base * 1.5); // Form states and alerts // ------------------------- -@state-warning-text: #c09853; -@state-warning-bg: #fcf8e3; -@state-warning-border: darken(spin(@state-warning-bg, -10), 3%); - -@state-danger-text: #b94a48; -@state-danger-bg: #f2dede; -@state-danger-border: darken(spin(@state-danger-bg, -10), 3%); - @state-success-text: #468847; @state-success-bg: #dff0d8; @state-success-border: darken(spin(@state-success-bg, -10), 5%); @@ -389,6 +383,14 @@ @state-info-bg: #d9edf7; @state-info-border: darken(spin(@state-info-bg, -10), 7%); +@state-warning-text: #c09853; +@state-warning-bg: #fcf8e3; +@state-warning-border: darken(spin(@state-warning-bg, -10), 5%); + +@state-danger-text: #b94a48; +@state-danger-bg: #f2dede; +@state-danger-border: darken(spin(@state-danger-bg, -10), 5%); + // Tooltips // ------------------------- @@ -585,8 +587,8 @@ // Close // ------------------------ -@close-color: #000; @close-font-weight: bold; +@close-color: #000; @close-text-shadow: 0 1px 0 #fff; |
