Bootstrap框架是一个前端UI设计的框架,它提供了统一的UI界面,简化了设计界面UI的过程(缺点是定制了界面,调整的余地不是太大)。尤其是现在的响应时布局(我的理解是页面根据不同的分辨率,采用不同的页面元素的布局),在Bootstrap中很好的支持了,只要简单设置了属性,就能自动实现响应时布局,大大简化了程序员的界面的过程。

因此,本人用Bootstrap框架实现了如下的界面,虽然简单,但也不凡(真要自己实现的话,不知要猴年马月了)

整个页面分为几个部分,分别用Bootstrap官网上的示例代码实现,最终拼成一个页面。各部分示意如下图所示

接下来依次讲解各个部分的代码

首先,构造空白页面,代码如下:

<!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta name="description" content="">
        <meta name="author" content="">
    
        <title>职业技能考证分数查询(Bootstrap)</title>

<link rel="stylesheet" href="http://cdn.bootcss.com/twitter-bootstrap/3.0.1/css/bootstrap.min.css">
        <link rel="stylesheet" href="http://cdn.bootcss.com/twitter-bootstrap/3.0.1/css/bootstrap-theme.min.css">

<!--[if lt IE 9]><script src="../../docs-assets/js/ie8-responsive-file-warning.js"></script><![endif]-->
        <!--[if lt IE 9]>
            <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
            <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
        <![endif]-->
    
        <style>
            .bs-docs-home
            {
            background-color: #1B31B1;
            background-image: url(line.png);
            }
    </style>
</head>

<body class="bs-docs-home">

<script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
    <script src="http://cdn.bootcss.com/twitter-bootstrap/3.0.1/js/bootstrap.min.js"></script>
</body>
</html>

要想使用Bootstrap框架,就要在页面中引用Bootstrap框架文件。一共四个:bootstrap.min.css、bootstrap-theme.min.css、jquery-1.10.2.min.js、bootstrap.min.js

只有引用了这些文件,接下来才可以使用Bootstrap框架提供的各种UI元素

接下来按照上图依次说明各个部分的代码

顶部说明文字:

设计整个页面的思路是整个页面放在一个面板(Panel)上,顶部的说明的文字就是面板头(Panel Head)

而Bootstrap框架的页面是一个12列的网格布局。因此,我把整个页面分成三部分。左右各3列宽的空白,中间6列宽放一个面板(Panel)。

代码如下:剩下部分的代码都依次在<div class="panel-body"> </div>中

<body class="bs-docs-home">
    <div class="container theme-showcase">
        <h1 style=" line-height:2em;"> </h1><br />
      
        <div class="row">
            <div class="col-sm-3"></div>
            <div class="col-sm-6">
                <div class="panel panel-primary">
                    <div class="panel-heading">
                        <h3 class="panel-title"><strong>职业技能考证分数查询</strong></h3>
                    </div>
                    <div class="panel-body"> 
                    </div> 
                </div> 
            </div> 
      
            <div class="col-sm-3"></div> 
        </div>
    </div> 
    <script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
    <script src="http://cdn.bootcss.com/twitter-bootstrap/3.0.1/js/bootstrap.min.js"></script>
</body>

提示文字

提示文字用的是Bootstrap框架中的提示(alert)组件,代码如下:

  <div class="alert alert-danger alert-dismissable"> 
      <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button> 
      <strong>注意!</strong> 本站查询的分数来源于12333官网,详情请到官网咨询
  </div> 
 

身份证表单和查询按钮

身份证表单和后面的科目表单都应该在一个表单中。身份证表单和查询按钮是利用Bootstrap框架的表单元素组。利用input group把文本框(input)和按钮(button)组合在一起。而Bootstrap框架提供了诸如水印、高亮等效果。为表单增色不少

    <form role="form" name="form1">

<div class="form-group"> 
            <label for="IDCard">请输入您的身份证号码</label> 
            <div class="input-group"> 
                <input type="text" class="form-control" id="IDCard" name="IDCard" placeholder="身份证号码" > 
                <span class="input-group-btn"> 
                    <button class="btn btn-default" type="button" onClick="form1.submit();" >查询</button> 
                </span> 
            </div> 
        </div> 
      
    </form> 
           

