前言

学习网页的概念和分类,理解动态网页和动静网页的不同;理解网页浏览器的工作原理。理解HTML,XHTML,HTML5的概念,制作简略的HTML页面的开发。

什么是网页

能够在internet上通过网页浏览信息,如新闻,图片等,还可公布信息,如招聘信息等,网页是在某个中央某一台计算机上的一个文件。

网页次要由3局部组成:构造,体现,行为。

动态网页的特点是不管在何时何地浏览这个网页,看到的模式和内容都雷同,且只能浏览,用户无奈与网站进行互动。动态页面由HTML编写,扩展名个别为.htm, .html, .shtml, .xml等。与动静页面相比,动静网页是以.asp, .jsp, .php, .perl, .cgi等模式为后缀。

动静网页指网页的内容能够依据某种条件而主动扭转。

网页浏览器的工作原理

采纳B/S构造,即浏览器/服务器构造,用户工作界面是通过www浏览器来实现的:

  1. 事务逻辑次要在服务器端实现,极少局部的事务逻辑在前端实现。
  2. 大大简化了客户端的计算机载荷。
  3. 加重了系统维护与降级的老本和工作量。
  4. 升高了用户的总体老本。

浏览器的工作原理:

  1. 浏览器通过HTML表单或超链接申请指向一个应用程序的URL。
  2. 服务器收到用户的申请。
  3. 服务器执行已接管创立的指定应用程序。
  4. 应用程序通常基于用户输出的内容,执行所须要的操作。
  5. 应用程序把后果格式化为网络服务器和浏览器可能了解的文档,即通常所说的HTML网页。
  6. 网络服务器最初将后果返回到浏览器中。

www的根底是HTTP协定,web浏览器就是用于通过url来获取并显示web网页的一种软件工具,url用于指定要获得的Internet上资源的地位与形式。

HTML和HTML5

HTML是一种用来制作超文本文档的简略标记语言,用其编写的超文本文档称为HTML文档,它能独立于各种操作系统平台。

可扩大超文本标记语言XHTML:

XHTML是不须要编译,能够间接由浏览器执行,是一种加强了的HTML。它的可扩展性和灵活性将适应将来网络应用的更多需要,是基于XML的利用。开发者在HTML4.0的根底上,用XML的规定对其进行一些扩大,由此失去了XHTML,所以,建设XHTML的目标是为了实现HTML向xml的过渡。

HTML5简化了:<!DOCTYPE html>,简化了DOCTYPE,简化了字符集申明,以浏览器的原生能力代替脚本代码的实现,简略而弱小的HTML5API。

HTML网页的构造

文件扩展名是操作系统用来标记文件格式的一种机制。扩展名如同文件的身份阐明,区别了文件的类别和作用。

HTML网页的文件后缀名是.html或者.htm.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""xxx">申明的作用,通知浏览器所书写的HTML代码的版本。

<meta>标签,是HTML文档<head>标签内的一个辅助性标签,meta标签分为2个重要的属性:namehttp-equiv,通常用于可能优化页面被搜寻的可能性。

meta标签下name属性的应用:

<head> <meta name="keywords" content="nine, twenty-three"> <meta name="description" content="..."> <meta name="generator" content="Dreamweaver"> <meta name="author" content="depp"> <meta name="robots" content="all"></head>
  1. keywords向搜索引擎阐明页面的关键字,在content后输出供搜寻的具体关键字。
  2. description向搜索引擎形容页面的次要内容。
  3. generator向页面形容生成的软件名,在content前面输出具体的软件名称。
  4. author网页的设计者,在content前面输出设计者的具体姓名。
  5. robots限度搜寻的形式,在content前面通常可输出all,one,index,noindex,follow,nofollow其中之一,不同的属性别离有不同的作用,限度页面被搜寻的形式。

meta标签下的另一个属性http-equiv,其作用是反馈给浏览器一些明确的信息,帮忙浏览器更准确地展现页面。

<head> <meta http-equiv="content-type"  content="text/html; charset=gb2312"/></head>
  1. refresh 对属性的具体形容,阐明是令页面主动跳转的成果。
  2. content 后跟期待的工夫,url后跟跳转的页面链接地址。

link标签,定义了一个内部文件的链接,常常被用于链接内部css款式。

base标签为整个页面定义了所有链接的根底定位,其次要的作用是确保文档中所有的绝对url都能够被分解成确定的文档地址。

style标签用于定义css的款式。表明了在页面中引入一个.style的样式表。

script标签用于定义页面内的脚本。

titl题目标签,body体标签.

一个好的HTML文档应具备以下3个方面:
  1. 代码应用标准规范,不应该有谬误的拼写
  2. 代码构造清晰,使人高深莫测
  3. 没有谬误或者多余不必要的代码呈现

