积跬步,聚小流------Bootstrap学习记录(2)
现阶段开启每一次新的征程,已然离不开“Hello World”的习惯仪式。这次自然也不例外。先来看下给出的官网给出的演示样例:
1、bootstrap官网提供的html基本模板代码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- 上述3个meta标签*必须*放在最前面。不论什么其它内容都*必须*尾随其后! -->
<title>Bootstrap 101 Template</title> <!-- Bootstrap -->
<link href="css/bootstrap.min.css" rel="stylesheet"> <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="//cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="//cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body>
<h1>Hello World!</h1> <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
<script src="//cdn.bootcss.com/jquery/1.11.3/jquery.min.js"></script>
<!-- Include all compiled plugins (below), or include individual files as needed -->
<script src="js/bootstrap.min.js"></script>
</body>
</html>
2、html基本模板代码解读
* html5的必备元素
先来看这段代码,当然是不可缺少的html5的必备元素:
<!DOCTYPE html>、<html>、<head>、<title>、<body>
* 对应的meta标签设定
除此之外。我们看到了3个<meta>标签/1个样式链接/4个脚本链接
首先。<meta>标签通常分为两类:HTTP-EQUIV变量和NAME变量。通常我的理解是HTTP-EQUIV变量多数是用来对网页的设定,比方缓存,定点刷新等等。而NAME变量多数是用来做页面渲染时的说明和介绍,像是keyword、简单介绍等等。
先来看<meta charset="utf-8">,我想这个是最简单的。设定以什么语言来解读,通常大家都会用到,而它写全了应该是<meta
http-equiv="Content-Type" content="text/html; charset=utf-8">,这个就不再多说了
再来看<meta http-equiv="X-UA-Compatible" content="IE=edge">,这个是IE8的专用标记,用来指定ie8来模拟某个特定版本号的渲染方式,这里IE=edge代表了假设系统安装了ie8以上版本号,则用最高版本号的IE内核进行渲染。假设没有则无意义。这是由于IE8在刚推出的时候由于重构的问题,无法适应较高级的浏览器,所以用X-UA-Compatible标签来强制用较低版本号的ie来渲染,当然能够用指定版本号。比如经常使用的<meta
http-equiv="X-UA-Compatible" content="IE=EmulateIE7">.
另外<meta http-equiv="X-UA-Compatible" content="IE=edge,chorme=1">.则是谷歌做的Google
Chrome Frame(谷歌内嵌浏览器框架GCF),这个框架是让用户ie浏览器外表不变,但用户在浏览网页时使用Google Chrome浏览器内核。它是支持IE6/7/8等多个版本号IE浏览器的。万恶的IE还得谷歌帮你解决兼容么,而以上标记则就是在安装了GCF之后,用来指定页面使用chrome内核来渲染。
至于<meta name="viewport" content="width=device-width,initial-scale=1">则是用来设定移动端的,通常移动端的分辨率要小于pc端,并且移动端的分辨率并不固定。(见下图)
(此图盗于点击打开链接,也可在此文中查看更具体信息)
我们姑且就记得是用来解决移动端分辨率问题的就可以。另外还有maximum-scale、minimum-scale和user-scalable等属性。这一问题通常出如今app中(app端一般是固定样式的,假设像页面一样能够缩放则显的不那么正式)。解释例如以下图
对应的链接样式在这里没有什么可说的,会在后期的学习中不断分解它,学习它。
* 代码中脚本解读
而链接的脚本有4个,当中两个是在<!--[if]><![endif]-->之间,那这又是什么意思呢?事实上这样的条件凝视仅仅有在IE之下才干被解读,其他浏览器是将它当做html凝视不进行解读,释用来给IE加入特别的指令,从IE5才開始被支持。
而这里的[if lt IE 9]我们能够理解为“ie浏览器版本号假设小于(less
than)IE9”,满足这样的条件才被解读。
那在这样的满足这样的条件的情况下运行的这两个脚本又是用来做什么的呢?
首先html5shiv.js是用来让IE浏览器来支持html5元素的。然后respond.js则是用来让IE浏览器和其他不支持css3的浏览器提供媒体查询的min-width和max-width,从而来实现网页的响应式设计。
可是这里须要注意的是,这两个脚本必须载入在head中,在结构载入前解释。否则就没有意义了。
至于剩下的两个脚本,我们须要注意的则是jquery的js必须载入在bootstrap的js载入之前,当然这个是我们已经习以为常的问题了,另外js载入在body之后,能够让页面载入的更为迅速,渲染更快。
(我们能够用ie打开对应的链接,然后直接保存该js。
这里提供下链接:html5shiv.js的https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js;
respond.js的https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js。)
3、基本版bootstrap模板
这样我们就把基本模板的全部代码都弄明确了,删掉一些不必要的凝视,我们就能够得到一个最精简的hello world了。
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Bootstrap 101 Template</title>
<link href="css/bootstrap.min.css" rel="stylesheet">
<!--[if lt IE 9]>
<script src="//cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="//cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body>
<h1>Hello World。</h1>
<script src="//cdn.bootcss.com/jquery/1.11.3/jquery.min.js"></script>
<script src="js/bootstrap.min.js"></script>
</body>
</html>
积跬步,聚小流------Bootstrap学习记录(2)的更多相关文章
- 积跬步,聚小流------Bootstrap学习记录(3)
响应式作为Bootstrap的一大特色.栅格系统可谓是功不可没,既然如此,那我们就来看一下栅格系统是怎样帮助bootstrap实现响应式布局的呢? 1.什么是栅格系统 我们能够从Bootstrap的官 ...
- 积跬步,聚小流------Bootstrap学习记录(1)
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/ ...
- 积跬步,聚小流-------js实现placeholder的效果
前几天在"技术问答"上问了问题,然后有回复一句话就给概括了:placeholder的效果,不得不说.了解的多了才干说起来言简意赅,用最简单的语言描写叙述最清晰的表达. 可是plac ...
- 积跬步,聚小流------关于UML类图
UML的存在 类图是使用频率比較高的UML图,它用于描写叙述系统中所含的类以及它们之间的相互关系,帮助人们简化对系统的理解,也是系统分析和设计阶段的重要产物,也是系统编码和測试的重要类型根据. UML ...
- 积跬步,聚小流------ps有用小技巧,改变png图标颜色
* 实现效果: 原图: 改动后: * 实现目的: 满足为实现不同界面色彩搭配改动png图标的颜色 * 实现方法: 1.打开Photoshop工具,导入须要进行改动的png图标: 2.对导入的图 ...
- 积跬步,聚小流------界面经常使用的jeecms标签
* JEECMS初印象 第一次接触JEECMS,突然脑海就浮现了一句话"20元建站,立等可取",原来这都是真的... * JEECMS的界面经常使用标签 临时忽略掉环境搭建.栏目配 ...
- 积跬步,聚小流------java信息生成图片
需求: 是在做证书的时候碰到的这个问题. 当时需求是能够进行在线打印证书,第一次进行的操作是直接打印html,并且已经排好版(用jqprint插件)进行打印.在打印时碰到了兼容的问题,另外因为背景图片 ...
- 积跬步,聚小流------java获取图片的尺寸
在一篇文章中获取到通过例如以下两种方式进行获取: 1.使用ImageReader进行获取: 2.使用BufferedImage进行获取: 而且经过验证ImageReader进行操作的耗时远远低于Buf ...
- qingshow “不积跬步无以至千里,不积小流无以成江海”。--荀子《劝学篇》 用tomcat+花生壳搭建自己的web服务器+域名(参考)
链接地址:http://www.blogjava.net/qingshow/archive/2010/01/17/309846.html 用tomcat搭建web服务器 目标:免费拥有自己的网站及域名 ...
随机推荐
- 安装lnmp前请先运行screen
当通过putty或者SecureCRT安装lnmp时, 网络突然掉线或者不小心putty被关掉等等原因, 造成lnmp安装过程被中断怎么办? 其实防止这种现象很简单, 只要在安装lnmp前执行scre ...
- 洛谷2114 bzoj3668[NOI2014]起床困难综合症
题目描述 21世纪,许多人得了一种奇怪的病:起床困难综合症,其临床表现为:起床难,起床后精神不佳.作为一名青春阳光好少年,atm一直坚持与起床困难综合症作斗争.通过研究相关文献,他找到了该病的发病原因 ...
- tar 命令man说明
TAR(1) User Commands TAR(1) NAME tar - manual page for tar 1.26 SYNOPSIS tar [OPTION...] [FILE]... D ...
- docker系列之一 image和container
docker images往往不知不觉就占满了硬盘空间,为了清理冗余的image,可采用以下方法: 1.进入root权限 sudo su 2.停止所有的container,这样才能够删除其中的imag ...
- ProGuard常见问题及解决套路
ProGuard是一个压缩.优化和混淆Java字节码的工具,非常好用.本篇文章总结一下许多人在使用ProGuard时经常遇到的问题. 我把在使用ProGuard时经常遇到的问题分为两类,分别是导致构建 ...
- CentOS上手动配置nginx.services
[Unit] Description=Dynamic web platform based on NGINX and LuaJIT After=network.target remote-fs.tar ...
- C++虚函数与纯虚函数用法与区别
1. 虚函数和纯虚函数可以定义在同一个类(class)中,含有纯虚函数的类被称为抽象类(abstract class),而只含有虚函数的类(class)不能被称为抽象类(abstract class) ...
- 常用的pdf工具
https://www.ilovepdf.com/zh-cn https://smallpdf.com/cn/compress-pdf https://www.pdf2go.com/zh/compre ...
- Java 二进制,八进制,十进制,十六进制转换
A.十进制转换其他 十进制转成二进制 Integer.toBinaryString(int i) 十进制转成八进制 Integer.toOctalString(int i) 十进制转成十六进制: ...
- Android端通过HttpURLConnection上传文件到server
Android端通过HttpURLConnection上传文件到server 一:实现原理 近期在做Androidclient的应用开发,涉及到要把图片上传到后台server中.自己选择了做Sprin ...