BootStrap常用组件及其使用效果

2018.6.19  JAVA大实习要做校园导游咨询系统,之前对于前端知之甚少,学习了bootstrap框架,现用于巩固与交流学习

相关链接:Bootstrap中文网 BootCDN官网

BootStrap主要组件及其类
栅格系统col-lg-3(占3/12)col-sm-3(占3/12)col-xs-3(占3/12)
表单form-groupform-control                                
按钮btnbtn-defaultbtn-info
按钮组btn-toolbar

导航navnav-tabsnav-pills
导航栏nav-bar

面板panel

表格table

其他组件labellist-group

1.栅格系统

总之就是bootstarp用于方便分块地管理网页,方便用户使用的组件,其中:

col-lg-数字(lg代表large,sm代表小,xs代表最小)

数字总占12份,分成多少块取绝于自己,例如下面这个2-7-3的类型:

代码:


可以看出是仅仅使用了这一个类就可以达到很好地组织页面的效果。

2.表单

通常表单都有一个<form></form>标签所包含,用于写登录注册等表单提交项

BootStrap提供了很完善的表单美化组件,最关键的类有两个:form-group、form-control:

使用例子:


代码部分:


alert可用于表示一些提示信息,之后的alert-success呈现绿色,warning呈现黄色,error呈现红色,之后的编辑框也有展现

表单之中包含好几项,每一项由一个form-group包含,即用户名及其输入框,密码及其输入框,之后的has-success呈现绿色等提示信息。

利用form-inline类包含form-group组件可以将很多行组件放在一行显示


~延伸-选择大区、国家等也可以用这个form-control样式:


代码:

是不是觉得灰常好看呢!!!!!

~用于小小调整的input之前的Logo显示

例如金额输入¥logo显示:


涨逼格神器!

可以将input变大!仅仅一句在类里添加input-lg


当然也可以变小:input-sm  

3.按钮

按钮类

主要是按钮的样式及其颜色,下面分别展示了各种样式及其对应代码


  <button class="btn btn-default">默认</button>
  <button class="btn btn-primary">一般</button>
  <button class="btn btn-warning">警告</button>
  <button class="btn btn-danger">错误</button>
  <button class="btn btn-info">信息</button>

~按钮大小类


  <button class="btn btn-primary btn-xs">最小</button>
  <button class="btn btn-primary btn-sm">小</button>
  <button class="btn btn-primary">默认</button>
  <button class="btn btn-primary btn-lg">大</button>

~占母元素整宽类:btn-block


~按钮不可点: disabled属性:disabled


  <button disabled="disabled" class="btn btn-default">戳我</button>

4.按钮组

多个按钮联合使用时使用:btn-toolbar


<div class="btn-toolbar">
    <div class="btn-group btn-group-lg">
      <button class="btn btn-default"type="button" name="button">戳我</button>
      <button class="btn btn-default"type="button" name="button">戳我</button>
      <button class="btn btn-default"type="button" name="button">戳我</button>
    </div>
    <div class="btn-group btn-group-sm">
      <button class="btn btn-default"type="button" name="button">戳我</button>
      <button class="btn btn-default"type="button" name="button">戳我</button>
      <button class="btn btn-default"type="button" name="button">戳我</button>
    </div>
    <div class="btn-group btn-group-xs">
      <button class="btn btn-default"type="button" name="button">戳我</button>
      <button class="btn btn-default"type="button" name="button">戳我</button>
      <button class="btn btn-default"type="button" name="button">戳我</button>
    </div>
    <div class="btn-group-vertical">//垂直!!!!!!!!!
      <button class="btn btn-default"type="button" name="button">戳我</button>
      <button class="btn btn-default"type="button" name="button">戳我</button>
      <button class="btn btn-default"type="button" name="button">戳我</button>
    </div>
  </div>

5.导航

两种导航栏格式:

1.nav.nav-tabs(知乎在用哦)   注意这里是在ul里加类,即这是整个导航栏作用样式,并不是单独的导航选项!


2.nav.nav-pills(类似按钮的导航栏)


