ホームページ  >  記事  >  ウェブフロントエンド  >  Bootstrap フォームをレイアウトするにはどのような方法がありますか? Bootstrapフォームレイアウトの作成方法(コード付き)

Bootstrap フォームをレイアウトするにはどのような方法がありますか? Bootstrapフォームレイアウトの作成方法(コード付き)

PHPz
PHPzオリジナル
2018-08-03 16:22:574677ブラウズ


Bootstrap とは何ですか? Bootstrap は Web アプリケーションと Web サイトを迅速に開発するためのフロントエンド フレームワークです。 Bootstrap は、いくつかの単純な HTML タグと拡張クラスを使用して、さまざまなスタイルのフォームを作成します。Bootstrap がどのようにフォームを作成するかを見てみましょう。

ブートストラップフォームレイアウト

【関連ビデオ推奨: ブートストラップチュートリアル

ブートストラップは、次のタイプのフォームレイアウトを提供します: 垂直フォーム (デフォルト)、インラインフォーム、水平フォーム、垂直フォームまたは基本フォーム

基本的なフォーム構造はブートストラップに付属しており、個々のフォーム コントロールはいくつかのグローバル スタイルを自動的に受け取ります。基本的なフォームを作成する手順を以下に示します。

role="form" を親

要素に追加します。

クラス .form-group を使用して、ラベルとコントロールを

に配置します。これは最適な間隔を得るために必要です。

すべてのテキスト要素

例:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"> 
    <title>Bootstrap 实例 - 基本表单</title>
    <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">  
    <script src="https://cdn.bootcss.com/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>

<form role="form">
    <div class="form-group">
        <label for="name">名称</label>
        <input type="text" class="form-control" id="name" 
               placeholder="请输入名称">
    </div>
    <div class="form-group">
        <label for="inputfile">文件输入</label>
        <input type="file" id="inputfile">
        <p class="help-block">这里是块级帮助文本的实例。</p>
    </div>
    <div class="checkbox">
        <label>
            <input type="checkbox"> 选择打勾
        </label>
    </div>
    <button type="submit" class="btn btn-default">提交</button>
</form>
    
</body>
</html>

実行結果は次のとおりです:

Bootstrap フォームをレイアウトするにはどのような方法がありますか? Bootstrapフォームレイアウトの作成方法(コード付き)


インラインフォーム

フォームを作成する必要がある場合、そのすべての要素はインラインで左揃えであり、ラベルは並べて表示 はい、クラス .form-inline を

タグに追加してください。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"> 
    <title>Bootstrap 实例 - 内联表单</title>
    <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">  
    <script src="https://cdn.bootcss.com/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>

<form class="form-inline" role="form">
    <div class="form-group">
        <label class="sr-only" for="name">名称</label>
        <input type="text" class="form-control" id="name" 
               placeholder="请输入名称">
    </div>
    <div class="form-group">
        <label class="sr-only" for="inputfile">文件输入</label>
        <input type="file" id="inputfile">
    </div>
    <div class="checkbox">
        <label>
            <input type="checkbox"> 请打勾
        </label>
    </div>
    <button type="submit" class="btn btn-default">提交</button>
</form>

</body>
</html>

実行結果は次のとおりです:

Bootstrap フォームをレイアウトするにはどのような方法がありますか? Bootstrapフォームレイアウトの作成方法(コード付き)


デフォルトでは、Bootstrap の input、select、textarea の幅は 100% です。インラインフォームを使用する場合、フォームコントロールで幅を設定する必要があります。

クラス .sr-only を使用すると、インラインフォームのラベルを非表示にすることができます。

横型フォーム

横型フォームは、マークの数だけでなく、フォームの表示形式も他のフォームと異なります。水平方向にレイアウトされたフォームを作成するには、次の手順に従います。

クラス .form-horizo​​ntal を親

要素に追加します。

クラス .form-group を使用して、ラベルとコントロールを

に配置します。

クラス .control-label をラベルに追加します。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"> 
    <title>Bootstrap 实例 - 水平表单</title>
    <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">  
    <script src="https://cdn.bootcss.com/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>