科目表单

科目表单也是利用Bootstrap框架的表单元素组。利用input group把文本框(input)和按钮(button)和下拉列表(ul)组合在一起。

可以在文本框里直接输入科目,也可以在下拉菜单中选择科目。具体的实现是在超链接(a)的点击事件(click)中用$('#Subject').val('计算机操作员')等代码来改变文本框中的内容。科目表单位置在身份证表单的下方,在表单(form)里面

代码如下:

<div class="form-group"> 
         <label for="Subject">请输入您要查询的科目</label> 
         <div class="input-group"> 
             <input type="text" class="form-control" id="Subject" name="Subject" placeholder="科目,空白科目意味着查询所有的科目" > 
             <div class="input-group-btn"> 
                 <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">科目 <span class="caret"></span></button> 
                 <ul class="dropdown-menu pull-right"> 
                     <li><a href="#" onClick="$('#Subject').val('计算机操作员');">计算机操作员</a></li> 
                     <li><a href="#" onClick="$('#Subject').val('网页设计');">网页设计</a></li> 
                     <li><a href="#" onClick="$('#Subject').val('多媒体');">多媒体</a></li> 
                 </ul> 
             </div> 
         </div> 
     </div>

查询错误信息

当点击查询按钮时,没有查到记录的时候,则显示该查询错误信息。和之前的提示文字一样,用的是Bootstrap框架中的提示(alert)组件。

这个信息是否显示,还需要后台动态代码的配合,动态代码根据查询的结果来决定是否显示该信息(没有记录,则显示该信息)。动态代码不在这篇文章里讨论。

位置在表单(form)的后面,代码如下:

<div class="alert alert-danger alert-dismissable"> 
        <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button> 
        <strong>注意!</strong> 没有查到成绩,请检查身份证号码和科目后,再次查询 
   </div>

成绩表格

当点击查询按钮时,查到记录的时候,则显示成绩表格。同样,是否显示也需要后台的动态代码的配合。

查询错误信息和成绩表格同时只能出现一个

代码如下:

    <div class="table-responsive"> 
        <table  border="0" cellspacing="0" cellpadding="0" class="table"> 
            <tr class=" label-primary"> 
                <th scope="col" width="50%" ><span style="color:white">科目</span></th> 
                <th scope="col"><span style="color:white">成绩</span></th> 
            </tr> 
            <tr class="active"> 
                <td>计算机操作员</td> 
                <td>没有成绩</td> 
            </tr> 
            <tr class="success"> 
                <td>计算机操作员</td> 
                <td>优秀</td> 
            </tr> 
            <tr class="active"> 
                <td>多媒体操作员</td> 
                <td>良好</td> 
            </tr> 
            <tr class="success"> 
                <td>网页设计</td> 
                <td>不及格</td> 
            </tr>  
        </table> 
    </div>          
   

这个页面是利用Bootstrap框架来实现的,得益于Bootstrap框架的强大,使得设计UI不再成为一件难事。但Bootstrap仅仅是UI框架,它的出彩还得依靠后台的动态代码的配合。

下面这个网址,就是笔者用上面的界面加上后台动态代码(PHP)来实现职业技能考试分数(仅限于上海)的查询的功能。大家可以去看看,并提出宝贵的意见(有效期1个月)。

http://bertin.sturgeon.mopaas.com/

完整的UI代码如下:

<!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta name="description" content="">
        <meta name="author" content="">
    
        <title>职业技能考证分数查询(Bootstrap)</title>

<link rel="stylesheet" href="http://cdn.bootcss.com/twitter-bootstrap/3.0.1/css/bootstrap.min.css">
        <link rel="stylesheet" href="http://cdn.bootcss.com/twitter-bootstrap/3.0.1/css/bootstrap-theme.min.css">

<!--[if lt IE 9]><script src="../../docs-assets/js/ie8-responsive-file-warning.js"></script><![endif]-->
        <!--[if lt IE 9]>
            <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
            <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
        <![endif]-->
    
        <style>
            .bs-docs-home
            {
            background-color: #1B31B1;
            background-image: url(line.png);
            }
    </style>
</head>