<ul class="nav nav-tabs">
      <li class="active"><a href="#">首页</a></li>
      <li><a href="#">登录</a></li>
      <li><a href="#">注册</a></li>
    </ul>
    <p>
      <ul class="nav nav-pills">
        <li class="active"><a href="#">首页</a></li>
        <li><a href="#">登录</a></li>
        <li><a href="#">注册</a></li>
      </ul>
    </p>

3.导航栏的堆叠显示


就是在类中加nav-stacked类表示堆叠显示

<ul class="nav nav-pills nav-stacked">
  <li class="active"><a href="#">登录</a></li>
  <li><a href="#">注册</a></li>
  <li><a href="#">忘记密码</a></li>
</ul>

6.导航栏

导航栏用于全局导航,其中包含1⃣️导航栏头部navbar-header,之中可以包含Logo,防在navbar-brand中

包含导航列表nav.navbar-nav

包含导航栏内表单navbar-form

可以添加导航内浮动:navbar-left、navbar-right

~效果:


  <div class="navbar navbar-default">
      <div class="container">
        <div class="navbar-header">                            头部!
          <div class="navbar-brand">Logo</div>                 Logo!
        </div>
        <ul class="nav navbar-nav">                            ul导航栏!
          <li><a href="#">首页</a></li>
          <li><a href="#">产品</a></li>
          <li><a href="#">联系我们</a></li>
        </ul>
        <form class="navbar-form navbar-left">                 navbar表单
          <div class="form-group">
            <input type="text" class="form-control">
          </div>
          <button class="btn btn-default">搜索</button>
        </form>
        <ul class="nav navbar-nav navbar-right">               navbar-浮动 
          <li><a href="#">首页</a></li>
          <li><a href="#">产品</a></li>
          <li><a href="#">联系我们</a></li>
        </ul>
    </div>

7.面板

1.panel类+panel-default/panel-warning/panel-info

2.panel-heading头部分(可包含panel-title直接标注标题)

3.panel-body

4.panel-footer(防止喧宾夺主,可以给文字添加text-muted使其变淡)

例子:


代码:

<div class="panel panel-warning">
  <div class="panel-heading">
    <div class="panel-title">
      用户统计
      <div class="small text-muted">
        每日用户情况统计
      </div>
    </div>
  </div>
  <div class="panel-body">
    昨日共有188888人参观本网站
  </div>
  <div class="panel-footer">
    <div class="small text-muted">
      参考人数:3000000
    </div>
  </div>
</div>

8.表格

最基础样式添加,直接在table中添加类table:


添加分格样式:table-striped


悬停高亮:table-hover

加边框:table-bordered


单行不同显示:对应行添加不同样式:danger\success\info


code:

<table class="table table-striped">
    <thead>
      <tr>
        <th>用户名</th>
        <th>邮箱</th>
        <th>电话</th>
      </tr>
    </thead>
    <tbody>
      <tr class="danger">
        <td>yaomenglong</td>
        <td>yao@qq.com</td>
        <td>110</td>
      </tr>
      <tr class="success">
        <td>yansiming</td>
        <td>yan@qq.com</td>
        <td>119</td>
      </tr>
      <tr class="warning">
        <td>yanglong</td>
        <td>ys@qq.com</td>
        <td>120</td>
      </tr>
    </tbody>
  </table>

9.其他组件:

1.页码(pagination与pager)

普通类型:

代码:

  <ul class="pagination">
    <li><a href="#">上一页</a></li>
    <li><a href="#">1</a></li>
    <li class="active"><a href="#">2</a></li>
    <li><a href="#">3</a></li>
    <li><a href="#">下一页</a></li>
  </ul>

圆滑类型:

  <ul class="pager">
    <li><a href="#">上一页</a></li>
    <li class="disabled"><a href="#">下一页</a></li>
  </ul>

2.路径标签(breadcrumb)

代码:

  <div class="breadcrumb">
    <li><a href="#">首页</a></li>
    <li><a href="#">tool</a></li>
    <li class="active">锤子</li>
    <span class="badge">20k</span>
  </div>

3.标签(label)

    <label class="label label-info">思敏小可爱</label>
    <label class="label label-success">思敏小可爱</label>
    <label class="label label-warning">思敏小可爱</label>

4.图腾(badge)常用与阅读量或点赞数

<btton class="btn btn-info">赞<span class="badge">10</span></btton>

