bootstrap排版实战
bootstrap+angular实战
CASE-01:页面总体排版
说明:页面排版整体分为三个部分(见产品图):上导航条(红色区域)、左导航条(紫色区域)、内容区域(蓝色区域)。左导航条的区域是由整个页面的蓝色部分使用margin-left右移留出来的。上导航条采用position绝对定位固定。内容区域则是采用ui-view引入具体的模块页面。
1:页面总览

2:实现方案
页面总体布局代码(main.html)
Toggle navigation
说明:
1:最外层包裹层:div#wrapper
2:导航条:nav标签导航条部分列出该系统的主要功能模块,从导航条部分能很方便进入对应的页面。该系统的导航条使用angular框架的ng-include指令引进了上、左两部分的导航条。
3:内容区域section标签
说明:采用ui-view将所需要的模块引入。也是本项目的主要内容所在区域。
CASE-02:导航条
1:默认样式的导航条
导航条是在您的应用或网站中作为导航页头的响应式基础组件。它们在移动设备上可以折叠(并且可开可关),且在视口(viewport)宽度增加时逐渐变为水平展开模式。
注意事项
(1)两端对齐的导航条导航链接已经被弃用了。
(2)导航条内所包含元素溢出
由于 Bootstrap 并不知道你在导航条内放置的元素需要占据多宽的空间,你可能会遇到导航条中的内容折行的情况(也就是导航条占据两行)。解决办法如下:
- 减少导航条内所有元素所占据的宽度。
- 在某些尺寸的屏幕上(利用 响应式工具类)隐藏导航条内的一些元素。
- 修改导航条在水平排列和折叠排列互相转化时,触发这个转化的最小屏幕宽度值。可以通过修改 @grid-float-breakpoint变量实现,或者自己重写相关的媒体查询代码,覆盖 Bootstrap 的默认值。
(3)依赖 JavaScript 插件
如果 JavaScript 被禁用,并且视口(viewport)足够窄,致使导航条折叠起来,导航条将不能被打开,.navbar-collapse 内所包含的内容也将不可见。响应式导航条依赖 collapse 插件,定制 Bootstrap 的话时候必将其包含。
(4)修改视口的阈值,从而影响导航条的排列模式
当浏览器视口(viewport)的宽度小于 @grid-float-breakpoint 值时,导航条内部的元素变为折叠排列,也就是变现为移动设备展现模式;当浏览器视口(viewport)的宽度大于 @grid-float-breakpoint 值时,导航条内部的元素变为水平排列,也就是变现为非移动设备展现模式。通过调整源码中的这个值,就可以控制导航条何时堆叠排列,何时水平排列。默认值是 768px (小屏幕 -- 或者说是平板 --的最小值,或者说是平板)。
(5)导航条的可访问性
务必使用
2:实例
1:导航条内部折叠
首先:本项目的有上左两个部分的导航条 当屏幕分辨率大于768px时 上导航条隐藏左导航条显示,当小于768px时,左导航条隐藏,上导航条显示,才形成的现在的响应式布局。
Toggle navigation
nav>
分析:
导航条的内部折叠会出现在屏幕小于768px时出现。
navbar :boorstrap的导航条
navbar-default :默认的样式
navbar-static-top :可使导航条随着页面滚动而消失.navbar-static-top 去掉了由 .navbar-default 设置的左、右和顶部的边框,让它看起来更适合放在页面的头部。
另外:navbar-fixed-top指导航条固定在顶端。
Navbar-left/right 代表样式float:left/right!important;
data-target=".navbar-collapse":代表的是打开.navbar-collapse 元素, 一般设为id。
Button标签 :当屏幕小于768px时,导航条折叠。如下图:点击可使导航条折叠或者展开。

