何时不在 Twitter Bootstrap 3 中使用表单组?
When NOT to use form-group in Twitter Bootstrap 3?
我正在开发一个 PHP templating engine 将具有围绕 Bootstrap 3 设计的自定义模块。
我正在开发一个 FormBuilder
模块,它将包含 FormField
个元素。这些 FormField
元素将自动呈现表单中的每个字段并为其设置样式。
问题是,我是否应该让这些 FormField
元素自动包装在 <div class='form-group'>
标签中?为什么有人不应该使用 form-group
作为表单组件?
如果有帮助,我计划有一个单独的 FormButton
class,因为按钮 behave/style 与其他表单元素不同。
编辑:再考虑一下后,我可以使用抽象 classes 来做这样的事情:
class FormBuilder {
protected $components = []; // Array of FormComponents
...
}
abstract class FormComponent {
...
}
class FormGroup extends FormComponent {
protected $field; // A FormField object
...
}
class FormField extends FormComponent {
...
}
class FormButton extends FormComponent {
...
}
这取决于您是否打算拥有一个处理一组单选框或复选框的 FormField。这确实是唯一具有多个没有组的输入标签的控件。对于这两种情况,您最好将其作为可选内容包括在内,因为从不输出表单组 div 或始终输出它们都会 运行 您在外观和感觉方面遇到麻烦。
我正在开发一个 PHP templating engine 将具有围绕 Bootstrap 3 设计的自定义模块。
我正在开发一个 FormBuilder
模块,它将包含 FormField
个元素。这些 FormField
元素将自动呈现表单中的每个字段并为其设置样式。
问题是,我是否应该让这些 FormField
元素自动包装在 <div class='form-group'>
标签中?为什么有人不应该使用 form-group
作为表单组件?
如果有帮助,我计划有一个单独的 FormButton
class,因为按钮 behave/style 与其他表单元素不同。
编辑:再考虑一下后,我可以使用抽象 classes 来做这样的事情:
class FormBuilder {
protected $components = []; // Array of FormComponents
...
}
abstract class FormComponent {
...
}
class FormGroup extends FormComponent {
protected $field; // A FormField object
...
}
class FormField extends FormComponent {
...
}
class FormButton extends FormComponent {
...
}
这取决于您是否打算拥有一个处理一组单选框或复选框的 FormField。这确实是唯一具有多个没有组的输入标签的控件。对于这两种情况,您最好将其作为可选内容包括在内,因为从不输出表单组 div 或始终输出它们都会 运行 您在外观和感觉方面遇到麻烦。