5.列表组件(list-group与list-group-item)

  <div class="list-group">
    <a href="#" class="list-group-item">1</a>
    <a href="#" class="list-group-item">2</a>
    <a href="#" class="list-group-item">3</a>
    <a href="#" class="list-group-item">4</a>
  </div>

以上就是BootStrap常用组件的效果与代码啦,当然还有部分细节没有列出来,但是应该足够交流学习以及自己复习啦

锵锵锵锵!第一篇博客诞生!!记录一下时间哈哈哈哈哈哈--2018-6.19-18.04

一个新入门的前端小萌新~~

  • 6
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JS组件Bootstrap Table使用方法详解 转载 2016年03月21日 15:06:09 标签: Bootstrap Table 最近客户提出需求,想将原有的管理系统,做下优化,通过手机也能很好展现,想到2个方案: a方案:保留原有的页面,新设计一套适合手机的页面,当手机访问时,进入m.zhy.com(手机页面),pc设备访问时,进入www.zhy.com(pc页面) b方案:采用bootstrap框架,替换原有页面,自动适应手机、平板、PC 设备 采用a方案,需要设计一套界面,并且要得重新写适合页面的接口,考虑到时间及成本问题,故项目采用了b方案 一、效果展示 二、BootStrap table简单介绍 bootStrap table 是一个轻量级的table插件,使用AJAX获取JSON格式的数据,其分页和数据填充很方便,支持国际化 三、使用方法 1、引入js、css [js] view plain copy <!--css样式--> <link href="css/bootstrap/bootstrap.min.css" rel="stylesheet"> <link href="css/bootstrap/bootstrap-table.css" rel="stylesheet"> <!--js--> [removed][removed] [removed][removed] [removed][removed] [removed][removed] 2、table数据填充 bootStrap table获取数据有两种方式,一是通过table 的data-url属性指定数据源,二是通过JavaScript初始化表格时指定url来获取数据 [xhtml] view plain copy ... ... [xhtml] view plain copy $('#table').bootstrapTable({ url: 'data.json' }); 第二种方式交第一种而言在处理复杂数据时更为灵活,一般使用第二种方式来进行table数据填充。 [js] view plain copy $(function () { //1.初始化Table var oTable = new TableInit(); oTable.Init(); //2.初始化Button的点击事件 /* var oButtonInit = new ButtonInit(); oButtonInit.Init(); */ }); var TableInit = function () { var oTableInit = new Object(); //初始化Table oTableInit.Init = function () { $('#tradeList').bootstrapTable({ url: '/VenderManager/TradeList', //请求后台的URL(*) method: 'post', //请求方式(*) toolbar: '#toolbar', //工具按钮用哪个容器 striped: true, //是否显示行间隔色 cache: false, //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*) pagination: true, //是否显示分页(*) sortable: false, //是否启用排序 sortOrder: "asc", //排序方式 queryParams: oTableInit.queryParams,//传递参数(*) sidePagination: "server", //分页方式:client客户端分页,server服务端分页(*) pageNumber:1, //初始化加载第一页,默认第一页 pageSize: 50, //每页的记录行数(*) pageList: [10, 25, 50, 100], //可供选择的每页的行数(*) strictSearch: true, clickToSelect: true, //是否启用点击选中行 height: 460, //行高,如果没有设置height属性,表格自动根据记录条数觉得表格高度 uniqueId: "id", //每一行的唯一标识,一般为主键列 cardView: false, //是否显示详细视图 detailView: false, //是否显示父子表 columns: [{ field: 'id', title: '序号' }, { field: 'liushuiid', title: '交易编号' }, { field: 'orderid', title: '订单号' }, { field: 'receivetime', title: '交易时间' }, { field: 'price', title: '金额' }, { field: 'coin_credit', title: '投入硬币' }, { field: 'bill_credit', title: '投入纸币' }, { field: 'changes', title: '找零' }, { field: 'tradetype', title: '交易类型' },{ field: 'goodmachineid', title: '货机号' },{ field: 'inneridname', title: '货道号' },{ field: 'goodsName', title: '商品名称' }, { field: 'changestatus', title: '支付' },{ field: 'sendstatus', title: '出货' },] }); }; //得到查询的参数 oTableInit.queryParams = function (params) { var temp = { //这里的键的名字和控制器的变量名必须一直,这边改动,控制器也需要改成一样的 limit: params.limit, //页面大小 offset: params.offset, //页码 sdate: $("#stratTime").val(), edate: $("#endTime").val(), sellerid: $("#sellerid").val(), orderid: $("#orderid").val(), CardNumber: $("#CardNumber").val(), maxrows: params.limit, pageindex:params.pageNumber, portid: $("#portid").val(), CardNumber: $("#CardNumber").val(), tradetype:$('input:radio[name="tradetype"]:checked').val(), success:$('input:radio[name="success"]:checked').val(), }; return temp; }; return oTableInit; }; field字段必须与服务器端返回的字段对应才会显示出数据。 3、后台获取数据 a、servlet获取数据 [js] view plain copy BufferedReader bufr = new BufferedReader( new InputStreamReader(request.getInputStream(),"UTF-8")); StringBuilder sBuilder = new StringBuilder(""); String temp = ""; while((temp = bufr.readLine()) != null){ sBuilder.append(temp); } bufr.close(); String json = sBuilder.toString(); JSONObject json1 = JSONObject.fromObject(json); String sdate= json1.getString("sdate");//通过此方法获取前端数据 ... b、springMvc Controller里面对应的方法获取数据 [js] view plain copy public JsonResult GetDepartment(int limit, int offset, string orderId, string SellerId,PortId,CardNumber,Success,maxrows,tradetype) { ... } 4、分页(遇到问题最多的) 使用分页,server端返回的数据必须包括rows和total,代码如下: [js] view plain copy ...gblst = SqlADO.getTradeList(sql,pageindex,maxrows); JSONArray jsonData=new JSONArray(); JSONObject jo=null; for (int i=0,len=gblst.size();i<len;i++) { TradeBean tb = gblst.get(i); if(tb==null) { continue; } jo=new JSONObject(); jo.put("id", i+1); jo.put("liushuiid", tb.getLiushuiid()); jo.put("price", String.format("%1.2f",tb.getPrice()/100.0)); jo.put("mobilephone", tb.getMobilephone()); jo.put("receivetime", ToolBox.getYMDHMS(tb.getReceivetime())); jo.put("tradetype", clsConst.TRADE_TYPE_DES[tb.getTradetype()]); jo.put("changestatus", (tb.getChangestatus()!=0)?"成功":"失败"); jo.put("sendstatus", (tb.getSendstatus()!=0)?"成功":"失败"); jo.put("bill_credit", String.format("%1.2f",tb.getBill_credit()/100.0)); jo.put("changes",String.format("%1.2f",tb.getChanges()/100.0)); jo.put("goodroadid", tb.getGoodroadid()); jo.put("SmsContent", tb.getSmsContent()); jo.put("orderid", tb.getOrderid()); jo.put("goodsName", tb.getGoodsName()); jo.put("inneridname", tb.getInneridname()); jo.put("xmlstr", tb.getXmlstr()); jsonData.add(jo); } int TotalCount=SqlADO.getTradeRowsCount(sql); JSONObject jsonObject=new JSONObject(); jsonObject.put("rows", jsonData);//JSONArray jsonObject.put("total",TotalCount);//总记录数 out.print(jsonObject.toString()); ... 5、分页界面内容介绍 前端获取分页数据,代码如下: [js] view plain copy ...oTableInit.queryParams = function (params) { var temp = { //这里的键的名字和控制器的变量名必须一直,这边改动,控制器也需要改成一样的 limit: params.limit, //第几条记录 offset: params.offset, //显示一页多少记录 sdate: $("#stratTime").val(), }; return temp; };... 后端获取分页数据,代码如下: [js] view plain copy ...int pageindex=0; int offset = ToolBox.filterInt(json1.getString("offset")); int limit = ToolBox.filterInt(json1.getString("limit")); if(offset !=0){ pageindex = offset/limit; } pageindex+= 1;//第几页... 以上就是为大家分享的Bootstrap Table使用方法,希望对大家熟练掌握Bootstrap Table使用方法有所帮助。 转自:http://www.jb51.net/article/79033.htm

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值