软件的架构:
C/S:客户端/服务器(Client/Server)
概述:
1. 一般我们使用的软件都是C/S架构,比如:QQ、360
2. C表示客户端,用户通过客户端来使用软件
3. S表示服务器,负责处理软件的业务了逻辑
特点:
1. 软件使用前必须得安装
2. 软件更新时服务器和客户端得同时更新
3. C/S架构的软件不能跨平台(操作系统)使用
4. C/S架构的软件客户端和服务器通信采用的是自有协议,相对来说比较安全
B/S:浏览器/服务器(Browser/Server)
概述:
1. B/S本质上也是C/S,只不过B/S架构的软件,使用浏览器作为软件的客户端,比如:京东、12306
2. B表示浏览器,通过使用浏览器访问网页的形式,来使用软件
3. S表示服务器,负责处理软件的业务了逻辑
特点:
1. 软件不需要安装,直接使用浏览器访问指定的网址即可
2. 软件更新时,客户端不需要更新,只更新服务器,服务器更新,软件的界面就变了
3. B/S架构的软件支持跨平台,只有操作系统有浏览器,就可以使用
4. B/S架构的软件客户端和服务器通信采用的是通用的HTTP协议,相对来说不安全
网页的组成:
概述:
1. 主要由三部分组成:结构(HTML)、表现(CSS)、行为(JavaScript)
2. HTML用于描述页面的结构
3. CSS用于控制页面中元素的样式
4. JavaScript用于响应用户操作
<!--
HTML5的文档声明,声明当前的网页是按照HTML5标准编写的
编写网页时一定要将h5的文档声明写在网页的最上边
如果不写文档声明,某些浏览器解析页面会导致页面无法正常显示
-->
<!DOCTYPE html>
<!--
html根标签,一个页面中有且只有一个跟标签,网页中的所有内容都应该写在html根标签中
-->
<html>
<!--
head标签,该标签中的内容不会在网页中直接显示,它用来帮助浏览器解析页面的
-->
<head>
<!--
告诉浏览器网页所采用的编码字符集,避免乱码
meta标签用来设置网页的一些元数据,比如网页的字符集、关键字、简介、请求的重定向
-->
<meta charset="utf-8" />
<meta name="keywords" content="HTML5,CSS3,JavaScript" />
<meta name="description" content="发布前端相关的信息" />
<meta http-equiv="refresh" content="5;url=https://www.baidu.com" />
<!--
title网页的标题标签,默认会显示在浏览器的标题栏中,
搜索引擎在检索页面时,会首先检索title标签中的内容
它是网页中对于搜索引擎来说最重要的内容,会影响到网页在搜索引擎中的排名
-->
<title>网页的标题</title>
</head>
<!--
body标签用来设置网页的主体内容,网页中所有可见的内容,都应该在body中编写
-->
<body>
<!--
属性:
可以通过属性来设置标签如何处理标签中的内容
可以在开始标签中添加属性
属性需要写在开始标签中,实际上就是一个名值对的结构
属性名="属性值"
-->
这是我的<font color="red">第二个</font>
<!--
标题标签
在HTML中,一共有六级标题标签h1-h6
在显示效果上,h1最大,h6最小,但是文字的大小我们并不关系,由CSS控制样式
使用HTML标签时,关心的是标签的语义,我们使用的标签都是语义化标签
6级标题中,h1最重要,表示一个网页中的主要内容,h2-h6重要性依次降低
对于搜索引擎来说,h1的重要性仅次于title,搜索引擎检索完title,会立即查看h1中的内容
h1标签非常重要,它会影响到页面在搜索引擎中的排名,页面只能写一个
一般页面中标题标签只使用h1 h2 h3,h3以后的基本不使用
-->
<h1>一级标题</h1>
<h2>一级标题</h2>
<h3>一级标题</h3>
<h4>一级标题</h4>
<h5>一级标题</h5>
<h6>一级标题</h6>
<!--
段落标签:用于表示内容中的一个自然段
使用p标签来表示一个段落
p标签中的文字,默认会独占一行,并且段与段之间有一定的间距
-->
<p>我是一个段落</p>
<!--
在HTML中,字符之间写再多空格,浏览器也会当成一个空格解析,
换行也会当成一个空格解析
在页面中可以使用br标签来表示一个换行
-->
<p>
锄禾日当午,<br />
汗滴禾下土。<br />
</p>
<!--
hr标签在页面生成一条水平线
-->
<hr />
<!--
在HTML中,一些如< >这种特殊字段是不能直接使用,
需要使用一些特殊符号来表示这些特殊字符,这些特殊字符我们称为实体(转义字符)
浏览器解析到实体时,会自动将实体转换为其对应的字符
实体的语法:&实体的名字;
< <
> >
空格
版权符号©
-->
a<b>c
<p>©今天天气 好晴朗,处处好风光</p>
<!--
图片标签:使用img标签来向网页中引入一个外部图片
属性:
src:设置一个外部图片的路径,,目前我们所要使用的路径全都是相对路径
相对路径:
指相对于当前资源所在目录的位置
使用../返回一级目录,返回几级目录就写几个../
alt:用来设置在图片不能显示时,对图片的描述
搜索引擎可以通过alt属性来识别不同的图片
如果不写alt属性,则搜索引擎不会对img中的图片进行收录
width:用来修改图片的宽度,一般使用px作为单位
height:用来修改拖的高度,一般使用px作为单位
当宽度和高度只设置一个属性,另一个同时会等比例调整大小
一般开发中除了自适应的页面,不建议设置width和height
图片的格式:
JPG:
支持的颜色比较大,图片可以压缩,但是不支持透明
一般用来保存照片等颜色丰富的图片
GIF:
支持的颜色少,只支持简单的透明,支持动态图
图片颜色单一或动态图可以使用
PNG:
支持的颜色多,并且支持复杂的透明
可以用来显示颜色复杂的透明的图片
图片的使用原则:
效果不一致,使用效果好的
效果一致,使用小的
-->
<img src="1.gif" alt="这是一个大松鼠" width-"100px"/>
<!--
使用内联框架可以引入一个外部的页面
使用iframe来创建一个内联框架
属性:
src:指向一个外部页面的路径,可以使用相对路径
width:宽度
height:高度
name:可以为内联框架指定一个名字
在现实开发中不推荐使用内联框架,因为内联框架中的内容不会被搜索引擎所检索
-->
<iframe src="demo02.html" name="tom"></iframe>
<!--
使用超链接可以让我们从一个页面跳转到另一个页面
使用a标签来创建一个超链接
属性:
href:
指向链接跳转的目标地址,可以写一个相对路径,也可以写一个完整的地址
#id属性值,跳转到id为id属性值控件的位置
发送电子邮件,格式为mailto:邮箱地址
target:用来指定打开链接的位置
_self:表示在当前窗口中打开链接(默认值)
_blank:表示开启新的窗口中打开链接
可以设置一个内联框架的name属性值,链接将会在指定的内联框架中打开
-->
<a href="http://www.baidu.com">我是一个外网超链接</a>
<a href="#bottom">跳转到下面</a>
<a href="mailto:abc@qq.com">打开电子邮件客户端</a>
<a href="demo03.html">我是一个内网超链接</a>
<a href="tom">打开一个内联框架</a>
<iframe src="demo02.html" name="tom"></iframe>
<!--
em和strong
- 这两个标签都表示一个强调的内容
em主要表示语气上的强调,em在浏览器中默认使用斜体显示
strong表示强调的内容,比em更强烈,默认使用粗体显示
-->
<p>
今天天气<em>真不错</em>!
<strong>注意:好好学习,天天向上!</strong>
</p>
<!--
i标签和b标签 无语义
i标签中的内容会以斜体显示
b标签中的内容会以加粗显示
-->
<p>
<i>我是i标签中的内容</i>
<b>我是b标签中的内容</b>
</p>
<!--
small:内容会比他的父元素中的文字要小一些
一般用来描述:网站的版权声明
-->
<p>
我是p标签的内容<small>我是small标签的内容</small>
</p>
<!--
cite:网页中所有的加书名号的内容都可以使用
-->
<p>
<cite>《论语》</cite>是一本书
</p>
<!--
q标签表示一个短的引用(行内引用)
q标签引用的内容,浏览器会默认加上引号
blockquote标签表示一个长引用(块级引用)
-->
<p>
子曰:<q>学而时习之!</q>
</p>
<div>
子曰:<blockquote>学而时习之!</blockquote>
</div>
<!--
sub和sup
sub设置下标
sup设置上标
-->
<p>
H<sub>2</sub>O
2<sup>3</sup>
</p>
<!--
ins和del
ins表示插入的内容,显示时会加下划线
del表示删除的内容,显示时会加删除线
-->
<p>
<ins>插入内容</ins>
<del>删除内容</del>
</p>
<!--
pre是一个预格式标签,会将代码中的格式保存,不会忽略多个空格
code专门用来表示代码的
-->
<p>
<pre>
window.onload(){
alert("hello");
}
</pre>
<code>
window.onload(){
alert("hello");
}
</code>
</p>
<!--
列表分类:
无序列表
使用ul标签来创建一个无序列表
使用li在ul中创建一个一个的列表项
一个li就是一个列表项
通过type属性可以修改列表的项目符号
可选值:
disc:实心圆点,默认值
square:实心方块
circle:空心的圆
注意:默认的项目符号一般都不使用!一般设置背景图片
可以通过CSS去掉符号
ul{
list-style:none;
}
ul和li都是块元素
有序列表
使用ol创建有序列表
type属性可以指定序号的类型
使用阿拉伯数字,默认
自定义列表
使用dl来创建
dt:被定义的内容
dd:对定义内容的描述
-->
<ul type="circle">
<li>A</li>
<li>B</li>
</ul>
<ol type="i">
<li></li>
<li></li>
</ol>
<dl>
<dt>武松</dt>
<dd>打死西门庆</dd>
<dd>投奔梁山</dd>
<dt>武大</dt>
<dd>卖烧饼的</dd>
<dd>弟弟武松</dd>
</dl>
</body>
</html>