Bootstrap自动适应PC、平板、手机的Bootstrap栅格系统


Posted in Javascript onMay 27, 2016

栅格系统英文为“grid systems”,也有人翻译为“网格系统”,运用固定的格子设计版面布局,其风格工整简洁,在二战后大受欢迎,已成为今日出版物设计的主流风格之一。

1692年,新登基的法国国王路易十四感到法国的印刷水平差强人意,因此命令成立一个管理印刷的皇家特别委员会。他们的首要任务是设计出科学的、合理的, 重视功能性的新字体。委员会由数学家尼古拉斯加宗(Nicolas Jaugeon)担任领导,他们以罗马体为基础,采用方格为设计依据,每个字体方格分为64个基本方格单位,每个方格单位再分成36个小格,这样,一个印刷版面就有2304个小格组成,在这个严谨的几何网格网络中设计字体的形状,版面的编排,试验传达功能的效能,这是世界上最早对字体和版面进行科学实验的活动,也是栅格系统最早的雏形。

我给网页栅格系统下的定义为:以规则的网格阵列来指导和规范网页中的版面布局以及信息分布。网页栅格系统是从平面栅格系统中发展而来。对于网页设计来说,栅格系统的使用,不仅可以让网页的信息呈现更加美观易读,更具可用性。而且,对于前端开发来说,网页将更加的灵活与规范。

Bootstrap 提供了一套响应式、移动设备优先的流式栅格系统,随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多12列。它包含了易于使用的预定义类,还有强大的mixin 用于生成更具语义的布局。

也就是说Bootstrap把一个元素的宽度划分成12份。我们则在这个被划分成12份的行安排元素。

一、基本目标

制作如下的两行,这两行因为设备的不同里面各个单元格的宽度会改变:

Bootstrap自动适应PC、平板、手机的Bootstrap栅格系统

在手机小屏幕上,上行A占2份B占10份,AB分享了这12份,下行A占1份B占1份C占10份,ABC分享了这12份。

在平板的中等屏幕上,上行A占8份B占4份,AB分享了这12份,下行A占10份B占1份C占1份,ABC分享了这12份。

在PC的大屏幕上,上行A占4份B占8份,AB分享了这12份,下行A占1份B占10份C占1份,ABC分享了这12份。

二、制作过程

先在网页文件夹中配置好Bootstrap,在官网(点击打开链接)下载组件即可,用于生产环境的Bootstrap版本(点击打开链接),Bootstrap3对2并不兼容,建议直接根据其开发文档使用Bootstrap3。将Bootstrap解压之后把得到的3个文件夹css,fonts,js拷贝到站点目录下面。如果是Eclipse的JSP Web Project的话就把它们放到WebRoot文件夹下面。