导航条被折叠
2:品牌图标
将导航条内放置品牌标志的地方替换为 元素即可展示自己的品牌图标。由于 .navbar-brand 已经被设置了内补(padding)和高度(height),你需要根据自己的情况添加一些 CSS 代码从而覆盖默认设置。
实例代码
上传文件格式
通过 data 属性:向链接或按钮添加 data-toggle="dropdown" 来切换下拉菜单
class="form-control" :表单控件
CASE-05:表单
说明:
单独的表单控件会被自动赋予一些全局样式。所有设置了 .form-control 类的 、
另外注意:不要将表单组直接与输入框组混合使用,建议将输入框组嵌套到表单组中使用。
1:表单的水平布局:
用栅格系统中的列(column)包裹输入框或其任何父元素,都可很容易的为其设置宽度。
水平表单与其他表单不仅标记的数量上不同,而且表单的呈现形式也不同。如需创建一个水平布局的表单,请按下面的几个步骤进行:
(1):向父
代码分析:
form-horizontal : 代表这是个水平表单
: 在输入框内部加上图标。
class="form-control" :为表单添加控件
表单布局实例中展示了其所支持的标准表单控件。包括大部分表单控件、文本输入域控件,还支持所有 HTML5 类型的输入控件: text、password、datetime、datetime-local、date、month、time、week、number、email、url、search、tel 和 color。
CASE-06:表格
1:默认表格
为任意
| 序列 | 车牌号 | 添加时间 | 车长 | 车型 | 装载吨位 | 品牌 | 购车时间 | 操作 | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| {{car.carNo}} | {{car.createTime|date:"yyyy/MM/dd"}} | {{car.carLength}} | {{carModelEnum[car.carModel]}} | {{car.carLoad}} | {{car.carBrand}} | {{car.buyCarTime|date:"yyyy/MM/dd"}} | 详情 修改 删除 | |||||
| 没有符合条件的记录 | ||||||||||||
表格class名分析:
1:通过 .table-striped 类可以给
之内的每一行增加斑马条纹样式。2:通过添加 .table-hover 类可以让
中的每一行对鼠标悬停状态作出响应。3:通过添加 .table-condensed 类可以让表格更加紧凑,单元格中的内补(padding)均会减半。
4:通过以下状态类可以为行或单元格设置颜色。
(1):.active:鼠标悬停在行或单元格上时所设置的颜色
(2):.success:标识成功或积极的动作
(3):.warnning:标识警告或需要用户注意
(4):.danger:标识危险或潜在的带来负面影响的动作
2:响应式表格
说明:
(1)将任何 .table 元素包裹在 .table-responsive 元素内,即可创建响应式表格,其会在小屏幕设备上(小于768px)水平滚动。当屏幕大于 768px 宽度时,水平滚动条消失。
(2)垂直方向的内容截断
(3)响应式表格使用了 overflow-y: hidden 属性,这样就能将超出表格底部和顶部的内容截断。特别是,也可以截断下拉菜单和其他第三方组件。
(4)Firefox 和 fieldset 元素
Firefox 浏览器对 fieldset 元素设置了一些影响 width 属性的样式,导致响应式表格出现问题。可以使用下面提供的针对 Firefox 的 hack 代码解决,但是以下代码并未集成在 Bootstrap 中:
@-moz-document url-prefix() { fieldset { display: table-cell; } }
(5)代码形式为:
CASE-07:弹窗
1:弹窗形式的页面
实例:图中是运单详情页面,点击详情后以弹窗形式出现。实际是ng-clude引入的页面。

代码:
(1):waybillIndex.html:
(2):waybillIndexCtr.js
$scope.toDetail=function(billId){
waybillIndexService.billDetail.get({
"wayBillId":billId
},function(data){
$location.url('main/waybillIndex');
if(data.code===0){
$scope.bill=data.content;
$scope.bill.transportCash.photoAirWay=($scope.bill.transportCash.photoAirWay=== "")?"images/noimg.png":$scope.bill.transportCash.photoAirWay;
$("#detailDiv").modal('show');
}
},function(){});
}
分析:
当订单详情接口成功返回数据时,接口返回订单信息,由$("#detailDiv").modal('show')将订单详情信息页面显示出来。
2:对话窗
用于对重要操作步骤的确认,比如是否确认发车等
实例:
代码:
$rootScope.confirmShow=function(okFun,param1,param2,param3){
window.wxc.xcConfirm("是否确定?", window.wxc.xcConfirm.typeEnum.confirm, {
onOk: function(){
if(typeof okFun === "function"){
okFun(param1,param2,param3);
}
}
});
};
分析:
一个全局的弹窗,可直接ng-click=’confirmShow(参数)’调出,比如运单管理的确认发车。
调用方式:(比如运单管理页面的发车确认按钮)
发车确认
CASE-08:全屏展示图片
说明:使用viewer.js插件
用法:
在需要显示的页面的最外层包裹层加上id名称(比如:运单详情页面id="detailDiv" ),并用下面代码调用,
var viewer = new Viewer(document.getElementById("detailDiv"), {url: 'src'});
实际效果图:
转载于:https://www.cnblogs.com/mamimi/p/6945626.html
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

