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

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,内容安全 1000次 1年
对象存储 OSS,恶意文件检测 1000次 1年
简介: Bootstrap框架是一个前端UI设计的框架,它提供了统一的UI界面,简化了设计界面UI的过程(缺点是定制了界面,调整的余地不是太大)。尤其是现在的响应时布局(我的理解是页面根据不同的分辨率,采用不同的页面元素的布局),在Bootstrap中很好的支持了,只要简单设置了属性,就能自动实现响应时布局,大大简化了程序员的界面的过程。

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

 

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

1

 

 

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

 

2

 

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

 

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

 

<! 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/

image

 

 

 

完整的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 >

 

相关文章
|
2天前
|
开发框架 缓存 自然语言处理
HarmonyOS ArkTS声明式UI开发实战教程
本文深入探讨了ArkTS作为HarmonyOS生态中新一代声明式UI开发框架的优势与应用。首先对比了声明式与命令式开发的区别,展示了ArkTS如何通过直观高效的代码提升可维护性。接着分析了其核心三要素:数据驱动、组件化和状态管理,并通过具体案例解析布局体系、交互组件开发技巧及复杂状态管理方案。最后,通过构建完整TODO应用实战,结合调试优化指南,帮助开发者掌握声明式UI设计精髓,感受ArkTS的独特魅力。文章鼓励读者通过“破坏性实验”建立声明式编程思维,共同推动HarmonyOS生态发展。
20 3
|
14天前
|
Android开发 UED iOS开发
Harmony os next~UI开发与ArkUI框架
鸿蒙OS的UI开发基于ArkUI框架,采用声明式编程,简化开发流程。五大核心组件(Text、Button、List、Grid、Flex)助力高效布局,支持数据绑定与动态更新。事件响应机制灵敏,适合构建交互丰富的应用。实战技巧包括规范命名、样式复用和调试方法。掌握这些,轻松开发鸿蒙应用。下期预告:分布式开发,记得带上烤冷面!
25 0
|
22天前
|
前端开发 数据安全/隐私保护 开发者
FirstUI:Deepseek能帮我们做很多事情,而这款开源框架专为开发者设计的开源UI框架,让你的项目加速起飞
嗨,大家好,我是小华同学。今天为大家介绍一个轻量级、响应式的前端UI框架——FirstUI。它提供丰富的组件库,包括按钮、输入框、下拉菜单等,帮助开发者快速构建美观、功能丰富的用户界面。FirstUI的核心理念是“简单、快速、高效”,适合各种Web应用开发,如企业网站、电商平台和个人博客。其体积小、加载快,支持响应式设计,并且易于定制。FirstUI拥有活跃的社区支持,开发者可以轻松找到帮助并分享经验。欢迎关注我们,获取更多优质开源项目和高效工作学习方法。
|
24天前
|
存储 人工智能 编译器
【03】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-测试hello word效果-虚拟华为手机真机环境调试-为DevEco Studio编译器安装中文插件-测试写一个滑动块效果-介绍诸如ohos.ui等依赖库-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
【03】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-测试hello word效果-虚拟华为手机真机环境调试-为DevEco Studio编译器安装中文插件-测试写一个滑动块效果-介绍诸如ohos.ui等依赖库-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
51 10
【03】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-测试hello word效果-虚拟华为手机真机环境调试-为DevEco Studio编译器安装中文插件-测试写一个滑动块效果-介绍诸如ohos.ui等依赖库-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
|
3月前
|
数据采集 人工智能 自然语言处理
Midscene.js:AI 驱动的 UI 自动化测试框架,支持自然语言交互,生成可视化报告
Midscene.js 是一款基于 AI 技术的 UI 自动化测试框架,通过自然语言交互简化测试流程,支持动作执行、数据查询和页面断言,提供可视化报告,适用于多种应用场景。
886 1
Midscene.js:AI 驱动的 UI 自动化测试框架,支持自然语言交互,生成可视化报告
|
3月前
|
前端开发 安全 API
Qwen-coder实现本地 RAG 框架能力Bootstrap
本文介绍了如何利用Qwen-coder在本地实现RAG框架能力提升,解决了企业知识库管理中的数据安全和半结构化文档处理问题。通过Qwen2.5-72b模型和多轮对话推理,成功实现了对包含图表内容的文档的高效预处理,提升了知识库检索的准确性和安全性。
|
4月前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
233 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
4月前
|
Rust JavaScript 前端开发
ES6 awaitRust UI 框架
ES6 awaitRust UI 框架
46 0
|
7天前
|
关系型数据库 MySQL 数据库
基于Flink CDC 开发,支持Web-UI的实时KingBase 连接器,三大模式无缝切换,效率翻倍!
TIS 是一款基于Web-UI的开源大数据集成工具,通过与人大金仓Kingbase的深度整合,提供高效、灵活的实时数据集成方案。它支持增量数据监听和实时写入,兼容MySQL、PostgreSQL和Oracle模式,无需编写复杂脚本,操作简单直观,特别适合非专业开发人员使用。TIS率先实现了Kingbase CDC连接器的整合,成为业界首个开箱即用的Kingbase CDC数据同步解决方案,助力企业数字化转型。
48 5
基于Flink CDC 开发,支持Web-UI的实时KingBase 连接器,三大模式无缝切换,效率翻倍!
|
25天前
|
JavaScript 数据安全/隐私保护
Vue Amazing UI 组件库(Vue3+TypeScript+Vite 等最新技术栈开发)
Vue Amazing UI 是一个基于 Vue 3、TypeScript、Vite 等最新技术栈开发构建的现代化组件库,包含丰富的 UI 组件和常用工具函数,并且持续不断维护更新中。另外,组件库全量使用 TypeScript,支持自动按需引入和 Tree Shaking 等,能够显著提升开发效率,降低开发成本。
58 5
Vue Amazing UI 组件库(Vue3+TypeScript+Vite 等最新技术栈开发)

热门文章

最新文章