文本设计

<br>..</br><p>...</p>
<p align=left>...</p><p align=center>...</p><p align=right>...</p>

给文本加标注:<acronym title="">...</acronym>正文的内容放在title属性后的引号中,被正文的内容放在标签内。

无序列表:ul,li,有序列表:ol li

定义列表:

<dl> <dt>...</dt> <dd>...</dd> <dt>...</dt> <dd>...</dd></dl>

网页中的图像设计

  1. jepg格局的图像,该文件是常见的图像格式,.jpg后缀名,jpeg文件是通过压缩的一种图像。压缩的图像能够放弃为8位,24位,32位深度的图像,压缩比率能够高达100:1.jpeg能够很好地解决大面积色调的图像。
  2. png格局的图像,后缀名.png,这是一种能存储32位信息的位图图像,采纳的是一种无损压缩的形式。反对通明信息,指图像以浮现在其余页面文件或页面图像之上。
  3. gif格局的图像,是一种图像交互格局,后缀名.gif,只反对256色以内的图像,gif文件的图像成果是很差的。

所以总的来说:jepg能够压缩图像的容量,png的品质较好,gif能够做动画。

矢量图

说说矢量图和位图最大的区别:

无论是否对图像进行缩放,都不会影响矢量图的成果,但会影响图的品质。

设计者个别只违心将logo,ui图标,标识符号等简略图像存为矢量图。

图像的分辨率

分辨率的单位是dpi即每英寸显示的线数。通常所指的分辨率有两种,屏幕分辨率和图片分辨率,屏幕分辨率即计算机显示器默认的分辨率。

个别目前大部分显示器的分辨率是1024px x 768px,图片分辨率定义是用于量度位图图像内数据量多少的一个参数。

分辨率越高的图像,蕴含的数据越多,图像的容量就越大,会耗费更多的计算机资源,须要更大的存储空间。

分辨率指的是每英寸的像素值,通过像素和分辨率的换算能够测算图片的长度。

页面中的图像
<img src=... alt=.../>
  1. 使图像的顶部和同一行的文本对齐
<img style="vertial-align:text-top"/>
  1. 使图像的中部和同一行的文本对齐
<img style="vertical-align:middle"/>
  1. 使图像的底部和同一行的文本对齐
<img style="vertical-align:text-bottom"/>
  1. 使图像的底部和文本的基线对齐
<img style="vertical-alignbaseline"/>

hspace=30px示意图像左,右两边与页面其余内容隔30px的间隔。vspace=30px示意图像上,下两边与页面的其余内容的距离间隔是30px。

<img src="" widht="" height=""><img src="..." border=><hr align=".." width="..." size="..."><a href="链接对象的门路">链接锚点对象</a>

把邮箱留给须要分割你的人

<a href="mailto:邮箱地址">链接锚点对象</a>
  1. 链接还未被拜访:a:link{...}
  2. 链接被选中:a:active{...}
  3. 光标滑过链接:a:hover{...}
  4. 链接被拜访后:a:visited{...}
dashed 虚线double 双线groove 槽线inset 内陷outset 外陷
热点图像区域的链接

map标签:

<map id=...> <area shape="..." coords="..." href="..."></map>

shape属性,用于确定选区的形态,rect矩形,circle圆形,poly多边形。href属性,就是超链接。coords属性,用于管制形态的地位,通过坐标来找到这个地位。

网页中的表单

计算矩形的面积

<html><head><title>计算矩形的面积</title><style type="text/css"> .result {font-weight:bold;}</style><script language="JavaScript">function calculate() { var length = document.data.length.value; var width = document.data.width.value; var height = document.data.height.value; var area = document.getElementById('area'); area.innerHTML = length*widht; volume.innerHTML = length*widht*height; }</script>

创立表单

  1. action属性,通过form标签定义的表单里必须有action属性能力将表单中的数据提交进来:
<form action="my.php"></form>

它表明了这是一个表单,其作用是提交my.php页面中的数据。

  1. method属性通知浏览器数据是以何种形式提交进来的。method属性下能够有2个抉择:post或者get
  2. name属性,为了令递交进来的表单数据可能被解决这些数据的程序辨认。
<form name="data">
  1. 编码方式,enctype代表HTML表单数据的编码方式。

表单的工作原理

原理:在客户端接管用户的信息,而后将数据递交给后盾的程序来操控这些数据。

<script language="JavaScript">

如果通过援用内部javascript程序,就像链接外联款式:

<script type="text/javascript" src="dada.js"></script>

创立表单

  1. action属性,有action属性能力将表单中的数据提交进来:
