-
-
Notifications
You must be signed in to change notification settings - Fork 78.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Break mixins.less up into smaller modules.
Move all deprecated vendor prefix mixins to less/mixins/vendor-prefixes.less Create mixins directory and move partials to that directory. FIXES #12994
- Loading branch information
mrmrs
committed
Mar 10, 2014
1 parent
1a5fb4e
commit 348b7de
Showing
37 changed files
with
1,075 additions
and
1,094 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
// Alerts | ||
|
||
.alert-variant(@background; @border; @text-color) { | ||
background-color: @background; | ||
border-color: @border; | ||
color: @text-color; | ||
|
||
hr { | ||
border-top-color: darken(@border, 5%); | ||
} | ||
.alert-link { | ||
color: darken(@text-color, 10%); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
// Contextual backgrounds | ||
|
||
.bg-variant(@color) { | ||
background-color: @color; | ||
a&:hover { | ||
background-color: darken(@color, 10%); | ||
} | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
// Single side border-radius | ||
|
||
.border-top-radius(@radius) { | ||
border-top-right-radius: @radius; | ||
border-top-left-radius: @radius; | ||
} | ||
.border-right-radius(@radius) { | ||
border-bottom-right-radius: @radius; | ||
border-top-right-radius: @radius; | ||
} | ||
.border-bottom-radius(@radius) { | ||
border-bottom-right-radius: @radius; | ||
border-bottom-left-radius: @radius; | ||
} | ||
.border-left-radius(@radius) { | ||
border-bottom-left-radius: @radius; | ||
border-top-left-radius: @radius; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
// Button variants | ||
// | ||
// Easily pump out default styles, as well as :hover, :focus, :active, | ||
// and disabled options for all buttons | ||
|
||
.button-variant(@color; @background; @border) { | ||
color: @color; | ||
background-color: @background; | ||
border-color: @border; | ||
|
||
&:hover, | ||
&:focus, | ||
&:active, | ||
&.active, | ||
.open .dropdown-toggle& { | ||
color: @color; | ||
background-color: darken(@background, 10%); | ||
border-color: darken(@border, 12%); | ||
} | ||
&:active, | ||
&.active, | ||
.open .dropdown-toggle& { | ||
background-image: none; | ||
} | ||
&.disabled, | ||
&[disabled], | ||
fieldset[disabled] & { | ||
&, | ||
&:hover, | ||
&:focus, | ||
&:active, | ||
&.active { | ||
background-color: @background; | ||
border-color: @border; | ||
} | ||
} | ||
|
||
.badge { | ||
color: @background; | ||
background-color: @color; | ||
} | ||
} | ||
|
||
// Button sizes | ||
.button-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) { | ||
padding: @padding-vertical @padding-horizontal; | ||
font-size: @font-size; | ||
line-height: @line-height; | ||
border-radius: @border-radius; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
// Center-align a block level element | ||
|
||
.center-block() { | ||
display: block; | ||
margin-left: auto; | ||
margin-right: auto; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
// Clearfix | ||
// Source: http://nicolasgallagher.com/micro-clearfix-hack/ | ||
// | ||
// For modern browsers | ||
// 1. The space content is one way to avoid an Opera bug when the | ||
// contenteditable attribute is included anywhere else in the document. | ||
// Otherwise it causes space to appear at the top and bottom of elements | ||
// that are clearfixed. | ||
// 2. The use of `table` rather than `block` is only necessary if using | ||
// `:before` to contain the top-margins of child elements. | ||
|
||
.clearfix() { | ||
&:before, | ||
&:after { | ||
content: " "; // 1 | ||
display: table; // 2 | ||
} | ||
&:after { | ||
clear: both; | ||
} | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
// Form validation states | ||
// | ||
// Used in forms.less to generate the form validation CSS for warnings, errors, | ||
// and successes. | ||
|
||
.form-control-validation(@text-color: #555; @border-color: #ccc; @background-color: #f5f5f5) { | ||
// Color the label and help text | ||
.help-block, | ||
.control-label, | ||
.radio, | ||
.checkbox, | ||
.radio-inline, | ||
.checkbox-inline { | ||
color: @text-color; | ||
} | ||
// Set the border and box shadow on specific inputs to match | ||
.form-control { | ||
border-color: @border-color; | ||
.box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work | ||
&:focus { | ||
border-color: darken(@border-color, 10%); | ||
@shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten(@border-color, 20%); | ||
.box-shadow(@shadow); | ||
} | ||
} | ||
// Set validation states also for addons | ||
.input-group-addon { | ||
color: @text-color; | ||
border-color: @border-color; | ||
background-color: @background-color; | ||
} | ||
// Optional feedback icon | ||
.form-control-feedback { | ||
color: @text-color; | ||
} | ||
} | ||
|
||
|
||
|
||
// Forms | ||
// -------------------------------------------------- | ||
|
||
// Form control focus state | ||
// | ||
// Generate a customized focus state and for any input with the specified color, | ||
// which defaults to the `@input-focus-border` variable. | ||
// | ||
// We highly encourage you to not customize the default value, but instead use | ||
// this to tweak colors on an as-needed basis. This aesthetic change is based on | ||
// WebKit's default styles, but applicable to a wider range of browsers. Its | ||
// usability and accessibility should be taken into account with any change. | ||
// | ||
// Example usage: change the default blue border and shadow to white for better | ||
// contrast against a dark gray background. | ||
.form-control-focus(@color: @input-border-focus) { | ||
@color-rgba: rgba(red(@color), green(@color), blue(@color), .6); | ||
&:focus { | ||
border-color: @color; | ||
outline: 0; | ||
.box-shadow(~"inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px @{color-rgba}"); | ||
} | ||
} | ||
|
||
// Form control sizing | ||
// | ||
// Relative text size, padding, and border-radii changes for form controls. For | ||
// horizontal sizing, wrap controls in the predefined grid classes. `<select>` | ||
// element gets special love because it's special, and that's a fact! | ||
.input-size(@input-height; @padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) { | ||
height: @input-height; | ||
padding: @padding-vertical @padding-horizontal; | ||
font-size: @font-size; | ||
line-height: @line-height; | ||
border-radius: @border-radius; | ||
|
||
select& { | ||
height: @input-height; | ||
line-height: @input-height; | ||
} | ||
|
||
textarea&, | ||
select[multiple]& { | ||
height: auto; | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
// Gradients | ||
|
||
// -------------------------------------------------- | ||
|
||
#gradient { | ||
|
||
// Horizontal gradient, from left to right | ||
// | ||
// Creates two color stops, start and end, by specifying a color and position for each color stop. | ||
// Color stops are not available in IE9 and below. | ||
.horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) { | ||
background-image: -webkit-linear-gradient(left, color-stop(@start-color @start-percent), color-stop(@end-color @end-percent)); // Safari 5.1-6, Chrome 10+ | ||
background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12 | ||
background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+ | ||
background-repeat: repeat-x; | ||
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",argb(@start-color),argb(@end-color))); // IE9 and down | ||
} | ||
|
||
// Vertical gradient, from top to bottom | ||
// | ||
// Creates two color stops, start and end, by specifying a color and position for each color stop. | ||
// Color stops are not available in IE9 and below. | ||
.vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) { | ||
background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+ | ||
background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12 | ||
background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+ | ||
background-repeat: repeat-x; | ||
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@start-color),argb(@end-color))); // IE9 and down | ||
} | ||
|
||
.directional(@start-color: #555; @end-color: #333; @deg: 45deg) { | ||
background-repeat: repeat-x; | ||
background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+ | ||
background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12 | ||
background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+ | ||
} | ||
.horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) { | ||
background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color); | ||
background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color); | ||
background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color); | ||
background-repeat: no-repeat; | ||
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback | ||
} | ||
.vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) { | ||
background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color); | ||
background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color); | ||
background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color); | ||
background-repeat: no-repeat; | ||
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback | ||
} | ||
.radial(@inner-color: #555; @outer-color: #333) { | ||
background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color); | ||
background-image: radial-gradient(circle, @inner-color, @outer-color); | ||
background-repeat: no-repeat; | ||
} | ||
.striped(@color: rgba(255,255,255,.15); @angle: 45deg) { | ||
background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent); | ||
background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent); | ||
background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,92 @@ | ||
// Framework grid generation | ||
// -------------------------------------------------- | ||
|
||
// Used only by Bootstrap to generate the correct number of grid classes given | ||
// any value of `@grid-columns`. | ||
.make-grid-columns() { | ||
This comment has been minimized.
Sorry, something went wrong. |
||
// 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 | ||
} | ||
|
||
.float-grid-columns(@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-column(@index, @class, @type) when (@type = width) and (@index > 0) { | ||
.col-@{class}-@{index} { | ||
width: percentage((@index / @grid-columns)); | ||
} | ||
} | ||
.calc-grid-column(@index, @class, @type) when (@type = push) and (@index > 0) { | ||
.col-@{class}-push-@{index} { | ||
left: percentage((@index / @grid-columns)); | ||
} | ||
} | ||
.calc-grid-column(@index, @class, @type) when (@type = push) and (@index = 0) { | ||
.col-@{class}-push-0 { | ||
left: auto; | ||
} | ||
} | ||
.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index > 0) { | ||
.col-@{class}-pull-@{index} { | ||
right: percentage((@index / @grid-columns)); | ||
} | ||
} | ||
.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index = 0) { | ||
.col-@{class}-pull-0 { | ||
right: auto; | ||
} | ||
} | ||
.calc-grid-column(@index, @class, @type) when (@type = offset) { | ||
.col-@{class}-offset-@{index} { | ||
margin-left: percentage((@index / @grid-columns)); | ||
} | ||
} | ||
|
||
// Basic looping in LESS | ||
.loop-grid-columns(@index, @class, @type) when (@index >= 0) { | ||
.calc-grid-column(@index, @class, @type); | ||
// next iteration | ||
.loop-grid-columns((@index - 1), @class, @type); | ||
} | ||
|
||
// Create grid for specific class | ||
.make-grid(@class) { | ||
.float-grid-columns(@class); | ||
.loop-grid-columns(@grid-columns, @class, width); | ||
.loop-grid-columns(@grid-columns, @class, pull); | ||
.loop-grid-columns(@grid-columns, @class, push); | ||
.loop-grid-columns(@grid-columns, @class, offset); | ||
} | ||
|
Oops, something went wrong.
@mrmrs: it seems this breaks the customizer for me. I get