好的,我是一名初学 Bootstrap 的新手,但我已经找到了问题所在。以下是 Bootstrap 源代码中所有针对 has-error 的引用:
.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline {
color: #a94442;
}
.has-error .form-control {
border-color: #a94442;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
.has-error .form-control:focus {
border-color: #843534;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483;
box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483;
}
.has-error .input-group-addon {
color: #a94442;
background-color: #f2dede;
border-color: #a94442;
}
.has-error .form-control-feedback {
color: #a94442;
正如您所看到的,没有纯粹的.has-error样式。我以为可以将其应用于rails生成的类并继续进行。结果发现,您还必须正确命名具有适当的form-control
,control-label
类的组件。但在您这样做之后,我的代码与使用rails 4的bootstrap 3一起工作。希望这能帮助其他人。
或者,我提出了这种丑陋的方法,只需使其与基本的ruby formhelper表单一起工作。它不干净,但更少麻烦。
在custom.css.scss或您进行css样式设置的任何位置:
.field_with_errors {
input{
border-color: #a94442;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
label {
color: #a94442;
}
}