<form action="da.php"></form>
  1. method 属性,作用是通知浏览器数据是以何种形式提交进来的。在method属性下能够有2个抉择,post或get。

提交形式用get,表单域中输出的内容会增加在action指定的url中,当表单提交之后,用户会获取一个明确的url。get在安全性上较差,所有表单域的值间接出现。post除了有可见的解决脚本程序,别的货色都能够暗藏。

  1. name属性,增加name属性是为了令递交进来的表单数据可能被解决这些数据的程序辨认。
<form name="dada">
  1. 编码方式:enctype代表HTML表单数据的编码方式,application/x-www-form-urlencoded, multipart/form-data, text/plain三种形式。
  • application/x-www-form-urlencoded是规范的编码方式,提交的数据被编码为名称/值对。
  • multipart/form-data属性示意数据编码为一条音讯,为表单定义mime编码方式,创立了一个与传统不同的post缓冲区,,页面上每个控件对应音讯中的一个局部。
  • text/plain示意数据以纯文本的模式进行编码,这样在信息中将不蕴含控件或者格局字符。
  • multipart/form-data形式上传文件时,不能应用post属性。
  1. 指标显示方式,示意在何处关上指标url,能够设置4种形式。
  • _blank示意在新的页面中关上链接
  • _self示意在雷同的窗口中关上页面
  • _parent示意在父级窗口中关上页面
  • _top示意将页面载入到蕴含该链接的窗口,取代任何以后在窗口中的页面。
<form action="mailto:da@qq.com" method="post" name="dada"enctype="text/plain" target="_blank"></form>

表单域

是指用户输出数据的中央,表单域可分为3个对象,input, textarea, select。

input对象下的多种表单的表现形式。
<input name="" type="" value="" size="" maxlength="">
  • type示意所定义的是哪种类型的表单模式
  • size示意文本框字段的长度
  • maxlength示意可输出的最长的字符数量
  • value示意事后设置好的信息
  1. text单行的文本框
  2. password将文本替换*的文本框
  3. checkbox只能做二选一的是或否抉择
  4. radio从多个选项中确定的一个文本框
  5. submit确定命令文本框
  6. hidden设定不可浏览用户批改的数据
  7. image用图片示意的确定符号
  8. file设置文件上传
  9. button用来配合客户端脚本
<form action="" method="post"><input name="name" type="text" size="20" maxlength="12"></form><input name="secret" type="password" size="20" maxlength="20"><input name="one" type="radio" value="one" checked="checked"><input name="one" type="radio" value="two"><input type="submit" value="确定"><input type="reset" value="复原">
创立submit按钮或reset按钮时,name属性不是必须的。

hidden暗藏域的样式表单

应用hidden来记录页面的数据并将它暗藏起来,用户对这些数据通常并不关怀,然而必须提交数据。

<form action=da.asp><input type=hidden name=somehidden value=dada><input type=submit value=下一页></form>
image款式的表单
<input type="image" src="图片/小图标.jpg" alt="确定">
  • src属性指定这张图像的门路
  • alt属性增加文本正文
file上传文件的样式表单

file样式表单容许用户上传本人的文件

<html><head><title>file款式的表单</title><style type="text/css">body {font:120% 微软雅黑;}input {font:100% 微软雅黑;}</style></head>上传我的文件:<form action="..." method="post" enctype="multipart/form-data"><input type="file" name="uploadfile" id="uploadfile"/></form></body></html>
textarea对象的表单

textarea对象的表单

<html><head><title>file款式的表单</title><style type="text/css">body{font:120% 微软雅黑;}textarea{font:80% 微软雅黑;color:navy;}</style></head><body>留言板<form action="..." method="post" enctype="multipart/form-data"><textarea name="dada" rows="10" cols="50" value="dada">请说:</textarea></form></body></html>
select对象的表单

select对象的表单

<form action=""> 地址: <select name="da1">  <option>1</option> </select></form>

应用optgroup标签配合label属性来给选项分类:

<select name="上海"><optgroup label="da1"><option>1</option></optgroup><optgroup label="da2"><option>2</option></optgroup></select>

select标签中退出size属性即可,如size=6示意是一个能包容6行文字的文本框,超出设置的行数时,将呈现滚动条。

<select name="上海" size="6">

表单域汇合:表单域的代码由fieldset标签和legend标签组合而成。

<form action="..." method="post"><fieldset><legend>注册信息:</legend>输出用户名:<input name="name" type="text" size="20" maxlength="12"></fieldset></form>
表单输出类型
  • url类型的input元素是专门为输出url地址定义的文本框。
<input type="url" name="webUrl" id="webUrl" value="http://wwwxxx"/>
  • email类型的input元素是专门为输出email地址定义的文本框。
