码迷,mamicode.com
首页 > 其他好文 > 详细

Bootstrap入门(五)表单

时间:2016-09-08 22:58:41      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:

Bootstrap入门(五)表单
 
先引入本地的CSS文件 
        
  <link href="css/bootstrap.min.css" rel="stylesheet">
一.内联表单
单独的表单控件会被自动赋予一些全局样式。所有设置了 .form-control 类的 <input><textarea> 和 <select> 元素都将被默认设置宽度属性为 width: 100%;
而内联表单,要为 <form> 元素添加 .form-inline 类可使其内容左对齐并且表现为 inline-block 级别的控件。只适用于视口至少在 768px 宽度时(视口宽度再小的话就会使表单折叠)。
 
需要手动设置宽度:
在 Bootstrap 中,输入框和单选/多选框控件默认被设置为 width: 100%; 宽度。在内联表单,我们将这些元素的宽度设置为 width: auto;,因此,多个控件可以排列在同一行。根据你的布局需求,可能需要一些额外的定制化组件。
 
一定要添加 label 标签:
如果你没有为每个输入控件设置 label 标签,屏幕阅读器将无法正确识别。对于这些内联表单,你可以通过为label 设置 .sr-only 类将其隐藏。
 
代码操作(在chrome中运行,不同浏览器效果可能不同):
先创建一个表单 
      
        <form role="form" class="form-inline">           
           ... 
        </form> 
在表单中,可以有文本,输入框,选择文件,button按钮等,
 
1.日期。
先创建一个div,class为"form-group",尝试日期的选择:
            
            <div class="form-group">
                <label>日期</label>
                <input type="date" class="form-control">
            </div>
点击右侧按钮,效果:
技术分享

 

技术分享
2.输入框
(placeholder =X,X为提示内容;type= Y,Y为输入框应遵守的约束):
设置两个输入框,一个是输入邮箱,一个输入密码,一个提示“email ”,另一个提示“password ”
            
            <div class="form-group">
                <label>Email</label>
                <input type="email" class="form-control" placeholder="email">
                <label>Password</label>
                <input type="password" class="form-control" placeholder="password">
            </div>
 
提示效果:
技术分享

 

技术分享
输入时遵守约束/违反约束时的效果(type="email" 的输入框提示需要@符号,type="password" 的输入框输入内容变成点号):
 技术分享

 

技术分享
3.选择文件 
            
            <div class="form-group">
                <label>选择</label>
                <input type="file">
                <p class="help-block">选择文件</p>
            </div> 
效果:
技术分享
技术分享
点击“选择文件”,选择任意文件后,效果:
技术分享
技术分享
4.单选/多选框:
(不同的是,他的class是radio/checkbox) 
            
            <div class="radio">
                <label>
                    <input type="radio"> Check me out 1
                </label>
                <label>
                    <input type="radio"> Check me out2
                </label>
                <label>
                    <input type="radio"> Check me out3
                </label>
            </div>
            <br>
            <div class="checkbox">
                <label>
                    <input type="checkbox"> Check me out 1
                </label>
                <label>
                    <input type="checkbox"> Check me out2
                </label>
                <label>
                    <input type="checkbox"> Check me out3
                </label>
            </div> 
 
效果:
技术分享

 

技术分享
选择后效果:
技术分享

 

技术分享
 
二.水平表单
 
通过为表单添加 .form-horizontal 类,并联合使用 Bootstrap 预置的栅格类,可以将 label 标签和控件组水平并排布局。
 
代码操作:
先创建一个class为“form-horizontal”的表单
        
        <form class="form-horizontal">
            ...
        </form>

 添加第一个内容

           
            <div class="form-group">
                <label>email</label>
                <input type=‘email‘ placeholder="email">
            </div>
 
            <div class="form-group">
                <label>password</label>
                <input type=‘password‘ placeholder="password">
            </div>

 

但是发现效果有点不对,部分内容被覆盖掉了,如图:
技术分享
 
技术分享
我们可以使用栅格来解决这个问题(Bootstrap入门(二)栅格 ),修改代码为
            
           <div class="form-group">
                <label class="col-sm-2 control-label">email</label>
                <div class="col-sm-10">
                    <input type=‘email‘ placeholder="email">
                </div>
            </div>
 
            <div class="form-group">
                <label class="col-sm-2 control-label">password</label>
                <div class="col-sm-10">
                <input type=‘password‘ placeholder="password">
                </div>
            </div>
得到的效果是:
技术分享
 技术分享

 

同样,可以对单/多选框,按钮等都可以这样进行处理,添加代码:
            
            <div class="form-group">
                <div class=‘col-sm-offset-2 col-sm-10‘>
                    <div class=‘checkbox‘>
                        <label>
                            <input type=‘checkbox‘>test
                        </label>
                    </div>
                </div>
            </div>
 
            <div class=‘form-group‘>
                <div class=‘col-sm-offset-2 col-sm-10‘>
                    <button type=‘submit‘ class="btn btn-default">test</button>
                </div>
            </div> 
得到
技术分享

 

技术分享
三.表单中的一些处理
有时候,我们希望禁止使用一些输入框,可以添加“disabled ”
            
            <input type="text" class=‘form-control‘ placeholder="asd">
            <input type="text" class=‘form-control‘ placeholder="asd" disabled>
            <textarea class="form-control" rows=‘5‘>ASD</textarea>
对比看到第二行变蓝,无法再里面进行编辑,还有一个5行的文本框:
技术分享
 技术分享
 
四.表单输入框颜色
新建一个表单 
        
        <form role="form">
          ...
        </form> 
先新建几个输入框
         
         <form role="form">
            <div class="form-group">
                <label>test</label>
                <input class="form-control" type="text">
            </div>
            <div class="form-group">
                <label>test</label>
                <input class="form-control" type="text">
            </div>
            <div class="form-group">
                <label>test</label>
                <input class="form-control" type="text">
            </div>
        </form>
效果:
技术分享
 技术分享

 

修改/添加输入框的class(添加has-warning /has-success/has-error 等)
         
         <form role="form">
             <div class="form-group has-warning">
                <label>test</label>
                <input class="form-control" type="text">
            </div>
            <div class="form-group has-success">
                <label>test</label>
                <input class="form-control" type="text">
            </div>
            <div class="form-group has-error">
                <label>test</label>
                <input class="form-control" type="text">
            </div>
        </form>
根据不同情况,输入框有了不同的颜色效果:
技术分享
 技术分享

 

如果想使用一些图标,比如:

技术分享

技术分享
就要先把本地的css文件改为网络地址
<link href="//cdn.bootcss.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet">

 

新添加一个<span>来承载这个图标,把class改为图标的名字就行,比如: 
            
            <div class="form-group has-warning has-feedback">
                <label>test</label>
                <input class="form-control" type="text">
                <span class="glyphicon glyphicon-ok form-control-feedback" ></span>
            </div>
 
效果
技术分享
技术分享 
组合其他 
             
           <div class="form-group has-success has-feedback">
                <label class="control-label sr-only" for="inputGroupSuccess4">Input group with success</label>
                <div class="input-group">
                    <span class="input-group-addon">@</span>
                    <input type="text" class="form-control" id="inputGroupSuccess4" aria-describedby="inputGroupSuccess4Status">
                </div>
                <span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>
                <span id="inputGroupSuccess4Status" class="sr-only">(success)</span>
            </div>
效果
技术分享
 技术分享

 

 

 
 

Bootstrap入门(五)表单

标签:

原文地址:http://www.cnblogs.com/hnnydxgjj/p/5854640.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!