<body class="bs-docs-home">
    <div class="container theme-showcase">
        <h1 style=" line-height:2em;"> </h1><br />
      
        <div class="row">
            <div class="col-sm-3"></div>
        <div class="col-sm-6">
            <div class="panel panel-primary">
                <div class="panel-heading">
                    <h3 class="panel-title"><strong>职业技能考证分数查询</strong></h3>
                </div>
                <div class="panel-body">
                   <div class="alert alert-danger alert-dismissable">
                       <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
                       <strong>注意!</strong> 本站查询的分数来源于12333官网,详情请到官网咨询</div>
              
                       <form role="form" name="form1">

<div class="form-group">
                               <label for="IDCard">请输入您的身份证号码</label>
                               <div class="input-group">
                                   <input type="text" class="form-control" id="IDCard" name="IDCard" placeholder="身份证号码" >
                                   <span class="input-group-btn">
                                       <button class="btn btn-default" type="button" onClick="form1.submit();" >查询</button>
                                   </span>
                               </div>
                           </div>
        
                           <div class="form-group">
                               <label for="Subject">请输入您要查询的科目</label>
                               <div class="input-group">
                                   <input type="text" class="form-control" id="Subject" name="Subject" placeholder="科目,空白科目意味着查询所有的科目" >
                                   <div class="input-group-btn">
                                       <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">科目 <span class="caret"></span></button>
                                       <ul class="dropdown-menu pull-right">
                                           <li><a href="#" onClick="$('#Subject').val('计算机操作员');">计算机操作员</a></li>
                                           <li><a href="#" onClick="$('#Subject').val('网页设计');">网页设计</a></li>
                                           <li><a href="#" onClick="$('#Subject').val('多媒体');">多媒体</a></li>
                                       </ul>
                                   </div>
                               </div>
                           </div>
      
                       </form>
           
                       <div class="alert alert-danger alert-dismissable">
                           <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
                           <strong>注意!</strong> 没有查到成绩,请检查身份证号码和科目后,再次查询
                       </div> 
            
                       <div class="table-responsive">
                           <table  border="0" cellspacing="0" cellpadding="0" class="table">
                               <tr class=" label-primary">
                                   <th scope="col" width="50%" ><span style="color:white">科目</span></th>
                                   <th scope="col"><span style="color:white">成绩</span></th>
                               </tr>
                               <tr class="active">
                                   <td width="50%">计算机操作员</td>
                                   <td>没有成绩</td>
                               </tr>
                               <tr class="success">
                                   <td>计算机操作员</td>
                                   <td>优秀</td>
                               </tr>
                               <tr class="active">
                                   <td>多媒体操作员</td>
                                   <td>良好</td>
                               </tr>
                               <tr class="success">
                                   <td>网页设计</td>
                                   <td>不及格</td>
                               </tr> 
                           </table>
                       </div>         
                   </div>
               </div>
           </div>
     
           <div class="col-sm-3"></div>
        </div>
    </div> 
    <script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
    <script src="http://cdn.bootcss.com/twitter-bootstrap/3.0.1/js/bootstrap.min.js"></script>
</body>
</html>