<input type="email" name="dada" id="dada" value="23@qq.com"/>
  • range类型的input元素用于把输入框显示为滑动条,能够作为某一特定范畴内的数值选择器。
<input type="range" name="volume" id="volume" min="0" max="1" step="0.2"/>
  • number类型的Input元素是专门为输出特定的数字而定义的文本框。
<input type="number" name="score" id="score" min="0" max="10" step="0.5"/>
  • tel类型的input元素是专门为输出电话号码而定义的文本框,没有非凡的验证规定。
  • search类型的input元素是专门为输出搜索引擎关键词定义的文本框,没有非凡的验证规定。
  • color类型的input元素默认会提供一个色彩选择器。
  • date类型的Input元素是专门用于输出日期的文本框,默认为带日期选择器的输入框。
  • month提供一个月的选择器,week提供一个周选择器,time会提供工夫选择器,datetime会提供残缺的日期和工夫选择器,datetime-local会提供残缺的日期和工夫选择器。
减少表单的个性以及元素
  1. form个性:
<input name="name" type="text" form="form1" required/><form id="form1"><input type="submit" value="提交"/></form>
  1. formaction个性,将表单提交至不同的页面。
<form id="form1" method="post"><input name="name" type="text" form="form1"/><input type="submit" value="提交到page1" formaction="?page=1”/><input type="submit" value="提交到page2" formaction="?page=2"/><input type="submit" value="提交"/></form>
  • formmethod个性可笼罩表单的method个性
  • formenctype个性可笼罩表单的enctype个性
  • formnovalidate个性可笼罩表单的novalidate个性
  • formtarget个性可笼罩表单的target个性
placeholder个性
<input name="name" type="text" placeholder="请输出关键词"/>

autofocus个性:用于当页面加载实现时,可主动获取焦点,每个页面只容许呈现一个有autofocus个性的input元素。

<input name="key" type="text" autofocus/>

autocomplete个性用于form元素和输出型的Input元素,用于表单的主动实现。

input name="key" type="text" autocommplete="on"/>

autocomplete个性有三个值,能够指定"on","off"和""不指定,不指定就将应用浏览器的默认设置。

<input name="email" type="email" list="emaillist"/><datalist id="emaillist"><option value="23#qq.com">xxxx</option></datalist>

keygen元素提供一个平安的形式来验证用户。

<form action=""><input type="text" name="name"/><br><keygen name="security"/><br><input type="submit"/></form>
  1. keygen元素有密钥生成的性能,在提交表单时,会别离生成一个私人密钥和一个公共密钥。
  2. 私人密钥保留在客户端,公共密钥则通过网络传输至服务器。

output元素

  1. output元素用于不同类型的输入,比方计算结果或脚本的输入等。
  2. output元素必须从属于某个表单,即写在表单的外部。
<form oninput="x.value=dada.value"><input type="range" name="volume" value="50"/><output name="x"></output></form>

required

为某个表单外部的元素设置了required个性,那么这项的值不能为空,否则无奈提交表单。

<input name="name" type="text" placeholder="dada" required/>

pattern

  1. pattern用于为Input元素定义一个验证模式。
  2. 该个性值是一个正则表达式,提交时会查看输出的内容是否合乎给定的格局,如果不合乎则不能提交。
<input name="code" type="text" value="" pattern="[0-9]{6}" placeholder="da"/>

min,max,step

  1. min示意容许范畴内的最小值
  2. max示意容许范畴内的最大值
  3. step示意非法数据的距离步长
<input type="range" name="dada" id="dada" min="0" max="1" step="0.2"/>

novalidate

  1. 用于指定表单或表单外在提交时不验证
  2. 如果在form元素利用novalidate个性,则表单中的所有元素在提交时都不须要再验证
<form action="dada.asp" novalidate="novalidate"><input type="email" name="user_email"/><input type="submit"/></form>

validity

  1. 获取表单元素的ValidityState对象,该对象蕴含8个方面的验证后果
  2. ValidityState对象会继续存在,每次获取validity属性时,返回的是同一个ValidityState对象
var validityState=document.getElementById("username").validity;

willValidate属性

  1. 用于获取一个布尔值,示意表单元素是否须要验证
  2. 如表单元素设置了required个性或pattern个性,则willValidate属性的值为true,即表单的验证将执行
var willValidate = document.getElementById("username").willValidate;

validationMessage

  1. 获取以后表单元素的谬误提示信息。
var validationMessage=document.getElementById("username").validationMessage;

点关注,不迷路

好了各位,以上就是这篇文章的全部内容,能看到这里的人都是人才。我前面会不断更新技术相干的文章,如果感觉文章对你有用,欢送给个“赞”,也欢送分享,感激大家 !!