之后代码如下,详情请看注释:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!--网页编码,要使用的外部文件,自动适应屏幕-->
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="css/bootstrap.css" rel="stylesheet" media="screen">
<meta name="viewport"
content="width=device-width,initial-scale=1.0,user-scalable=no">
<title>栅格系统</title>
</head>
<body>
<!--使用Bootstrap如果不使用面板的话,要把元素放进一个占满100%屏幕的容器里-->
<!--class="container"则自动居中-->
<div class="container-fluid">
<!--定义一行-->
<div class="row">
<!--xs代表手机小屏幕,md代表平板中屏幕,lg代表PC大屏幕-->
<!--同一对的元素之和必须等于12,否则出现错误,如A的col-xs-2+B的col-xs-10是等于12的-->
<!--bg-warning是定义浅黄色的背景色-->
<div class="col-xs-2 col-md-8 col-lg-4 bg-warning">
A
</div>
<div class="col-xs-10 col-md-4 col-lg-8 bg-primary">
B
</div>
</div>
<div class="row">
<!--这里的道理与上面的一样,A的col-xs-1+B的col-xs-1+C的col-xs-10是等于12的-->
<div class="col-xs-1 col-md-10 col-lg-1 bg-warning">
A
</div>
<div class="col-xs-1 col-md-1 col-lg-10 bg-primary">
B
</div>
<div class="col-xs-10 col-md-1 col-lg-1 bg-success">
C
</div>
</div>
</div>
</body>
</html>
Javascript 相关文章推荐
Web版彷 Visual Studio 2003 颜色选择器
Jan 09 Javascript
JavaScript CSS菜单功能 改进版
Dec 20 Javascript
jquery 获取标签名(tagName)示例代码
Jul 11 Javascript
jquery提取元素里的纯文本不包含span等里的内容
Sep 30 Javascript
jquery插件jTimer(jquery定时器)使用方法
Dec 23 Javascript
javascript动态创建表格及添加数据实例详解
May 13 Javascript
JavaScript实现删除,移动和复制文件的方法
Aug 05 Javascript
AngularJs Forms详解及简单示例
Sep 01 Javascript
BootStrap Table后台分页时前台删除最后一页所有数据refresh刷新后无数据问题
Dec 28 Javascript
jQuery实现标签子元素的添加和赋值方法
Feb 24 jQuery
详解vue-element Tree树形控件填坑路
Mar 26 Javascript
Vue实现图片与文字混输效果
Dec 04 Javascript
Bootstrap3.0学习教程之JS折叠插件
May 27 #Javascript
全面解析多种Bootstrap图片轮播效果
May 27 #Javascript
bootstrap-wysiwyg结合ajax实现图片上传实时刷新功能
May 27 #Javascript
极力推荐一款小巧玲珑的可视化编辑器bootstrap-wysiwyg
May 27 #Javascript
所见即所得的富文本编辑器bootstrap-wysiwyg使用方法详解
May 27 #Javascript
非常酷炫的Bootstrap图片轮播动画
May 27 #Javascript
Bootstrap安装环境配置教程分享
May 27 #Javascript
You might like
关于二级目录拖拽排序的实现(源码示例下载)
2013/04/26 PHP
Windows下编译PHP5.4和xdebug全记录
2015/04/03 PHP
PHP编写学校网站上新生注册登陆程序的实例分享
2016/03/21 PHP
Javascript 获取链接(url)参数的方法[正则与截取字符串]
2010/02/09 Javascript
javascript 用记忆函数快速计算递归函数
2010/03/15 Javascript
游览器中javascript的执行过程(图文)
2012/05/20 Javascript
Javascript自定义函数判断网站访问类型是PC还是移动终端
2014/01/10 Javascript
js图片闪动特效可以控制间隔时间如几分钟闪动一下
2014/08/12 Javascript
如何使用HTML5地理位置定位功能
2015/04/27 Javascript
jQuery prototype冲突的2种解决方法(附demo示例下载)
2016/01/21 Javascript
Boostrap入门准备之border box
2016/05/09 Javascript
解决Angular4项目部署到服务器上刷新404的问题
2018/08/31 Javascript
javascript实现5秒倒计时并跳转功能
2019/06/20 Javascript
vue实现自定义H5视频播放器的方法步骤
2019/07/01 Javascript
Jquery让form表单异步提交代码实现
2019/11/14 jQuery
详解ES6 CLASS在微信小程序中的应用实例
2020/04/24 Javascript
[41:20]2014 DOTA2华西杯精英邀请赛 5 24 NewBee VS DK
2014/05/26 DOTA
[42:52]Optic vs Serenity 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
Python实现全局变量的两个解决方法
2014/07/03 Python
Python解析最简单的验证码
2016/01/07 Python
Python Matplotlib库安装与基本作图示例
2019/01/09 Python
Numpy中对向量、矩阵的使用详解
2019/10/29 Python
python使用opencv resize图像不进行插值的操作
2020/07/05 Python
可以随进度显示不同颜色的css3进度条分享
2014/04/11 HTML / CSS
HTML5 History API 实现无刷新跳转
2016/01/11 HTML / CSS
Europcar澳大利亚官网:全球汽车租赁领域的领导者
2019/03/24 全球购物
CAT鞋加拿大官网:CAT Footwear加拿大
2020/08/05 全球购物
会计电算化应届生求职信
2013/11/03 职场文书
家长给小学生的评语
2014/01/30 职场文书
态度决定一切演讲稿
2014/05/20 职场文书
冬季安全检查方案
2014/05/23 职场文书
软弱涣散基层党组织整改方案
2014/10/25 职场文书
2014年除四害工作总结
2014/12/06 职场文书
中班下学期个人工作总结
2015/02/12 职场文书
全家福照片寄语怎么写?
2019/04/02 职场文书
2019年英语版感谢信(8篇)
2019/09/29 职场文书