185 lines
4.1 KiB
SCSS
185 lines
4.1 KiB
SCSS
// taken from https://github.com/jlong/sass-twitter-bootstrap/blob/master/lib/forms.scss
|
|
|
|
@import "000_vars.css.scss";
|
|
|
|
button,
|
|
input,
|
|
select,
|
|
textarea {
|
|
font-size: 100%;
|
|
margin: 0;
|
|
vertical-align: baseline;
|
|
*vertical-align: middle;
|
|
}
|
|
button,
|
|
input {
|
|
line-height: normal; // FF3/4 have !important on line-height in UA stylesheet
|
|
*overflow: visible; // Inner spacing ie IE6/7
|
|
}
|
|
button::-moz-focus-inner,
|
|
input::-moz-focus-inner { // Inner padding and border oddities in FF3/4
|
|
border: 0;
|
|
padding: 0;
|
|
}
|
|
button,
|
|
input[type="button"],
|
|
input[type="reset"],
|
|
input[type="submit"] {
|
|
cursor: pointer; // Cursors on all buttons applied consistently
|
|
-webkit-appearance: button; // Style clicable inputs in iOS
|
|
}
|
|
input[type="search"] { // Appearance in Safari/Chrome
|
|
-webkit-appearance: textfield;
|
|
-webkit-box-sizing: content-box;
|
|
-moz-box-sizing: content-box;
|
|
box-sizing: content-box;
|
|
}
|
|
input[type="search"]::-webkit-search-decoration {
|
|
-webkit-appearance: none; // Inner-padding issues in Chrome OSX, Safari 5
|
|
}
|
|
textarea {
|
|
overflow: auto; // Remove vertical scrollbar in IE6-9
|
|
vertical-align: top; // Readability and alignment cross-browser
|
|
}
|
|
|
|
input[type=checkbox],
|
|
input[type=radio] {
|
|
cursor: pointer;
|
|
}
|
|
|
|
input,
|
|
textarea,
|
|
select {
|
|
display: inline-block;
|
|
height: $baseline;
|
|
padding: 4px;
|
|
font-size: $basefont;
|
|
line-height: $baseline;
|
|
border: 1px solid #ccc;
|
|
@include border-radius(3px);
|
|
}
|
|
|
|
input,
|
|
textarea {
|
|
width: 210px;
|
|
}
|
|
|
|
select {
|
|
padding: initial;
|
|
}
|
|
|
|
input[type=checkbox],
|
|
input[type=radio] {
|
|
width: auto;
|
|
height: auto;
|
|
padding: 0;
|
|
margin: 3px 0;
|
|
*margin-top: 0; /* IE6-7 */
|
|
line-height: normal;
|
|
border: none;
|
|
}
|
|
|
|
input[type=file] {
|
|
background-color: white;
|
|
padding: initial;
|
|
border: initial;
|
|
line-height: initial;
|
|
@include box-shadow(none);
|
|
}
|
|
|
|
input[type=button],
|
|
input[type=reset],
|
|
input[type=submit] {
|
|
width: auto;
|
|
height: auto;
|
|
}
|
|
|
|
select,
|
|
input[type=file] {
|
|
height: $baseline * 1.5; // In IE7, the height of the select element cannot be changed by height, only font-size
|
|
*height: auto; // Reset for IE7
|
|
line-height: $baseline * 1.5;
|
|
*margin-top: 4px; /* For IE7, add top margin to align select with labels */
|
|
}
|
|
|
|
textarea {
|
|
height: auto;
|
|
}
|
|
|
|
input,
|
|
textarea {
|
|
$transition: border linear .2s, box-shadow linear .2s;
|
|
@include transition($transition);
|
|
@include box-shadow(inset 0 1px 3px rgba(0,0,0,.1));
|
|
}
|
|
input:focus,
|
|
textarea:focus {
|
|
outline: 0;
|
|
border-color: rgba(82,168,236,.8);
|
|
$shadow: inset 0 1px 3px rgba(0,0,0,.1), 0 0 8px rgba(82,168,236,.6);
|
|
@include box-shadow($shadow);
|
|
}
|
|
input[type=file]:focus,
|
|
input[type=checkbox]:focus,
|
|
select:focus {
|
|
@include box-shadow(none); // override for file inputs
|
|
outline: 1px dotted #666; // Select elements don't get box-shadow styles, so instead we do outline
|
|
}
|
|
|
|
// Base .btn styles
|
|
button, input[type="submit"], a.btn {
|
|
// Button Base
|
|
cursor: pointer;
|
|
display: inline-block;
|
|
@include vertical-three-colors-gradient(#fff, #fff, 25%, darken(#fff, 10%));
|
|
padding: 3px 10px 3px;
|
|
text-shadow: 0 1px 1px rgba(255,255,255,.75);
|
|
color: black;
|
|
font-size: $basefont;
|
|
line-height: normal;
|
|
border: 1px solid #ccc;
|
|
border-bottom-color: #bbb;
|
|
@include border-radius(4px);
|
|
$shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
|
|
@include box-shadow($shadow);
|
|
|
|
&:hover {
|
|
background-position: 0 -15px;
|
|
color: #333;
|
|
text-decoration: none;
|
|
}
|
|
|
|
// Focus state for keyboard and accessibility
|
|
&:focus {
|
|
outline: 1px dotted #666;
|
|
}
|
|
|
|
// Active and Disabled states
|
|
&.active,
|
|
&:active {
|
|
$shadow: inset 0 2px 4px rgba(0,0,0,.25), 0 1px 2px rgba(0,0,0,.05);
|
|
@include box-shadow($shadow);
|
|
}
|
|
|
|
&.large {
|
|
font-size: $basefont + 15%;
|
|
line-height: normal;
|
|
padding: 9px 14px 9px;
|
|
@include border-radius(6px);
|
|
}
|
|
}
|
|
// Super jank hack for removing border-radius from IE9 so we can keep filter gradients on alerts and buttons
|
|
:root .alert-message,
|
|
:root .btn {
|
|
border-radius: 0 \0;
|
|
}
|
|
|
|
// Help Firefox not be a jerk about adding extra padding to buttons
|
|
button,
|
|
input[type=submit] {
|
|
&::-moz-focus-inner {
|
|
padding: 0;
|
|
border: 0;
|
|
}
|
|
}
|