需要了解一点关于XML语言的基本规范和要求
- XHTML文档基本结构
<!DOCTYPE html PUBLIC "-(+表示已注册)//W3C//DTD XHTML 1.0(版本号) Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
--余下的head和body部分和HTML无二,这里不做赘述--
- XHTML和HTML的区别
1.多了<!DOCTYPE>
2.其中DOCTYPE是文档类型,必须大写
3.DTD(XHTML1-transitional.dtd)表示文档类型定义,里面包含了文档的规则,网页根据预定义的文档规则,解析页面元素。
4.XHTML必须使用xmlns声明文档的命名空间,xmlns是XHTML NameSpace的缩写。其中,命名空间是收集元素类型和属性名字的一个详细的DTD,通过一个URL来指向识别命名空间。都使用相同的值"http://www.w3.org/1999/xhtml"
XHTML基本语法
大部分和HTML语法一致,有几点不同
1.文档开头必须定义文档类型
2.一定要设置xmlns属性
3.所有标签都闭合,如br/标签
4.所有元素属性小写
5.所有属性都必须加引号括起来。但在HTML中是可以不给属性值加引号
6.所有属性一定要赋值
7.特殊符号一定要编码表示,如"<"表示为<,">"表示为>,, 表示为空格,·表示为. &amp表示为&
8.注释的内容中不要使用--,如这是错的
XHTML文档类型
1.过渡型(Transitional)[刚接触前端的设计者推荐使用这款]
对标签和属性的语法要求不严格,允许使用HTML4.01的标签
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w1.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2.严格型(Strict)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w1.org/TR/xhtml1/DTD/xhtml1-Strict.dtd">
严格型文档以下元素不被支持
Center:居中(属于表现层)
font:字体样式(属于表现层)
strike:删除线(属于表现层)
s:删除线(属于表现层)(推荐使用<del></del>,因为语义化)
u:文本下划线(属于表现层)(推荐使用<ins></ins>,因为语义化)
iframe:嵌入式框架窗口(专用于框架文档类型和过渡型文档)
isindex:提示用户输入单行文本(与input元素语义重复)
dir:定义目录列表(与dl元素语义重复)
menu:定义菜单列表(与ul元素语义重复)
basefont:定义文档默认字体属性(属于表现层)
applet:定义插件(与object元素语义重复)
严格型文档以下属性不被支持
align(支持table包含的相关元素:tr,td,th,col,colgroup,thead,tbody,tfoot)
language
background
border(table元素支持)
height(img和object元素支持)
hspace
name(在XHTML4.0.1strict中支持, XHTML1.0 strict中的forum和img不支持)
noshade(tr属性,规定水平线颜色为无色)
nowrap(td属性,规定单元格的内容不换行)
target
text,link,vlink(已访问过的链接),alink(未访问过的链接)
vspace
width(img、object、table、col和colgroup元素支持)
3.框架型
一种专门针对框架类型使用的DTD
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w1.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
设置xmlns的重要性
为两个人分别定义空间,可以防止语义冲突
<body>
<document xmlns="http://www.mysite.cn/zhangsan">
<name>数码</name><br />
<author>作者</author>
</document>
<document xmlns="http://www.mysite.cn/lisi">
<name>论文</name><br />
<author>作者</author>
</document>
</body>
HTML元信息
1.重要的头部信息
<meta>的设置
<meta> 标签位于文档的头部,不包含任何内容。<meta> 标签的属性定义了与文档相关联的名称/值对
<meta>标签的属性分为两组
1.name:用来描述网页的元信息
<meta name="keywords">
content:name属性所描述的内容,通过content详细说明,方便浏览器、机器人等检索
2.http-equiv:声明HTTP协议的响应头报文(即MIME文档头)
content:http-equive属性值所描述的内容通过content属性来详细设置
2.举几个例子
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<meta http-equiv="Content-language" content="zh-CN" />
*Content-language定义页面语言编码
<meta http-equiv="refresh" content="5" />
*5s钟后刷新页面
<meta http-equiv="refresh" content="5" url="http://www.baidu.com" />
*5s后跳转到百度
<meta http-equiv="expires" content="Sunday 20 October 2021 01:00 GMT" />
*设置网页缓存(也就是过期时间)
<meta http-equiv="pragma" content="no-cache" />
*设置网页没有缓存
<meta http-equiv="author" content="http://www.css8.cn" />|
*设置网页作者
<meta http-equiv="copyright" content="http://www.css8.cn" />
*设置网页版权
<meta http-equiv="date" content="2009-01-12T20:50:30+00:00" />
*设置创建时间
<meta http-equiv="robots" content="none" />
*禁止搜索引擎检索
HTML转换XHTML时注意以下几点
1.闭合所有元素
2.使用正确的空元素语法(即
要写成
)
3.所有的属性值必须加引号
4.为所有属性分配值
5.元素和属性名要小写
6.元素正确嵌套
7.包含声明
8.添加XHTML名字空间
网友评论