/**
* Creates the base structure of form field.
* @member Ext.form.field.Base
*/
@mixin extjs-form-field {
.#{$prefix}form-field,
.#{$prefix}form-display-field {
margin: 0 0 0 0;
font: $form-field-font;
color: $form-field-color;
}
.#{$prefix}form-item-hidden {
margin: 0;
}
.#{$prefix}form-text,
textarea.#{$prefix}form-field {
padding: $form-field-padding;
background: repeat-x 0 0;
border: $form-field-border-width solid;
background-color: $form-field-background-color;
@if $form-field-background-image {
background-image: theme-background-image($theme-name, $form-field-background-image);
}
border-color: $form-field-border-color;
}
$form-field-content-height: $form-field-height - top($form-field-padding) - top($form-field-border-width) - bottom($form-field-padding) - bottom($form-field-border-width);
$form-field-line-height: $form-field-content-height - 3px;
.#{$prefix}form-text {
height: $form-field-content-height;
line-height: $form-field-line-height;
vertical-align: top;
}
.#{$prefix}ie8m {
.#{$prefix}form-text {
line-height: $form-field-line-height;
}
}
.#{$prefix}border-box .#{$prefix}form-text {
height: $form-field-height;
}
textarea.#{$prefix}form-field {
color: $form-field-color;
overflow: auto;
height: auto;
line-height: normal;
background: repeat-x 0 0;
background-color: $form-field-background-color;
@if $form-field-background-image {
background-image: theme-background-image($theme-name, $form-field-background-image);
}
resize: none; //Disable browser resizable textarea
}
.#{$prefix}border-box textarea.#{$prefix}form-field {
height: auto;
}
@if $include-safari {
.#{$prefix}safari.#{$prefix}mac textarea.#{$prefix}form-field {
margin-bottom: -2px; // another bogus margin bug, safari/mac only
}
}
.#{$prefix}form-focus,
textarea.#{$prefix}form-focus {
border-color: $form-field-focus-border-color;
}
.#{$prefix}form-invalid-field,
textarea.#{$prefix}form-invalid-field {
background-color: $form-field-invalid-background-color;
@if $form-field-invalid-background-image {
background-image: theme-background-image($theme-name, $form-field-invalid-background-image);
background-repeat: $form-field-invalid-background-repeat;
background-position: $form-field-invalid-background-position;
}
border-color: $form-field-invalid-border-color;
}
.#{$prefix}form-item {
font: $form-label-font;
}
.#{$prefix}form-empty-field, textarea.#{$prefix}form-empty-field {
color: $form-field-empty-color;
}
.#{$prefix}webkit {
.#{$prefix}form-empty-field {
line-height: $form-field-line-height;
}
}
.#{$prefix}form-display-field {
padding-top: 3px;
}
@if $include-ie {
/*
In oldIE, text inputs get a mysterious extra pixel of spacing above and below.
This is targeted at IE6-IE7 (all modes) and IE9+ Quirks mode.
IE8 quirks on Windows 7 requires this fix, but on
IE8 quirks on Windows XP, this is breaks the layout.
TODO: Check field input heights in IE8 quirks on Windows Vista.
Since we can't specifically target a specific version of Windows via CSS, we default to fixing it the XP way, for now.
*/
.#{$prefix}quirks .#{$prefix}ie9p .#{$prefix}form-text,
.#{$prefix}ie7m .#{$prefix}form-text {
margin-top: -1px;
margin-bottom: -1px;
}
.#{$prefix}ie .#{$prefix}form-file {
height: $form-field-height + 1;
line-height: 18px;
vertical-align: middle;
}
}
.#{$prefix}field-default-toolbar .#{$prefix}form-text {
height: $form-toolbar-field-height - vertical($form-field-padding) - vertical($form-field-border-width);
}
.#{$prefix}border-box .#{$prefix}field-default-toolbar .#{$prefix}form-text {
height: $form-toolbar-field-height;
}
.#{$prefix}field-default-toolbar .#{$prefix}form-item-label-left {
padding-left: 4px;
}
}