第1章Web程序设计基础内容简介:本章主要介绍Web程序设计必需的基础知识,其中包括Web的基本概念和工作方式及特点、Internet网络协议、IP地址、与Web有关的协议和统一资源定位器URL、超文本标记语言HTML、样式表CSS、可扩展标记语言XML的基本语法和规则,并给出一些简单的应用实例帮助理解,为Web程序设计奠定基础。第1章Web程序设计基础1.1Web概述1.2Internet概述1.3超文本标记语言HTML1.4样式表CSS1.5可扩展标记语言XML1.1Web概述1.1.1什么是WebWeb是一种信息系统,是基于Internet的、全球连接的、分布的、动态的、多平台的交互式超文本信息系统。1.1.2Web的工作方式Web服务器向浏览器提供服务的工作方式如下:(1)用户启动客户机(即本机)的浏览器程序,并在浏览器中指定一个URL(UniformResourceLocator,统一资源定位器)。(2)Web服务器接到浏览器的请求后,把URL转换成页面所在服务器上的文件路经名。(3)若URL指向的是普通的HTML文档,Web服务器直接送给浏览器,浏览器负责将HTML格式文档解释转换成用户能接受的文本格式。1.1.3Web页面的特点可读性强、Web页面的导航可用性、Web页面与系统平台无关、Web页面信息的分布特性、Web页面的动态交互性、Web页面的新闻性。1.1.4Web页面的功能1.主页的功能。网站主页用于组织和表现内容,它提供到站点主要部分的链接,以此来指引用户。2.超链接功能通过超链接功能,实现网页的设计对全球用户有吸引力,实现可访问性和国际化。3.页面的交互性交互是网站响应用户动作和选择的方式。交互是网页不可分割的组成部分。1.2Internet概述Internet是由各种不同类型和规模的、独立管理和运行的主机或计算机网络组成的一个全球性特大网络。大家在网上要共同遵守的网络协议是TCP/IP协议,凡是接入Internet的计算机都要安装和运行TCP/IP协议软件。1.2.1TCP/IP协议TCP/IP(TransmissionControlProtocol/InternetProtocol)是传输控制协议/网间协议。是一个工业标准的网络通信协议集,它是于1969年由U.SDepartmentofDefenseAdvancedResearchProjectsAgency所开发。TCP/IP协议把整个网络分为四个层次自上而下分别是:应用层、传输层、网络层和物理链路层。应用层应用层表示层会话层传输层传输层网络层网络层数据链路层物理链路层物理层TCP/IP参考模型与OSI参考模型的对照1.2.2HTTP协议•超文本传输协议HTTP(HyperTextTransferProtocol)是专门为Web设计的一种网络协议。•HTTP需要可靠的双向字节流传输服务,所以是建立在TCP之上的应用层协议。•HTTP是基于客户和服务器进行通信的基本模式,即请求回答模式。•HTTP协议不仅仅是限于Web服务,还支持如FTP协议和Telnet协议及名字服务等。•Web浏览器和Web服务器之间的交互步骤如下:1.客户与服务器建立TCP链接。2.客户向服务器发出请求。3.服务器如果接受请求,就向客户发回响应信息,其中包括状态码和所要的文件(一般是HTML文档。4.客户与服务器关闭链接。1.2.3Telnet协议•Telnet是TCP/IP的一个应用层协议,即Internet远程登录服务协议,是Internet上强有力的功能。要实现此功能,用户计算机上必需安装和运行名为Telnet的程序。使用该功能用户可以访问连在Internet上的任何一台Telnet服务器,用户主机成为该主机的终端而访问各种所需的信息。实时地使用远程计算机上对外开放的全部资源包括各种数据资源和软件资源及其硬件资源,以达到资源共享之目的。•用户使用Telnet必须具备的前提条件是:1.用户主机上装有包括Telnet应用层协议在内的TCP/IP协议族。2.要知道IP地址、域名、登录名、登录标识和口令,即所谓的权限。3.用户自己有帐号,完成拨号服务工作,使自己的调制解调器与远程主机建立通信关系。•为公众开放的Telnet远程服务器对用户是开放的,不需用户有自己的帐号也不需口令、用户名,照样可以登录。1.2.4FTP协议•文件传输协议FTP(FileTransferProtocol)是TCP/IP网络体系结构传输层的一种协议,用来提供计算机在Internet上传输二进制文件(程序和文档)的服务。它是一种上传/下载协议。通过FTP服务,允许Internet用户两地间的双向文件传输。实现真正意义上的全球资源共享。•FTP与Telnet的不同之处:前者可以实现两地间的信息拷贝(在首先取得对方允许的情况下),而后者是只能在取得远程主机允许的情况下(如帐号、口令、用户名登录)让用户主机以终端方式共享远程主机上的资源,而不能将远程主机上的文件资源复制到用户主机再传入用户自己的PC机上。•FTP是一种文件传输协议,体现的是服务。提供服务的机器称为FTP服务器,又称FTP网站。这类网站有两类:一类是访问该服务器时必须拥有远程计算机上的合法帐户和口令且拥有相应的访问权限。另一类是匿名FTP,即这类FTP服务器允许没有帐户和口令的用户仍然可以从远程计算机上获取文件,其目的是向公众提供文件拷贝服务。在与“匿名”FTP服务器建立连接时,只在“用户名”栏填入“anonymous”,在密码栏填入用户的E-mail地址作为口令完成注册。“匿名”FTP为广大Internet用户提供免费程序、文件、数据、新软件的下载,这类FTP服务器有很大一部分。1.2.5IP协议•Internet上的每一台计算机都有一个惟一的地址,称为IP地址,是识别网络中的主机及网络设备的惟一标识。IP地址有统一的格式,它是由协议IP规定的。•一个IP地址由4个字节组成为32位二进制。各字节间用句号分隔,反映在十进制上就是3位数一组,共4组。•每一个IP地址都由两部分组成:网络ID(NetWorkID)和主机ID(HostID)。–NetWorkID网络标识符,每个网络区段都有一个网络标识。网络标识代表一个网络。–HostID主机标识符,每个网络区段中每台计算机都被赋予一个主机标识符。•IP协议规定了五类IP地址A—E。其中A,B,C三类是基本的,它们由IP地址的高位来区分。–A类IP地址共有27=128个,均分配给大型网络使用。–B类IP地址共有214=16384个,适用于中等规模的网络。–C类IP地址最多,有222≈419万个,主要分配给小型网络使用。1.2.6统一资源定位器URL•统一资源定位器URL(UniformResourceLocator)是用来确定用户所需信息的确切位置。包括信息资源的名称及地址。•URL用来指定Internet资源要说明它位于哪台计算机的哪个目录中。URL通过定义资源位置的抽像标识来定位网络资源,格式如下:访问方法://服务器域名[:端口]/目录/文件名–访问方法说明如何访问文档,即来用什么协议或说是信息服务类型,可以是:HTTP、FTP、GoPher、WAIS、NEWS、TELNET、MAILTO。–冒号和“//”后部分指示一个网络主机的域名或IP地址,即文件所在的服务器。–端口部分是可选项,一般情况下可省略。但在一些情况下指定端口是为了让操作系统用来辩认特定信息服务的软件端口,默认的是用与访问关联的端口,如HTTP默认的TCP端口是80。–//目录/文件名是指文档在服务器中的目录。目录可包含子目录,各级目录之间用“/”分隔。1.3超文本标记语言HTML•HTML是HyperTextMarkupLanguage(超文本标记语言)的缩写。HTML语言是一种简单、通用的标记语言,又称Web网页描述语言。用HTML语言编制的文档为HTML文档,其文档扩展名通常是.htm或.html。由Web浏览器来解释并显示在用户浏览器窗口中的页面是Web页面。•HTML的优点:–每一个HTML文档占用空间小,易于传送。–HTML文档是多平台兼容,只需有HTML浏览器就可在任何平台上阅读网页文件。–HTML是标记性语言,易学易懂。–HTML文档的建立只要有一个文本编辑软件即可完成书写。当然专门的HTML编辑器生成HTML文档会更便捷,不需去记忆一些格式命令,用点击工具或菜单即可。•初学HTML应注意:–HTML文档的编辑工具:HTML文档是纯文本文件,可用任何一个纯文本编辑工具。–文件名的命名规则:要区分大小写;文件名中不能用空格和特殊字符。也尽量不要用汉字作文件名称部分。–编写出的HTML文档不是所见即所得,成功与否要通过浏览器查看效果。1.3.1HTML的基本语法(1)标记是HTML语言的标签符号和用标签标符号构成的各种元素的统称,用来界定各种单元,用一对〈〉中间包含若干字符命令表示,前一个“”为起始标记,后一个“/”为结束标记,单元的名称和属性由起始标记给出。1.〈HTML〉标记(最外层的标记)语法规则:〈HTML〉……〈/HTML〉属性:VERSION=String2.〈HEAD〉标记(用来标记HTML文档的页首)语法规则为:〈HEAD〉……〈/HEAD〉属性:None(无)3.〈TITLE〉标记(设置网页标题)语法规则:〈TITLE〉……〈/TITLE〉属性:None(无)4.〈BODY〉标记(标注HTML文档的正文)语法规则:〈BODY〉……〈/BODY〉属性:BACKGROUND=URL;指定用于网页背景图片文件的地址BGCOLOR=#RRGGBB;指定背景色彩TEXT=#RRGGBB;指定非可链接文字的色彩LINK=#RRGGBB;指定可链接文字的色彩ALINK=#RRGGBB;指定正被鼠标点击的可链接文字的色彩VLINK=#RRGGBB;指定已被鼠标点击(访问)过的可链接文字的色彩说明:#RRGGBB是指色彩红—绿—蓝(red—green—blue,RGB)的值,用16进制数码表示:0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,根据规范前面需加“#”。1.3.1HTML的基本语法(2)5.〈Hn〉标记(标注文档正文的各级标题)语法规则:〈Hn〉……〈/Hn〉属性:ALIGN=left|right|center|justify说明:–〈Hn〉标记中的n表示标题的级别,值范围1—6。–ALIGN用来控制标题文字的水平对齐方式,“|”标识相互排斥的属性值。6.〈P〉标记(显示段落标记)语法规则为:〈P〉……[〈/P〉]属性:ALIGN=left|center|right说明:•起始标记〈P〉必选,结束标记〈/P〉可选。•若需强制换行,可用〈BR〉标记强制插入一个换行动作。•Web浏览器会将文字中的多个空白字符(如空格、制表符)当作一个空格处理。若需在文字间插入多个空格,可使用SGML字符实体“ ”。各 之间用分号“;”间隔。1.3.1HTML的基本语法(3)7.〈BR〉标记(强制换行标记)语法规则:〈BR〉属性:CLEAR=left|all|right|none说明:•BR〉仅是换行,并不像〈P〉那样还要在随后的文本前插入一个空行。•CLEAR是可选属性:–Left:标记后的文本换行至浏览器窗口左边界不被图像占用的地方显示。–Right:标记后的文本换行至浏览器窗口右边界不被图像占用的地方显示。–All:标记后的文本在浏览器窗口的左右边界均不被图像占用的地方显示。–None:缺省值,仅换行而已。8.〈PRE〉标记(预格式化文本标记)语法规则:〈PRE〉……〈/PRE〉属性:WIDTH=n说明:•〈PRE〉和〈/PRE〉之间是预先排好的文本内容。•浏览器按等间距(或等宽)字体显示用户预先已排好的格式文本。•该标记之间某些使用自动换行标记、改变字体大小标记和图像。•WIDTH为可选项,n表示文本一行的字符数。1.3.2HTML文档的基本结构一个HTM