JAVAWEB第七天——BootStrap前端框架快速入门

一、 Viewport的概念

通俗的讲,移动设备上的viewport就是设备的屏幕上能用来显示我们的网页的那一块区域,在具体一点,就是浏览器上(也可能是一个app中的webview)用来显示网页的那部分区域,但viewport又不局限于浏览器可视区域的大小,它可能比浏览器的可视区域要大,也可能比浏览器的可视区域要小。在默认情况下,一般 来讲,移动设备上的viewport都是要大于浏览器可视区域的,这是因为考虑到移动设备的分辨率相对于桌面电脑来说都比较小,所以为了能在移动设备上正 常显示那些传统的为桌面浏览器设计的网站,移动设备上的浏览器都会把自己默认的viewport设为980px或1024px(也可能是其它值,这个是由 设备自己决定的),但带来的后果就是浏览器会出现横向滚动条,因为浏览器可视区域的宽度是比这个默认的viewport的宽度要小的。下图列出了一些设备上浏览器的默认viewport的宽度。

二、 利用meta标签对viewport进行控制

我们在开发移动设备的网站时,最常见的的一个动作就是把下面这个东西复制到我们的head标签中:

<meta name="viewport" content="width=device-width, initial-scale=1.0,
 maximum-scale=1.0, user-scalable=0">

meta标签的作用是让当前viewport的宽度等于设备的宽度,同时不允许用户手动缩放。也不允许用户缩放不同的网站有不同的要求,但让 viewport的宽度等于设备的宽度,这个应该是大家都想要的效果,如果你不这样的设定的话,那就会使用那个比屏幕宽的默认viewport,也就是说会出现横向滚动条。
meta viewport 标签首先是由苹果公司在其safari浏览器中引入的,目的就是解决移动设备的viewport问题。后来安卓以及各大浏览器厂商也都纷纷效仿,引入对meta viewport的支持,事实也证明这个东西还是非常有用的。
在苹果的规范中,meta viewport 有6个属性(暂且把content中的那些东西称为一个个属性和值),如下:

width 设置layout viewport 的宽度,为一个正整数,或字符串"width-device"
initial-scale 设置页面的初始缩放值,为一个数字,可以带小数
minimum-scale 允许用户的最小缩放值,为一个数字,可以带小数
maximum-scale 允许用户的最大缩放值,为一个数字,可以带小数
height 设置layout viewport 的高度,这个属性对我们并不重要,很少使用
user-scalable 是否允许用户进行缩放,值为"no"或"yes", no 代表不允许,yes代表允许

三、 总结

第一,必须设置 meta viewport 标签
如果不设置meta viewport标签,那么移动设备上浏览器默认的宽度值为800px,980px,1024px等这些,总之是大于屏幕宽度的。这里的宽度所用的单位px都是指css中的px,它跟代表实际屏幕物理像素的px不是一回事。
第二、设置浏览器视口宽度为设备理想宽度
每个移动设备浏览器中都有一个理想的宽度,这个理想的宽度是指css中的宽度,跟设备的物理宽度没有关系,在css中,这个宽度就相当于100%的 所代表的那个宽度。我们可以用meta标签把viewport的宽度设为那个理想的宽度,如果不知道这个设备的理想宽度是多少,那么用device- width这个特殊值就行了

<meta name="viewport" content="width=device-width, initial-scale=1">

以上未需要了解的理论知识

四、使用BootStrap

一、入门
首先在个人理解的情况下,想要做好看的页面。并不需要自己纯手工去敲一些HTML,CSS的代码。因为每个人审美差异不同,想要将页面色差调整到人人舒适,是不大现实的。这就引入一些框架。类似于做PPT,我们经常做的PPT,一些商务人士。他们都了解掌握PPT一些理论知识。但是他们经常做的PPT都是在网上去寻找一些好看的PPT模板。然后插入自己想要的一些东西。这样大大提高了工作效率。前端框架也可以类似理解。想要使用BootStrap就必须去官网了解一下,BootStrap有哪些好看的框架。链接奉上:https://v3.bootcss.com/
二、导包
BootStrap首页就有包的下载
JAVAWEB第七天——BootStrap前端框架快速入门_第1张图片点开之后可以根据自己的需求进行下载,如下载CSS文件,或者JavaScript文件。
以下提供一些常用的包:
链接:https://pan.baidu.com/s/148ozU-rjy_7RH1fTLwQKAQ
提取码:9ty7
下载解压之后,点开第一个dist文件夹,将里面的css文件,fonts文件夹,以及js文件导入到项目中,如下所示:
JAVAWEB第七天——BootStrap前端框架快速入门_第2张图片
以下开始对一些BootStrap中常用的属性进行介绍。介绍内容也是根据上面提供的bootStrap中文网站进行解析。

五、 BootStrap两个容器介绍

Bootstrap 需要为页面内容和栅格系统包裹一个 .container 容器。我们提供了两个作此用处的类。注意,由于 padding 等属性的原因,这两种 容器类不能互相嵌套。主要分两种一中类似与全部包裹,一种是固定宽度。
.container 类用于固定宽度并支持响应式布局的容器。

<div class="container">
		...
	div>

.container-fluid 类用于 100% 宽度,占据全部视口(viewport)的容器。

<div class="container-fluid">
  		...
	div>

TIPS:一般地BootStrap的界面都是设置好的,如果想要其默认CSS为
.container {
padding-right: 15px;
padding-left: 15px;
margin-right: auto;
margin-left: auto;
}
该段内容是在bootstrap的css的包中找出来的,他一般默认一种写好了。我只要使用 div class =“container”或者div class =“container-fluid”
若想要修改CSS的内容需要就近选择CSS:
.container{
border: 1px solid red;
padding-left: 0px;
padding-right:0px ;
}