<form class="form-horizontal" role="form">
    <div class="form-group">
        <label for="firstname" class="col-sm-2 control-label">名</label>
        <div class="col-sm-10">
            <input type="text" class="form-control" id="firstname" 
                   placeholder="请输入名字">
        </div>
    </div>
    <div class="form-group">
        <label for="lastname" class="col-sm-2 control-label">姓</label>
        <div class="col-sm-10">
            <input type="text" class="form-control" id="lastname" 
                   placeholder="请输入姓">
        </div>
    </div>
    <div class="form-group">
        <div class="col-sm-offset-2 col-sm-10">
            <div class="checkbox">
                <label>
                    <input type="checkbox"> 是否记住
                </label>
            </div>
        </div>
    </div>
    <div class="form-group">
        <div class="col-sm-offset-2 col-sm-10">
            <button type="submit" class="btn btn-default">登录</button>
        </div>
    </div>
</form>

</body>
</html>

結果は以下の通りです

サポートされているフォームコントロール

Bootstrapは、主​​にinput、textarea、checkbox、radio、selectなどの最も一般的なフォームコントロールをサポートしています。

入力ボックス (入力)

最も一般的なフォームのテキストフィールドは、入力ボックスの入力です。ユーザーは、ほとんどの必要なフォーム データをそこに入力できます。 Bootstrap は、テキスト、パスワード、日時、ローカル日時、日付、月、時刻、週、数値、電子メール、URL、検索、電話番号、色など、すべてのネイティブ HTML5 入力タイプのサポートを提供します。入力を完全にスタイル設定するには、適切な型宣言が必要です。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"> 
    <title>Bootstrap 实例 - 输入框</title>
    <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">  
    <script src="https://cdn.bootcss.com/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>

<form role="form">
    <div class="form-group">
        <label for="name">标签</label>
        <input type="text" class="form-control" placeholder="文本输入">
    </div>
 </form>

</body>
</html>

実行結果は以下の通りです。

Bootstrap フォームをレイアウトするにはどのような方法がありますか? Bootstrapフォームレイアウトの作成方法(コード付き)

テキストボックス(テキストエリア)

複数行入力する必要がある場合は、テキストボックスのテキストエリアを使用できます。必要に応じて、行属性を変更します (行が少ない = 小さなボックス、行が多い = 大きなボックス)。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"> 
    <title>Bootstrap 实例 - 文本框</title>
    <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">  
    <script src="https://cdn.bootcss.com/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>

<form role="form">
    <div class="form-group">
        <label for="name">文本框</label>
        <textarea class="form-control" rows="3"></textarea>
    </div>
</form>

</body>
</html>

結果は次のとおりです:

Bootstrap フォームをレイアウトするにはどのような方法がありますか? Bootstrapフォームレイアウトの作成方法(コード付き)

チェックボックスとラジオボタン

チェックボックスとラジオボタンは、ユーザーが一連のプリセットから選択できるようにするために使用されます。オプションから選択します。

フォームを作成するとき、ユーザーがリストから複数のオプションを選択できるようにするには、チェックボックスを使用します。ユーザーが 1 つのオプションのみを選択できるように制限する場合は、無線を使用します。

一連のチェックボックスとラジオボタンに .checkbox-inline または .radio-inline クラスを使用して、それらが同じ行に表示されるように制御します。

次の例は両方のタイプ (デフォルトとインライン) を示しています:

インスタンス

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"> 
    <title>Bootstrap 实例 - 复选框和单选按钮</title>
    <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">  
    <script src="https://cdn.bootcss.com/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>

<label for="name">默认的复选框和单选按钮的实例</label>
<div class="checkbox">
    <label><input type="checkbox" value="">选项 1</label>
</div>
<div class="checkbox">
    <label><input type="checkbox" value="">选项 2</label>
</div>
<div class="radio">
    <label>
        <input type="radio" name="optionsRadios" id="optionsRadios1" value="option1" checked> 选项 1
    </label>
</div>
<div class="radio">
    <label>
        <input type="radio" name="optionsRadios" id="optionsRadios2" value="option2">选项 2 - 选择它将会取消选择选项 1
    </label>
