mirror of
https://github.com/twbs/bootstrap.git
synced 2024-12-01 13:24:25 +01:00
improve code quality on custom forms
This commit is contained in:
parent
dacac2ab72
commit
b92534c632
89
dist/css/bootstrap.css
vendored
89
dist/css/bootstrap.css
vendored
@ -1887,7 +1887,6 @@ legend {
|
||||
label {
|
||||
display: inline-block;
|
||||
margin-bottom: 5px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
input[type="search"] {
|
||||
@ -3019,7 +3018,6 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
position: relative;
|
||||
display: inline;
|
||||
padding-left: 1.5rem;
|
||||
font-weight: normal;
|
||||
color: #555;
|
||||
cursor: pointer;
|
||||
}
|
||||
@ -3027,7 +3025,6 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
position: absolute;
|
||||
z-index: -1;
|
||||
opacity: 0;
|
||||
/* Put the input behind the label so it doesn't overlay text */
|
||||
}
|
||||
.c-input > input:focus ~ .c-indicator {
|
||||
-webkit-box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
@ -3081,7 +3078,6 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgOCA4IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA4IDgiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTQsMUMyLjMsMSwxLDIuMywxLDRzMS4zLDMsMywzczMtMS4zLDMtM1M1LjcsMSw0LDF6Ii8+DQo8L3N2Zz4NCg==);
|
||||
}
|
||||
|
||||
/* Alternately, use another character */
|
||||
.control-x input:checked ~ .control-indicator {
|
||||
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iOHB4IiBoZWlnaHQ9IjhweCIgdmlld0JveD0iMCAwIDggOCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgOCA4IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik0xLjQsMEwwLDEuNGwwLjcsMC43bDEuOCwxLjhMMC43LDUuN0wwLDYuNGwxLjQsMS40bDAuNy0wLjdsMS44LTEuOGwxLjgsMS44bDAuNywwLjdsMS40LTEuNEw3LjEsNS43DQoJTDUuMywzLjlsMS44LTEuOGwwLjctMC43TDYuNCwwTDUuNywwLjdMMy45LDIuNUwyLjEsMC43QzIuMSwwLjcsMS40LDAsMS40LDB6Ii8+DQo8L3N2Zz4NCg==);
|
||||
}
|
||||
@ -3102,16 +3098,12 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Select
|
||||
*/
|
||||
.select {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.select select {
|
||||
.select > select {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
-webkit-appearance: none;
|
||||
@ -3125,17 +3117,23 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
border-radius: .25rem;
|
||||
outline: 0;
|
||||
|
||||
-moz-appearance: none;
|
||||
appearance: none;
|
||||
}
|
||||
|
||||
/* Undo the Firefox inner focus ring */
|
||||
.select select:focus:-moz-focusring {
|
||||
.select > select:focus {
|
||||
-webkit-box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
}
|
||||
.select > select:focus:-moz-focusring {
|
||||
color: transparent;
|
||||
text-shadow: 0 0 0 #000;
|
||||
}
|
||||
|
||||
/* Dropdown arrow */
|
||||
.select > select:active {
|
||||
color: #fff;
|
||||
background-color: #0074d9;
|
||||
}
|
||||
.select > select::-ms-expand {
|
||||
display: none;
|
||||
}
|
||||
.select:after {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
@ -3152,37 +3150,11 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
border-left: .35rem solid transparent;
|
||||
}
|
||||
|
||||
/* Hover state */
|
||||
/* Uncomment if you need it, but be aware of the sticky iOS states.
|
||||
.select select:hover {
|
||||
background-color: #ddd;
|
||||
}
|
||||
*/
|
||||
/* Focus */
|
||||
.select select:focus {
|
||||
-webkit-box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
}
|
||||
|
||||
/* Active/open */
|
||||
.select select:active {
|
||||
color: #fff;
|
||||
background-color: #0074d9;
|
||||
}
|
||||
|
||||
/* Hide the arrow in IE10 and up */
|
||||
.select select::-ms-expand {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* Media query to target Firefox only */
|
||||
@-moz-document url-prefix() {
|
||||
/* Firefox hack to hide the arrow */
|
||||
/* <option> elements inherit styles from <select>, so reset them. */
|
||||
.select select {
|
||||
padding-right: 1rem;
|
||||
text-indent: .01px;
|
||||
text-overflow: '';
|
||||
text-overflow: "";
|
||||
}
|
||||
|
||||
.select option {
|
||||
@ -3190,7 +3162,6 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
}
|
||||
}
|
||||
|
||||
/* IE9 hack to hide the arrow */
|
||||
@media screen and (min-width: 0\0) {
|
||||
.select select {
|
||||
z-index: 1;
|
||||
@ -3219,9 +3190,6 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* File
|
||||
*/
|
||||
.file {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
@ -3278,40 +3246,11 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
border-radius: 0 .25rem .25rem 0;
|
||||
}
|
||||
|
||||
/* Focus */
|
||||
.file input:focus ~ .file-custom {
|
||||
-webkit-box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
}
|
||||
|
||||
/*
|
||||
* Control layouts
|
||||
*/
|
||||
.controls-stacked {
|
||||
margin: 1rem 0;
|
||||
}
|
||||
|
||||
.controls-stacked .control, .controls-stacked .progress {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.controls-stacked .control + .control, .controls-stacked .progress + .progress {
|
||||
margin-top: .5rem;
|
||||
}
|
||||
|
||||
.controls-inline {
|
||||
margin: 1rem 0;
|
||||
}
|
||||
|
||||
.controls-inline .control {
|
||||
display: inline-block;
|
||||
height: 1rem;
|
||||
}
|
||||
|
||||
.controls-inline .control + .control {
|
||||
margin-left: 1rem;
|
||||
}
|
||||
|
||||
.nav {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
2
dist/css/bootstrap.css.map
vendored
2
dist/css/bootstrap.css.map
vendored
File diff suppressed because one or more lines are too long
2
dist/css/bootstrap.min.css
vendored
2
dist/css/bootstrap.min.css
vendored
File diff suppressed because one or more lines are too long
@ -68,14 +68,14 @@ Custom checkboxes and radios are inline to start. Add a parent with class `.c-in
|
||||
Similar to the checkboxes and radios, we wrap the `<select>` in a `<label>` as a semantic wrapper that we can generate custom styles on with CSS's generated content.
|
||||
|
||||
{% example html %}
|
||||
<label class="select">
|
||||
<select>
|
||||
<option selected>Open this select menu</option>
|
||||
<option value="1">One</option>
|
||||
<option value="2">Two</option>
|
||||
<option value="3">Three</option>
|
||||
</select>
|
||||
</label>
|
||||
<label class="select">
|
||||
<select>
|
||||
<option selected>Open this select menu</option>
|
||||
<option value="1">One</option>
|
||||
<option value="2">Two</option>
|
||||
<option value="3">Three</option>
|
||||
</select>
|
||||
</label>
|
||||
{% endexample %}
|
||||
|
||||
The `<select>` has quite a few styles to override and includes a few hacks to get things done. Here's what's happening:
|
||||
@ -94,3 +94,24 @@ The `<select>` has quite a few styles to override and includes a few hacks to ge
|
||||
- The custom caret is unable to receive the selected state's `color`.
|
||||
|
||||
Any ideas on improving these are most welcome.
|
||||
|
||||
## File browser
|
||||
|
||||
{% example html %}
|
||||
<label class="file">
|
||||
<input type="file" id="file">
|
||||
<span class="file-custom"></span>
|
||||
</label>
|
||||
{% endexample %}
|
||||
|
||||
The file input is the most gnarly of the bunch. Here's how it works:
|
||||
|
||||
- We wrap the `<input>` in a `<label>` so the custom control properly triggers the file browser.
|
||||
- We hide the default file `<input>` via `opacity`.
|
||||
- We use `:after` to generate a custom background and directive (*Choose file...*).
|
||||
- We use `:before` to generate and position the *Browse* button.
|
||||
- We declare a `height` on the `<input>` for proper spacing for surrounding content.
|
||||
|
||||
In other words, it's an entirely custom element, all generated via CSS.
|
||||
|
||||
**Heads up!** The custom file input is currently unable to update the *Choose file...* text with the filename. Without JavaScript, this might not be possible to change, but I'm open to ideas.
|
||||
|
89
docs/dist/css/bootstrap.css
vendored
89
docs/dist/css/bootstrap.css
vendored
@ -1887,7 +1887,6 @@ legend {
|
||||
label {
|
||||
display: inline-block;
|
||||
margin-bottom: 5px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
input[type="search"] {
|
||||
@ -3019,7 +3018,6 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
position: relative;
|
||||
display: inline;
|
||||
padding-left: 1.5rem;
|
||||
font-weight: normal;
|
||||
color: #555;
|
||||
cursor: pointer;
|
||||
}
|
||||
@ -3027,7 +3025,6 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
position: absolute;
|
||||
z-index: -1;
|
||||
opacity: 0;
|
||||
/* Put the input behind the label so it doesn't overlay text */
|
||||
}
|
||||
.c-input > input:focus ~ .c-indicator {
|
||||
-webkit-box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
@ -3081,7 +3078,6 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgOCA4IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA4IDgiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTQsMUMyLjMsMSwxLDIuMywxLDRzMS4zLDMsMywzczMtMS4zLDMtM1M1LjcsMSw0LDF6Ii8+DQo8L3N2Zz4NCg==);
|
||||
}
|
||||
|
||||
/* Alternately, use another character */
|
||||
.control-x input:checked ~ .control-indicator {
|
||||
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iOHB4IiBoZWlnaHQ9IjhweCIgdmlld0JveD0iMCAwIDggOCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgOCA4IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik0xLjQsMEwwLDEuNGwwLjcsMC43bDEuOCwxLjhMMC43LDUuN0wwLDYuNGwxLjQsMS40bDAuNy0wLjdsMS44LTEuOGwxLjgsMS44bDAuNywwLjdsMS40LTEuNEw3LjEsNS43DQoJTDUuMywzLjlsMS44LTEuOGwwLjctMC43TDYuNCwwTDUuNywwLjdMMy45LDIuNUwyLjEsMC43QzIuMSwwLjcsMS40LDAsMS40LDB6Ii8+DQo8L3N2Zz4NCg==);
|
||||
}
|
||||
@ -3102,16 +3098,12 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Select
|
||||
*/
|
||||
.select {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.select select {
|
||||
.select > select {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
-webkit-appearance: none;
|
||||
@ -3125,17 +3117,23 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
border-radius: .25rem;
|
||||
outline: 0;
|
||||
|
||||
-moz-appearance: none;
|
||||
appearance: none;
|
||||
}
|
||||
|
||||
/* Undo the Firefox inner focus ring */
|
||||
.select select:focus:-moz-focusring {
|
||||
.select > select:focus {
|
||||
-webkit-box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
}
|
||||
.select > select:focus:-moz-focusring {
|
||||
color: transparent;
|
||||
text-shadow: 0 0 0 #000;
|
||||
}
|
||||
|
||||
/* Dropdown arrow */
|
||||
.select > select:active {
|
||||
color: #fff;
|
||||
background-color: #0074d9;
|
||||
}
|
||||
.select > select::-ms-expand {
|
||||
display: none;
|
||||
}
|
||||
.select:after {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
@ -3152,37 +3150,11 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
border-left: .35rem solid transparent;
|
||||
}
|
||||
|
||||
/* Hover state */
|
||||
/* Uncomment if you need it, but be aware of the sticky iOS states.
|
||||
.select select:hover {
|
||||
background-color: #ddd;
|
||||
}
|
||||
*/
|
||||
/* Focus */
|
||||
.select select:focus {
|
||||
-webkit-box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
}
|
||||
|
||||
/* Active/open */
|
||||
.select select:active {
|
||||
color: #fff;
|
||||
background-color: #0074d9;
|
||||
}
|
||||
|
||||
/* Hide the arrow in IE10 and up */
|
||||
.select select::-ms-expand {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* Media query to target Firefox only */
|
||||
@-moz-document url-prefix() {
|
||||
/* Firefox hack to hide the arrow */
|
||||
/* <option> elements inherit styles from <select>, so reset them. */
|
||||
.select select {
|
||||
padding-right: 1rem;
|
||||
text-indent: .01px;
|
||||
text-overflow: '';
|
||||
text-overflow: "";
|
||||
}
|
||||
|
||||
.select option {
|
||||
@ -3190,7 +3162,6 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
}
|
||||
}
|
||||
|
||||
/* IE9 hack to hide the arrow */
|
||||
@media screen and (min-width: 0\0) {
|
||||
.select select {
|
||||
z-index: 1;
|
||||
@ -3219,9 +3190,6 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* File
|
||||
*/
|
||||
.file {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
@ -3278,40 +3246,11 @@ input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="butto
|
||||
border-radius: 0 .25rem .25rem 0;
|
||||
}
|
||||
|
||||
/* Focus */
|
||||
.file input:focus ~ .file-custom {
|
||||
-webkit-box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
}
|
||||
|
||||
/*
|
||||
* Control layouts
|
||||
*/
|
||||
.controls-stacked {
|
||||
margin: 1rem 0;
|
||||
}
|
||||
|
||||
.controls-stacked .control, .controls-stacked .progress {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.controls-stacked .control + .control, .controls-stacked .progress + .progress {
|
||||
margin-top: .5rem;
|
||||
}
|
||||
|
||||
.controls-inline {
|
||||
margin: 1rem 0;
|
||||
}
|
||||
|
||||
.controls-inline .control {
|
||||
display: inline-block;
|
||||
height: 1rem;
|
||||
}
|
||||
|
||||
.controls-inline .control + .control {
|
||||
margin-left: 1rem;
|
||||
}
|
||||
|
||||
.nav {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
2
docs/dist/css/bootstrap.css.map
vendored
2
docs/dist/css/bootstrap.css.map
vendored
File diff suppressed because one or more lines are too long
2
docs/dist/css/bootstrap.min.css
vendored
2
docs/dist/css/bootstrap.min.css
vendored
File diff suppressed because one or more lines are too long
@ -7,36 +7,35 @@
|
||||
// Base class takes care of all the key behavioral aspects.
|
||||
|
||||
.c-input {
|
||||
position: relative;
|
||||
display: inline;
|
||||
padding-left: 1.5rem;
|
||||
color: #555;
|
||||
font-weight: normal;
|
||||
cursor: pointer;
|
||||
position: relative;
|
||||
display: inline;
|
||||
padding-left: 1.5rem;
|
||||
color: #555;
|
||||
cursor: pointer;
|
||||
|
||||
> input {
|
||||
position: absolute;
|
||||
opacity: 0;
|
||||
z-index: -1; /* Put the input behind the label so it doesn't overlay text */
|
||||
> input {
|
||||
position: absolute;
|
||||
z-index: -1; // Put the input behind the label so it doesn't overlay text
|
||||
opacity: 0;
|
||||
|
||||
&:focus ~ .c-indicator {
|
||||
box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
}
|
||||
&:focus ~ .c-indicator {
|
||||
box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
}
|
||||
|
||||
&:checked ~ .c-indicator {
|
||||
color: #fff;
|
||||
background-color: #0074d9;
|
||||
}
|
||||
&:checked ~ .c-indicator {
|
||||
color: #fff;
|
||||
background-color: #0074d9;
|
||||
}
|
||||
|
||||
&:active ~ .c-indicator {
|
||||
color: #fff;
|
||||
background-color: #84c6ff;
|
||||
}
|
||||
}
|
||||
&:active ~ .c-indicator {
|
||||
color: #fff;
|
||||
background-color: #84c6ff;
|
||||
}
|
||||
}
|
||||
|
||||
+ .c-input {
|
||||
margin-left: 1rem;
|
||||
}
|
||||
+ .c-input {
|
||||
margin-left: 1rem;
|
||||
}
|
||||
}
|
||||
|
||||
// Custom indicator
|
||||
@ -44,21 +43,21 @@
|
||||
// Generates a shadow element to create our makeshift checkbox/radio background.
|
||||
|
||||
.c-indicator {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
display: block;
|
||||
width: 1rem;
|
||||
height: 1rem;
|
||||
line-height: 1rem;
|
||||
font-size: 65%;
|
||||
color: #eee;
|
||||
text-align: center;
|
||||
background-color: #eee;
|
||||
background-size: 50% 50%;
|
||||
background-position: center center;
|
||||
background-repeat: no-repeat;
|
||||
user-select: none;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
display: block;
|
||||
width: 1rem;
|
||||
height: 1rem;
|
||||
font-size: 65%;
|
||||
line-height: 1rem;
|
||||
color: #eee;
|
||||
text-align: center;
|
||||
user-select: none;
|
||||
background-color: #eee;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
background-size: 50% 50%;
|
||||
}
|
||||
|
||||
// Checkboxes
|
||||
@ -66,13 +65,13 @@
|
||||
// Tweak just a few things for checkboxes.
|
||||
|
||||
.c-checkbox {
|
||||
.c-indicator {
|
||||
border-radius: .25rem;
|
||||
}
|
||||
.c-indicator {
|
||||
border-radius: .25rem;
|
||||
}
|
||||
|
||||
input:checked ~ .c-indicator {
|
||||
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgOCA4IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA4IDgiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTYuNCwxTDUuNywxLjdMMi45LDQuNUwyLjEsMy43TDEuNCwzTDAsNC40bDAuNywwLjdsMS41LDEuNWwwLjcsMC43bDAuNy0wLjdsMy41LTMuNWwwLjctMC43TDYuNCwxTDYuNCwxeiINCgkvPg0KPC9zdmc+DQo=);
|
||||
}
|
||||
input:checked ~ .c-indicator {
|
||||
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgOCA4IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA4IDgiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTYuNCwxTDUuNywxLjdMMi45LDQuNUwyLjEsMy43TDEuNCwzTDAsNC40bDAuNywwLjdsMS41LDEuNWwwLjcsMC43bDAuNy0wLjdsMy41LTMuNWwwLjctMC43TDYuNCwxTDYuNCwxeiINCgkvPg0KPC9zdmc+DQo=);
|
||||
}
|
||||
}
|
||||
|
||||
// Radios
|
||||
@ -80,21 +79,21 @@
|
||||
// Tweak just a few things for radios.
|
||||
|
||||
.c-radio {
|
||||
.c-indicator {
|
||||
border-radius: 50%;
|
||||
}
|
||||
.c-indicator {
|
||||
border-radius: 50%;
|
||||
}
|
||||
|
||||
input:checked ~ .c-indicator {
|
||||
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgOCA4IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA4IDgiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTQsMUMyLjMsMSwxLDIuMywxLDRzMS4zLDMsMywzczMtMS4zLDMtM1M1LjcsMSw0LDF6Ii8+DQo8L3N2Zz4NCg==);
|
||||
}
|
||||
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgOCA4IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA4IDgiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTQsMUMyLjMsMSwxLDIuMywxLDRzMS4zLDMsMywzczMtMS4zLDMtM1M1LjcsMSw0LDF6Ii8+DQo8L3N2Zz4NCg==);
|
||||
}
|
||||
}
|
||||
|
||||
/* Alternately, use another character */
|
||||
// Alternately, use another character
|
||||
.control-x input:checked ~ .control-indicator {
|
||||
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iOHB4IiBoZWlnaHQ9IjhweCIgdmlld0JveD0iMCAwIDggOCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgOCA4IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik0xLjQsMEwwLDEuNGwwLjcsMC43bDEuOCwxLjhMMC43LDUuN0wwLDYuNGwxLjQsMS40bDAuNy0wLjdsMS44LTEuOGwxLjgsMS44bDAuNywwLjdsMS40LTEuNEw3LjEsNS43DQoJTDUuMywzLjlsMS44LTEuOGwwLjctMC43TDYuNCwwTDUuNywwLjdMMy45LDIuNUwyLjEsMC43QzIuMSwwLjcsMS40LDAsMS40LDB6Ii8+DQo8L3N2Zz4NCg==);
|
||||
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iOHB4IiBoZWlnaHQ9IjhweCIgdmlld0JveD0iMCAwIDggOCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgOCA4IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik0xLjQsMEwwLDEuNGwwLjcsMC43bDEuOCwxLjhMMC43LDUuN0wwLDYuNGwxLjQsMS40bDAuNy0wLjdsMS44LTEuOGwxLjgsMS44bDAuNywwLjdsMS40LTEuNEw3LjEsNS43DQoJTDUuMywzLjlsMS44LTEuOGwwLjctMC43TDYuNCwwTDUuNywwLjdMMy45LDIuNUwyLjEsMC43QzIuMSwwLjcsMS40LDAsMS40LDB6Ii8+DQo8L3N2Zz4NCg==);
|
||||
}
|
||||
.control-dash input:checked ~ .control-indicator {
|
||||
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iOHB4IiBoZWlnaHQ9IjhweCIgdmlld0JveD0iMCAwIDggOCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgOCA4IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik0wLDN2Mmg4VjNIMHoiLz4NCjwvc3ZnPg0K)
|
||||
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iOHB4IiBoZWlnaHQ9IjhweCIgdmlld0JveD0iMCAwIDggOCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgOCA4IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik0wLDN2Mmg4VjNIMHoiLz4NCjwvc3ZnPg0K);
|
||||
}
|
||||
|
||||
// Layout options
|
||||
@ -103,222 +102,187 @@
|
||||
// set. Use these optional classes to tweak the layout.
|
||||
|
||||
.c-inputs-stacked {
|
||||
.c-input {
|
||||
display: inline;
|
||||
.c-input {
|
||||
display: inline;
|
||||
|
||||
&:after {
|
||||
display: block;
|
||||
content: "";
|
||||
margin-bottom: .25rem;
|
||||
}
|
||||
&:after {
|
||||
display: block;
|
||||
margin-bottom: .25rem;
|
||||
content: "";
|
||||
}
|
||||
|
||||
+ .c-input {
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
+ .c-input {
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Select
|
||||
*/
|
||||
// Select
|
||||
//
|
||||
// Replaces the browser default select with a custom one.
|
||||
|
||||
.select {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
color: #555;
|
||||
}
|
||||
.select select {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
padding: .5rem 2.25rem .5rem 1rem;
|
||||
line-height: 1.5;
|
||||
color: #555;
|
||||
background-color: #eee;
|
||||
border: 0;
|
||||
border-radius: .25rem;
|
||||
cursor: pointer;
|
||||
outline: 0;
|
||||
-webkit-appearance: none;
|
||||
-moz-appearance: none;
|
||||
appearance: none;
|
||||
}
|
||||
/* Undo the Firefox inner focus ring */
|
||||
.select select:focus:-moz-focusring {
|
||||
color: transparent;
|
||||
text-shadow: 0 0 0 #000;
|
||||
}
|
||||
/* Dropdown arrow */
|
||||
.select:after {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
right: 1.25rem;
|
||||
display: inline-block;
|
||||
content: "";
|
||||
width: 0;
|
||||
height: 0;
|
||||
margin-top: -.15rem;
|
||||
pointer-events: none;
|
||||
border-top: .35rem solid;
|
||||
border-right: .35rem solid transparent;
|
||||
border-bottom: .35rem solid transparent;
|
||||
border-left: .35rem solid transparent;
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
color: #555;
|
||||
|
||||
> select {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
padding: .5rem 2.25rem .5rem 1rem;
|
||||
margin: 0;
|
||||
line-height: 1.5;
|
||||
color: #555;
|
||||
cursor: pointer;
|
||||
background-color: #eee;
|
||||
border: 0;
|
||||
border-radius: .25rem;
|
||||
outline: 0;
|
||||
-webkit-appearance: none;
|
||||
appearance: none;
|
||||
|
||||
&:focus {
|
||||
box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
|
||||
// Undo the Firefox inner focus ring
|
||||
&:-moz-focusring {
|
||||
color: transparent;
|
||||
text-shadow: 0 0 0 #000;
|
||||
}
|
||||
}
|
||||
|
||||
&:active {
|
||||
color: #fff;
|
||||
background-color: #0074d9;
|
||||
}
|
||||
|
||||
// Hide the arrow in IE10 and up
|
||||
&::-ms-expand {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
// Dropdown arrow
|
||||
&:after {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
right: 1.25rem;
|
||||
display: inline-block;
|
||||
width: 0;
|
||||
height: 0;
|
||||
margin-top: -.15rem;
|
||||
pointer-events: none;
|
||||
content: "";
|
||||
border-top: .35rem solid;
|
||||
border-right: .35rem solid transparent;
|
||||
border-bottom: .35rem solid transparent;
|
||||
border-left: .35rem solid transparent;
|
||||
}
|
||||
}
|
||||
|
||||
/* Hover state */
|
||||
/* Uncomment if you need it, but be aware of the sticky iOS states.
|
||||
.select select:hover {
|
||||
background-color: #ddd;
|
||||
}
|
||||
*/
|
||||
// Hover state
|
||||
// Uncomment if you need it, but be aware of the sticky iOS states.
|
||||
// .select select:hover {
|
||||
// background-color: #ddd;
|
||||
// }
|
||||
|
||||
/* Focus */
|
||||
.select select:focus {
|
||||
box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
}
|
||||
|
||||
/* Active/open */
|
||||
.select select:active {
|
||||
color: #fff;
|
||||
background-color: #0074d9;
|
||||
}
|
||||
|
||||
/* Hide the arrow in IE10 and up */
|
||||
.select select::-ms-expand {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* Media query to target Firefox only */
|
||||
// Media query to target Firefox only
|
||||
@-moz-document url-prefix() {
|
||||
/* Firefox hack to hide the arrow */
|
||||
.select select {
|
||||
text-indent: 0.01px;
|
||||
text-overflow: '';
|
||||
padding-right: 1rem;
|
||||
}
|
||||
// Firefox hack to hide the arrow
|
||||
.select select {
|
||||
padding-right: 1rem;
|
||||
text-indent: 0.01px;
|
||||
text-overflow: "";
|
||||
}
|
||||
|
||||
/* <option> elements inherit styles from <select>, so reset them. */
|
||||
.select option {
|
||||
background-color: #fff;
|
||||
}
|
||||
// <option> elements inherit styles from <select>, so reset them.
|
||||
.select option {
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
/* IE9 hack to hide the arrow */
|
||||
// IE9 hack to hide the arrow
|
||||
@media screen and (min-width:0\0) {
|
||||
.select select {
|
||||
z-index: 1;
|
||||
padding: .5rem 1.5rem .5rem 1rem;
|
||||
}
|
||||
.select:after {
|
||||
z-index: 5;
|
||||
}
|
||||
.select:before {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 1rem;
|
||||
bottom: 0;
|
||||
z-index: 2;
|
||||
content: "";
|
||||
display: block;
|
||||
width: 1.5rem;
|
||||
background-color: #eee;
|
||||
}
|
||||
.select select:hover,
|
||||
.select select:focus,
|
||||
.select select:active {
|
||||
color: #555;
|
||||
background-color: #eee;
|
||||
}
|
||||
.select select {
|
||||
z-index: 1;
|
||||
padding: .5rem 1.5rem .5rem 1rem;
|
||||
}
|
||||
.select:after {
|
||||
z-index: 5;
|
||||
}
|
||||
.select:before {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 1rem;
|
||||
bottom: 0;
|
||||
z-index: 2;
|
||||
display: block;
|
||||
width: 1.5rem;
|
||||
content: "";
|
||||
background-color: #eee;
|
||||
}
|
||||
.select select:hover,
|
||||
.select select:focus,
|
||||
.select select:active {
|
||||
color: #555;
|
||||
background-color: #eee;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* File
|
||||
*/
|
||||
// File
|
||||
//
|
||||
// Custom file input.
|
||||
|
||||
.file {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
cursor: pointer;
|
||||
height: 2.5rem;
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
height: 2.5rem;
|
||||
cursor: pointer;
|
||||
}
|
||||
.file input {
|
||||
min-width: 14rem;
|
||||
margin: 0;
|
||||
filter: alpha(opacity=0);
|
||||
opacity: 0;
|
||||
min-width: 14rem;
|
||||
margin: 0;
|
||||
filter: alpha(opacity=0);
|
||||
opacity: 0;
|
||||
}
|
||||
.file-custom {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
left: 0;
|
||||
z-index: 5;
|
||||
height: 2.5rem;
|
||||
padding: .5rem 1rem;
|
||||
line-height: 1.5;
|
||||
color: #555;
|
||||
background-color: #fff;
|
||||
border: .075rem solid #ddd;
|
||||
border-radius: .25rem;
|
||||
box-shadow: inset 0 .2rem .4rem rgba(0,0,0,.05);
|
||||
-webkit-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
left: 0;
|
||||
z-index: 5;
|
||||
height: 2.5rem;
|
||||
padding: .5rem 1rem;
|
||||
line-height: 1.5;
|
||||
color: #555;
|
||||
user-select: none;
|
||||
background-color: #fff;
|
||||
border: .075rem solid #ddd;
|
||||
border-radius: .25rem;
|
||||
box-shadow: inset 0 .2rem .4rem rgba(0,0,0,.05);
|
||||
}
|
||||
.file-custom:after {
|
||||
content: "Choose file...";
|
||||
content: "Choose file...";
|
||||
}
|
||||
.file-custom:before {
|
||||
position: absolute;
|
||||
top: -.075rem;
|
||||
right: -.075rem;
|
||||
bottom: -.075rem;
|
||||
z-index: 6;
|
||||
display: block;
|
||||
content: "Browse";
|
||||
height: 2.5rem;
|
||||
padding: .5rem 1rem;
|
||||
line-height: 1.5;
|
||||
color: #555;
|
||||
background-color: #eee;
|
||||
border: .075rem solid #ddd;
|
||||
border-radius: 0 .25rem .25rem 0;
|
||||
position: absolute;
|
||||
top: -.075rem;
|
||||
right: -.075rem;
|
||||
bottom: -.075rem;
|
||||
z-index: 6;
|
||||
display: block;
|
||||
height: 2.5rem;
|
||||
padding: .5rem 1rem;
|
||||
line-height: 1.5;
|
||||
color: #555;
|
||||
content: "Browse";
|
||||
background-color: #eee;
|
||||
border: .075rem solid #ddd;
|
||||
border-radius: 0 .25rem .25rem 0;
|
||||
}
|
||||
|
||||
/* Focus */
|
||||
// Focus state
|
||||
.file input:focus ~ .file-custom {
|
||||
box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Control layouts
|
||||
*/
|
||||
|
||||
.controls-stacked {
|
||||
margin: 1rem 0;
|
||||
}
|
||||
.controls-stacked .control,
|
||||
.controls-stacked .progress {
|
||||
display: block;
|
||||
}
|
||||
.controls-stacked .control + .control,
|
||||
.controls-stacked .progress + .progress {
|
||||
margin-top: .5rem;
|
||||
}
|
||||
|
||||
.controls-inline {
|
||||
margin: 1rem 0;
|
||||
}
|
||||
.controls-inline .control {
|
||||
display: inline-block;
|
||||
height: 1rem;
|
||||
}
|
||||
.controls-inline .control + .control {
|
||||
margin-left: 1rem;
|
||||
box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
|
||||
}
|
||||
|
@ -32,7 +32,6 @@ legend {
|
||||
label {
|
||||
display: inline-block;
|
||||
margin-bottom: 5px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user