2017-07-31 08:28:30 -04:00

216 lines
4.0 KiB
Plaintext

@form-control-radius: @border-radius-1;
@form-control-border: @border-default-color;
.form-group {
}
.form-label {
.block;
.text-sm;
.text-regular;
.mb(2);
}
.form-control-file {
display: block;
max-width: 100%;
&::-webkit-file-upload-button {
.btn;
.btn-xs;
.btn-secondary;
cursor: pointer;
}
}
.form-control {
.py(2);
.px(3);
.bg-light;
.border;
.rounded;
display: block;
width: 100%;
line-height: 1.25;
font-family: @font-family-base;
&:focus {
.tab-focus;
}
&.has-error {
border-color: @form-input-border-error-color;
}
select& {
.pr(5);
.bg-light;
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAANCAYAAABlyXS1AAAABGdBTUEAALGPC/xhBQAAALJJREFUGBm9UCEOwkAQ3L3Cf2pwpKkhoQkej0GRUE/bpSdwbR3BYXlAwwOQmP4Eh7xlh4BFsuJmZzK7N3dMnxJp4xD05ByvRfIBssMh0i1CoJsqP4Hg0KOybDcmnIn44H2+SpJsrKrHNJ0/MDljpr332xpuIDh08H8XF0XTM/O9rnP5Xm4vEEs8sbSuV6VdVTVISEBw6AzBnJk5L7ZhMIwNl7bp+v4hNFHkpuYbAcEx9LNeG4xMYRDZ28cAAAAASUVORK5CYII=);
background-position: right 8px center;
background-repeat: no-repeat;
appearance: none;
}
[type="date"]& {
// Get the date picker to be the same height as a regular form control
&::-webkit-datetime-edit-fields-wrapper { padding: 0; }
&::-webkit-inner-spin-button { height: 1.25em; }
}
[type="number"]& {
// Hide the up/down spinner in Webkit
&::-webkit-inner-spin-button { -webkit-appearance: none; }
// ...and Firefox
-moz-appearance: textfield;
}
&::placeholder {
color: @form-input-placeholder-color;
}
[type="color"]& {
position: relative;
// Increased padding values simulate height of regular text content
padding-top: 1.125rem;
padding-bottom: 1.125rem;
&::-webkit-color-swatch-wrapper {
.absolute;
.pin;
.py(2);
.px(3);
}
&::-webkit-color-swatch {
border: 1px solid rgba(0,0,0,0.2);
}
}
}
.form-control-borderless {
border-color: transparent;
}
.form-control-static {
.py(2);
display: block;
width: 100%;
line-height: 1.25;
border: 1px solid transparent; // To ensure matches regular control height
}
.help-block {
.text-sm;
.mt(1);
}
.form-group.has-error {
.form-label, .help-block {
.text-danger;
}
.form-control, .input-group {
border-color: @form-input-border-error-color;
}
.form-control-feedback {
.text-danger;
}
}
.form-control-feedback {
margin-top: @spacer-2;
}
.input-group {
display: flex;
border: 1px solid @form-control-border;
border-radius: @form-control-radius;
background: @color-white;
overflow: hidden;
.input-group-addon {
display: flex;
padding-left: @spacer-3;
padding-right: @spacer-3;
border-right: 1px solid @form-control-border;
align-items: center;
}
.form-control {
flex: 1;
border: none;
border-radius: 0;
}
}
.stacked-form {
}
.stacked-form-group {
margin-top: -1px;
position: relative;
.form-control, .input-group {
border-radius: 0;
box-shadow: none;
position: relative;
&:focus {
.z10;
}
}
&:first-of-type {
margin-top: 0;
.form-control, .input-group {
border-top-left-radius: @form-control-radius;
border-top-right-radius: @form-control-radius;
}
}
&:last-of-type {
.form-control, .input-group {
border-bottom-left-radius: @form-control-radius;
border-bottom-right-radius: @form-control-radius;
}
}
.inset-form-icon {
.z20;
}
}
.inset-form-group {
position: relative;
}
.inset-form-icon {
display: flex;
align-items: center;
justify-content: center;
position: absolute;
top: 0;
bottom: 0;
left: 1px; // Make up for border
width: 2.75em;
color: @text-dark-soft;
.z20;
}
.inset-form-control {
position: relative;
padding-left: 2.75em;
&:focus {
.z10;
}
}
.form-control-pad {
padding: 1em 1em;
&.inset-form-control {
padding-left: 3em;
}
}
.inset-form-icon-pad {
width: 1.4em;
left: ~"calc(1px + 1em)";
}