html - 使用 twitter bootstrap 将表单分成两列

标签 html css twitter-bootstrap-3

使用 bootstrap 设置 form 样式的正确方法是什么?在以下情况下:

two columns form view

  1. 我需要使用 fieldset(稍后会设置样式)

  2. 我需要将form分成两列

  3. 每列都有label+control,有些会有label+control1+control2等

我是 bootstrap 的新手。我来到了以下solution (jsfiddle) .

问题是:这是执行此操作的正确方法吗?这是否违反 Bootstrap 语义?

我不明白何时使用 form-group,我使用正确吗?

为了正确的语义,我不应该在此处包含一些class="row"吗?

HTML:

<div class="container">
... <some content here> ....

<form class="form-horizontal">
    <fieldset>
        <legend>Portfolio</legend>
        <div class="col-xs-6">
            <div class="form-group">
                <label for="name" class="col-xs-4 control-label">Label1</label>
                <div class="col-xs-8">
                    <input type="text" class="form-control" placeholder="control1" />
                </div>
            </div>
            <div class="form-group">
                <label for="name" class="col-xs-4 control-label">label2</label>
                <div class="col-xs-8">
                    <input type="text" class="form-control" placeholder="control2" />
                </div>
            </div>
            <div class="form-group">
                <label for="name" class="col-xs-4 control-label">label3</label>
                <div class="col-xs-8 form-inline">
                    <div class="form-group col-xs-6">
                        <input type="text" class="form-control" placeholder="control1" />
                    </div>
                    <div class="form-group col-xs-6">
                        <input type="text" class="form-control" placeholder="control2" />
                    </div>
                </div>
            </div>
        </div>
        <div class="col-xs-6">
            <div class="form-group">
                <label for="name" class="col-xs-4 control-label">Label1</label>
                <div class="col-xs-8">
                    <input type="text" class="form-control" placeholder="control1" />
                </div>
            </div>
            <div class="form-group">
                <label for="name" class="col-xs-4 control-label">label2</label>
                <div class="col-xs-8">
                    <input type="text" class="form-control" placeholder="control2" />
                </div>
            </div>
        </div>
    </fieldset>
</form>
</div>

我看过所有的 Bootstrap 表单示例,但我不知道如何将 form 分成两列。我也阅读了整个 documentation , 但我觉得这不是使用 col 和其他类的正确方法。

最佳答案

列分隔发生在 container 元素内。
每次你有一个元素你想在里面做网格时,给它 class="container" 并且在它里面你可以使用普通的 rowcolumn类。

同时检查 Bootstrap 开箱即用的表单样式。

下面是骨架,添加你需要的东西(比如文本对齐等)

<form class="container">
    <div class="row">
        <div class="col-md-3">
            <label for="username" class="control-label">label</label>
        </div>

        <div class="col-md-3">
            <input type="text" name="username" class="form-control" placeholder="Email address" autofocus>
        </div>

        <div class="col-md-3">
            <label for="username" class="control-label">label</label>
        </div>

        <div class="col-md-3">
            <input type="text" name="username" class="form-control" placeholder="Email address" autofocus>
        </div>

    </div>
</form>

关于html - 使用 twitter bootstrap 将表单分成两列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19637861/

相关文章:

html - 如果进度条值为 0,则不要在右侧添加边框

css - 防止按钮在值更改时移动位置

html - Bootstrap css 否决了我的 slidemenu 的 css

php - 更好地理解 PHP 和 SQL

javascript - 制作了一个适用于 JSFiddle 但不适用于 Github Pages 的 eclipse 刻草图

html - CSS 的自定义配色方案

html - 如何覆盖css中包含的css

javascript - 带 Bootstrap 3 的 Accordion

html - 拆分进度条

php - 我有一个 HTML 表单用于更新数据库中的内容,如果我在表单的输入字段中输入单引号,则 sql 更新失败