UI设计实战篇——利用Bootstrap框架制作查询页面的界面的更多相关文章

  1. (转)UI设计实战篇——利用Bootstrap框架制作查询页面的界面

    原文地址:http://www.cnblogs.com/grenet/p/3413085.html Bootstrap框架是一个前端UI设计的框架,它提供了统一的UI界面,简化了设计界面UI的过程(缺 ...

  2. 利用Bootstrap框架制作查询页面的界面

    UI设计实战篇——利用Bootstrap框架制作查询页面的界面   Bootstrap框架是一个前端UI设计的框架,它提供了统一的UI界面,简化了设计界面UI的过程(缺点是定制了界面,调整的余地不是太 ...

  3. [转]Android中Xposed框架篇—利用Xposed框架实现拦截系统方法

    一.前言 关于Xposed框架相信大家应该不陌生了,他是Android中Hook技术的一个著名的框架,还有一个框架是CydiaSubstrate,但是这个框架是收费的,而且个人觉得不怎么好用,而Xpo ...

  4. [转载] Android中Xposed框架篇---利用Xposed框架实现拦截系统方法

    本文转载自: http://www.wjdiankong.cn/android%E4%B8%ADxposed%E6%A1%86%E6%9E%B6%E7%AF%87-%E5%88%A9%E7%94%A8 ...

  5. Python爬虫【实战篇】scrapy 框架爬取某招聘网存入mongodb

    创建项目 scrapy startproject zhaoping 创建爬虫 cd zhaoping scrapy genspider hr zhaopingwang.com 目录结构 items.p ...

  6. 20170811 使用Bootstrap框架写个页面

    采用Bootstrap-table 做的页面. 1. 增加Query 查询功能,涉及Ajax 来加载页面数据吧! <meta charset="UTF-8">  < ...

  7. jsonp跨域实例丨利用百度数据制作搜索页面

    <!DOCTYPE html><html>    <head>        <meta charset="UTF-8">      ...

  8. Bootstrap框架(基础篇)之按钮,网格,导航栏,下拉菜单

    一,按钮 注意:虽然在Bootstrap框架中使用任何标签元素都可以实现按钮风格,但个人并不建议这样使用,为了避免浏览器兼容性问题,个人强烈建议使用button或a标签来制作按钮. 框架中提供了基础按 ...

  9. 基于BootStrap框架构建快速响应的GPS部标监控平台

    最近一个客户要求将gps部标平台移植到bootStrap框架作为前端框架,符合交通部796部标只是他们的一个基本要求,重点是要和他们的冷链云物流平台进行适配.我自己先浏览了客户的云物流平台的界面,采用 ...

随机推荐

  1. Studio for ASP.NET Wijmo:使用 C1Pager 对 DataList 控件分页

    Studio for ASP.NET Wijmo 控件值得称赞的一点是它不仅仅单独为 C1 控件而开发.还可以配合其他控件使用,也正体现了C1控件为提高开发人员工作效率而设计的宗旨.简单的举一个例子, ...

  2. JMS学习(一)基本概念

    这两天面试了一两个公司,由于简历中的最近一个项目用到了JMS,然而面试官似乎对这个很感兴趣,所以都被问到了,但可惜的是,我除了说我们使用了JMS外,面对他们提出的一些关于JMS的问题,我回答得相当差, ...

  3. SharpGL学习笔记(十二) 光源例子:解决光源场景中的常见问题

    笔者学到光源这一节,遇到的问题就比较多了,收集了一些如下所述: (1) 导入的3ds模型,如果没有材质光照效果很奇怪.如下图 (2) 导入的3ds模型,有材质,灯光效果发暗,材质偏色,效果也很奇怪. ...

  4. [性能] Bean拷贝工具类性能比较

    Bean拷贝工具类性能比较 引言 几年前做过一个项目,接入新的api接口.为了和api实现解耦,决定将api返回的实体类在本地也建一个.这样做有两个好处 可以在api变更字段的时候保持应用稳定性 可以 ...

  5. 简单理解JavaScript闭包

    很多关于JS的书籍例如<JavaScript权威指南>或者<高程>都把闭包解释的晦涩难懂,萌新们是怎么也看不懂啊!不过别怕,今天我就用很简单的方式给大家讲解下到底什么是闭包.这 ...

  6. Engine中如何实现先居中显示要素再闪烁

    [解决办法]:需要在要素居中显示之后.闪烁之前执行IScreenDisplay.UpdateWindow强制全刷,如: //居中显示要素 IActiveView actView = axMapCont ...

  7. android在Data目录内置可删除的APP

    一.准备工作:make_ext4fs.mkuserimg.sh.simg2img,把它们跟要修改的 .img.ext4(或.img)文件放置到同一个目录下 二.转换源文件为img格式( .img则略过 ...

  8. 蓝牙防丢器原理、实现与Android BLE接口编程

    本文是对已实现的蓝牙防丢器项目的总结,阐述蓝牙防丢器的原理.实现与android客户端的蓝牙BLE接口编程.在这里重点关注如何利用BLE接口来进行工程实现,对于BLE的协议.涉及到JNI的BLE接口内 ...

  9. .NET下单文件的上传处理

    ASP.NET的单文件上传使用控件 <asp:FileUpload ID="upmess" runat="server" Width="248p ...

  10. iOS 学习 - 7.限制 TextField 输入字符长度

    #pragma mark -- TextField代理 -(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange: ...