以下奉上一些我做过的案例,对容器的理解。
如果想要做成包裹式(container-fluid)类似于这种:
JAVAWEB第七天——BootStrap前端框架快速入门_第3张图片
如果想要做成固定式(container)
JAVAWEB第七天——BootStrap前端框架快速入门_第4张图片与页面有一些边距,具体可以自己尝试看看
六、 BootStrap排版问题

  1. 标题

HTML 中的所有标题标签,

均可使用。另外,还提供了 h1 到 h6 类,为的是给内联(inline)属性的文本赋予标题的样式。

		<h1>h1. Bootstrap headingh1>
		<h2>h2. Bootstrap headingh2>
		<h3>h3. Bootstrap headingh3>
		<h4>h4. Bootstrap headingh4>
		<h5>h5. Bootstrap headingh5>
		<h6>h6. Bootstrap headingh6>
  1. 页面主体
    Bootstrap 将全局 font-size 设置为 14px,line-height 设置为 1.428。这些属性直接赋予 元素和所有段落元素。另外,

    (段落)元素还被设置了等于 1/2 行高(即 10px)的底部外边距margin。

		<p>...p>
  1. 中心内容
    通过添加 .lead 类可以让段落突出显示。
		<p class="lead">...p>
  1. 内联文本元素
    4.1高亮显示
You can use the mark tag to <mark>highlightmark> text.

TIPS:此处的highlight会被标记为淡黄色

4.2被删除文本

<del>What are talking about?del>

TIPS:此处这段话显示会被划掉一条横线

4.3无用文本

<s>s>

TIPs:此处类似于注释

4.4插入文本
额外插入的文本使用标签

<ins>...ins>

TIPS:此处的ins相当于有一段下划线的文本

4.5带下划线的文本
为文本添加下划线,使用 标签。

<u>...u>

4.6小号文本
对于不需要强调的inline或block类型的文本,使用 标签包裹,其内的文本将被设置为父容器字体大小的 85%。标题元素中嵌套的 元素被设置不同的 font-size 。
你还可以为行内元素赋予 .small 类以代替任何 元素

<small>This line of text is meant to be treated 
as fine print.small>

4.7斜体

<em>rendered as italicized textem>
  1. 对齐
<p class="text-left">Left aligned text.p>
<p class="text-center">Center aligned text.p>
<p class="text-right">Right aligned text.p>
<p class="text-justify">Justified text.p>
<p class="text-nowrap">No wrap text.p>

JAVAWEB第七天——BootStrap前端框架快速入门_第5张图片

  1. 表格

表格样式
① 条纹状表格
通过 .table-striped 类可以给 之内的每一行增加斑马条纹样式。,带边框表格,跨浏览器兼容性,条纹状表格是依赖 :nth-child CSS 选择器实现的,而这一功能不被 Internet Explorer 8 支持。
② 带边框表格
添加 .table-bordered 类为表格和其中的每个单元格增加边框。
③ 鼠标悬停
通过添加 .table-hover 类可以让 中的每一行对鼠标悬停状态作出响应。
④ 紧缩表格
通过添加 .table-condensed 类可以让表格更加紧凑,单元格中的内补(padding)均会减半。
⑤ 状态类
通过这些状态类可以为行或单元格设置颜色。
JAVAWEB第七天——BootStrap前端框架快速入门_第6张图片

⑥ 响应式表格
将任何 .table 元素包裹在 .table-responsive 元素内,即可创建响应式表格,其会在小屏幕设备上(小于768px)水平滚动。当屏幕大于 768px 宽度时,水平滚动条消失。

六、 表单

基本模板

<form>
  	<div class="form-group">
    <label for="exampleInputEmail1">Email addresslabel>
<input type="email" class="form-control" id="exampleInputEmail1" placeholder="Email">
 	 div>
  	<div class="form-group">
    <label for="exampleInputPassword1">Passwordlabel>
    <input type="password" class="form-control" id="exampleInputPassword1" placeholder="Password">
  	div>
  	<div class="form-group">
    <label for="exampleInputFile">File inputlabel>
    <input type="file" id="exampleInputFile">
    <p class="help-block">Example block-level help text here.p>
  	div>
  	<div class="checkbox">
    <label>
      <input type="checkbox"> Check me out
    label>
  	div>
  	<button type="submit" class="btn btn-default">Submitbutton>
form>

样式如下:
JAVAWEB第七天——BootStrap前端框架快速入门_第7张图片

TIPS:此处的表单复选框拥有高亮显示 其中还有内联表单,内联表单一定要添加label 如:

<div class="form-group">
     <label for="exampleInputName2">Name</label>
     <input type="text" class="form-control" 
    id="exampleInputName2" placeholder="Jane Doe">  
 </div>

水平排序表单
通过为表单添加 .form-horizontal 类,并联合使用 Bootstrap 预置的栅格类,可以将 label 标签和控件组水平并排布局。这样做将改变 .form-group 的行为,使其表现为栅格系统中的行(row),因此就无需再额外添加 .row 来

七、 按钮

尺寸分为需要让按钮具有不同尺寸吗?使用 .btn-lg、.btn-sm 或 .btn-xs 就可以获得不同尺寸的按钮,分别为PC端,平板和手机。
button 元素
由于 :active 是伪状态,因此无需额外添加,但是在需要让其表现出同样外观的时候可以添加 .active 类。

你可能感兴趣的:(JAVAWEB,bootstrap,html,css)