</div>
<label for="name">内联的复选框和单选按钮的实例</label>
<div>
    <label class="checkbox-inline">
        <input type="checkbox" id="inlineCheckbox1" value="option1"> 选项 1
    </label>
    <label class="checkbox-inline">
        <input type="checkbox" id="inlineCheckbox2" value="option2"> 选项 2
    </label>
    <label class="checkbox-inline">
        <input type="checkbox" id="inlineCheckbox3" value="option3"> 选项 3
    </label>
    <label class="radio-inline">
        <input type="radio" name="optionsRadiosinline" id="optionsRadios3" value="option1" checked> 选项 1
    </label>
    <label class="radio-inline">
        <input type="radio" name="optionsRadiosinline" id="optionsRadios4"  value="option2"> 选项 2
    </label>
</div>

</body>
</html>

実行結果は次のとおりです:

Bootstrap フォームをレイアウトするにはどのような方法がありますか? Bootstrapフォームレイアウトの作成方法(コード付き)


選択ボックス (選択)

ユーザーに複数のオプションから選択したい場合に選択ボックスを使用しますが、デフォルトでは選択できるオプションは 1 つだけです。

ユーザーが複数のオプションを選択できるようにするには、multiple="multiple" を使用します。

下面的实例演示了这两种类型(select 和 multiple):

例子:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Bootstrap 实例 - 选择框</title>
    <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">  
    <script src="https://cdn.bootcss.com/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>

<form role="form">
    <div class="form-group">
        <label for="name">选择列表</label>
        <select class="form-control">
            <option>A</option>
            <option>B</option>
            <option>C</option>
            <option>D</option>
            <option>E</option>
        </select>
        <label for="name">可多选的选择列表</label>
        <select multiple class="form-control">
            <option>A</option>
            <option>B</option>
            <option>C</option>
            <option>D</option>
            <option>E</option>
        </select>
    </div>
</form>

</body>
</html>

运行结果如下:


Bootstrap フォームをレイアウトするにはどのような方法がありますか? Bootstrapフォームレイアウトの作成方法(コード付き)

静态控件

当您需要在一个水平表单内的表单标签后放置纯文本时,请在

上使用 class .form-control-static。

实例

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Bootstrap 实例 - 静态控件</title>
    <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">  
    <script src="https://cdn.bootcss.com/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>

<form class="form-horizontal" role="form">
    <div class="form-group">
        <label class="col-sm-2 control-label">Email</label>
        <div class="col-sm-10">
            <p class="form-control-static">email@example.com</p>
        </div>
    </div>
    <div class="form-group">
        <label for="inputPassword" class="col-sm-2 control-label">密码</label>
        <div class="col-sm-10">
            <input type="password" class="form-control" id="inputPassword" 
                   placeholder="请输入密码">
        </div>
    </div>
</form>

</body>
</html>

运行结果如下:


Bootstrap フォームをレイアウトするにはどのような方法がありますか? Bootstrapフォームレイアウトの作成方法(コード付き)

表单控件状态

除了 :focus 状态(即,用户点击 input 或使用 tab 键聚焦到 input 上),Bootstrap 还为禁用的输入框定义了样式,并提供了表单验证的 class。

输入框焦点

当输入框 input 接收到 :focus 时,输入框的轮廓会被移除,同时应用 box-shadow。

禁用的输入框 input

如果您想要禁用一个输入框 input,只需要简单地添加disabled 属性,这不仅会禁用输入框,还会改变输入框的样式以及当鼠标的指针悬停在元素上时鼠标指针的样式。

禁用的字段集 fieldset

添加 disabled 属性来禁用
内的所有控件。

验证状态

Bootstrap 包含了错误、警告和成功消息的验证样式。只需要对父元素简单地添加适当的 class(.has-warning、 .has-error 或 .has-success)即可使用验证状态。

下面的实例演示了所有控件状态:

实例

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"> 
    <title>Bootstrap 实例 - 表单控件状态</title>
    <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">  
    <script src="https://cdn.bootcss.com/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>

<form class="form-horizontal" role="form">
    <div class="form-group">
        <label class="col-sm-2 control-label">聚焦</label>
        <div class="col-sm-10">
            <input class="form-control" id="focusedInput" type="text"  value="该输入框获得焦点...">
        </div>
    </div>
    <div class="form-group">
        <label for="inputPassword" class="col-sm-2 control-label">
            禁用
        </label>
        <div class="col-sm-10">
            <input class="form-control" id="disabledInput" type="text" placeholder="该输入框禁止输入..." disabled>
        </div>
    </div>
    <fieldset disabled>
        <div class="form-group">
            <label for="disabledTextInput"  class="col-sm-2 control-label">禁用输入(Fieldset disabled)
            </label>
            <div class="col-sm-10">
                <input type="text" id="disabledTextInput" class="form-control"  placeholder="禁止输入">
            </div>
        </div>
        <div class="form-group">
            <label for="disabledSelect"  class="col-sm-2 control-label">禁用选择菜单(Fieldset disabled)
            </label>
            <div class="col-sm-10">
                <select id="disabledSelect" class="form-control">
                    <option>禁止选择</option>
                </select>
            </div>
        </div>
    </fieldset>
    <div class="form-group has-success">
        <label class="col-sm-2 control-label" for="inputSuccess">
            输入成功
        </label>
        <div class="col-sm-10">
            <input type="text" class="form-control" id="inputSuccess">
        </div>
    </div>
    <div class="form-group has-warning">
        <label class="col-sm-2 control-label" for="inputWarning">
            输入警告
        </label>
        <div class="col-sm-10">
            <input type="text" class="form-control" id="inputWarning">
        </div>
    </div>
    <div class="form-group has-error">
        <label class="col-sm-2 control-label" for="inputError">
            输入错误
        </label>
        <div class="col-sm-10">
            <input type="text" class="form-control" id="inputError">
        </div>
    </div>
</form>

</body>
</html>

运行结果如下:


Bootstrap フォームをレイアウトするにはどのような方法がありますか? Bootstrapフォームレイアウトの作成方法(コード付き)

表单控件大小

您可以分别使用 class .input-lg 和 .col-lg-* 来设置表单的高度和宽度。下面的实例演示了这点:

实例

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"> 
    <title>Bootstrap 实例 - 表单控件大小</title>
    <link rel="stylesheet" href="//cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">  
    <script src="//cdn.bootcss.com/jquery/2.1.1/jquery.min.js"></script>
    <script src="//cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>

<form role="form">
    <div class="form-group">
        <input class="form-control input-lg" type="text" placeholder=".input-lg">
    </div>
    <div class="form-group">
        <input class="form-control" type="text" placeholder="默认输入">
    </div>
    <div class="form-group">
        <input class="form-control input-sm" type="text" placeholder=".input-sm">
    </div>
    <div class="form-group">
    </div>
    <div class="form-group">
        <select class="form-control input-lg">
            <option value="">.input-lg</option>
        </select>
    </div>
    <div class="form-group">
        <select class="form-control">
            <option value="">默认选择</option>
        </select>
    </div>
    <div class="form-group">
        <select class="form-control input-sm">
            <option value="">.input-sm</option>
        </select>
    </div>

    <div class="row">
        <div class="col-lg-2">
            <input type="text" class="form-control" placeholder=".col-lg-2">
        </div>
        <div class="col-lg-3">
            <input type="text" class="form-control" placeholder=".col-lg-3">
        </div>
        <div class="col-lg-4">
            <input type="text" class="form-control" placeholder=".col-lg-4">
        </div>
    </div>
</form>

</body>
</html>

运行结果如下:


Bootstrap フォームをレイアウトするにはどのような方法がありますか? Bootstrapフォームレイアウトの作成方法(コード付き)

表单帮助文本

Bootstrap 表单控件可以在输入框 input 上有一个块级帮助文本。为了添加一个占用整个宽度的内容块,请在 后使用 .help-block。下面的实例演示了这点:

实例:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"> 
    <title>Bootstrap 实例 - 表单帮助文本</title>
    <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">  
    <script src="https://cdn.bootcss.com/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>

<form role="form">
    <span>帮助文本实例</span>
    <input class="form-control" type="text" placeholder="">
    <span class="help-block">一个较长的帮助文本块,超过一行,
        需要扩展到下一行。本实例中的帮助文本总共有两行。</span>
</form>

</body>
</html>

运行结果如下:

Bootstrap フォームをレイアウトするにはどのような方法がありますか? Bootstrapフォームレイアウトの作成方法(コード付き)



    相关文章推荐:

Bootstrap全局CSS样式之表单_html/css_WEB-ITnose

Bootstrap每天必学之栅格系统(布局)_javascript技巧




以上がBootstrap フォームをレイアウトするにはどのような方法がありますか? Bootstrapフォームレイアウトの作成方法(コード付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。