XHTML学习笔记

 

一,xhtml是html根据xml进行重新规范化而产生的,所以,关于良构文档的所有规则,对视同陌路都适用。

XHTML要求:

 1,必须在文件顶部提供DTD声明:

 <! DOCTYPE PUBLIC "-//W3C/DTD XHTML 1.0 Strict//EN" "">

2,必须在<html>中包含对xml名称空间的引用

<html xmlns="http://www.w3.org/TR/xhtml1">

3,XML是大小写敏感的,而且XHTML标记名称和属性名称必须小写。

4,开始标记和结束标记必须匹配,空元素必须适用<tag />一个空格(g和/之间有)的形式,标记必须正确地嵌套。

5,不能忽略<head>和<body>元素,而且头部中的第一个元素必须是<title>元素。

6,所有属性值必须用引号封闭,不能简化。<input checked="checked" />

7,为了避免<style>和<script>元素中的<和&字符被解释为开始标记,它们必须被包含在 CDATA行中:<script>

<![CDATA[

......UNESCAPED SCRIPT CONTENT

]]>

</script>

二,XHTML代码的向后兼容

1,处理指令

处理指令是不在浏览器中显示的元素,但是有些浏览器可能会显示它们。

2,空元素

写<br/>这样的空元素时,在标记名和斜线之间加空格,即<br />,这种形式相当于执行<br></br>。这种形式也适用于<img src="face.gif" />。

3,元素简化和空元素内容

当适用没有内容的非空元素时,不要采用简化形式。例如,如果你不希望指定页面标题,应该适用<title></title>,而不是<title />。

4,嵌入式的样式和脚本

如果你的样式单或脚本适用了字符<,&,]]>或--,那么应该适用外部的样式单或脚本,而不是包含CDATA行,另外当前将注释包含在样式单或脚本部分中,使其在不支持它们的旧式浏览器中隐藏,这种方法在将来可能会不起作用。但是,现在还应该继续使用这种方法。

5,属性值内的换行

不要在属性值内换行或加大量空格,因为不同的用户代理对这些情况的处理方式有差异。

6,Isindex

在文档头部中,不要包含一个以上的<isindex>元素。这个元素已经被<input>元素取代了。

7,.lang和xml:lang属性

在指定语言时,这两种属性都能用,而xml:lang用于可能产生混淆的情况下。

8,片段标识符

实际上,name属性已经被id属性替代,但是当前并非所有浏览器都支持后者。简单的解决方案同时包含两者,并确保它们的值相同的。<a name="sod" id="sod">...</a>

三,简单的例子

<?xml version="1.0" encoding="UTF-8" ?>

<!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" xml:lang="en" lang="en">

<head>

<title> First XHTML document </title>

</head>

<body>

<p> This is my first XHTML documet . </p>

</body>

</html>

四,XHTML文档的组成

1,版本声明

在每个文档的开头包含一个XML声明。它不是必须的。但是XHTML1.0标准“强烈鼓励”。

<?xml version="1.0" encoding="UTF-8"?>

encoding属性烦人缺省值是UTF-8。

2,DOCTYPE声明

在此处声明文档针对哪个DTD进行合法性检查,而且提供URL。

3,文档头部

文档头部用于包含关于文档的重要信息,这些信息不属于文档的普通流,文档头部中的信息通常不显示。

一下是允许出现在文档头部中的元素:

<title> <link> <meta> <object> <style> <script> <base>

根据XHTML规则<title>应该是第一个元素,而且必须存在。

4文档主体

5,注释

五,基本的XHTML元素

1,块元素

<div></div> 用于分割,他实际上用于样式单。通常此元素前后葛优一个换行,不是内置的垂直间距。

2,行内元素

<span></span> 用于范围。实际上,它只用于样式或类属性的载体。

六,属性

1,通用属性

 id属性

 class属性

 style属性

2,表示形属性

几年来,HTML已经积累拉许多表示性属性。大多数情况下,反对使用这些属性,而用样式单代替。

如:align,backgroung, bgcolor, text, link, vlink, alink, 列表的type, hr的align,noshade,size, width,<font> <basefont>。

七,重复样式单的优先级。

规则是:最后一个样式但优于其他样式单,而嵌入的样式单优于外部样式单,行内样式单优于所有其它样式单。

八,链接

1,锚

<a name="anchor" ></a>

引用锚<a href="#anchor" ></a>

应用其他页面的锚<a href="xxx.html#anchor" > </a>

2,使用不同的协议进行链接

<a href="ftp://xxx.xxx.xxx"></a>

<a href="mailto:xxx@xxx.xx"></a>

3其他链接元素

1)<link>

2)<appplet>

3)<object>:通过它,任何对象都可以被嵌入进页面。对象可以是图像、多媒体文件,HTML文件,TEXT文件。<object>标记有data属性。如果浏览器不支持次标签,则,<object></object>中的文本将被显示出来。

4)<script>

九,框架

在XHTML中,框架已经正式放弃。

1,框架集<frameset>分割容器

<frame>定义各个框架及其内容。

2,行内框架<iframe>

<iframe src="text1.htm" >

 xxxxx

</iframe>

3,<noframes>xxxx</noframes>如果浏览器不支持框架则显示这其中的文本。一般在最外围的</frameset>之前放置。

一○,名称空间

xmlns:[alias]="[namespace name]"

一一,DTD的三个版本

1,严格版

<!DOCTYPE html 

PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 

 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" > 

2,过渡版

<!DOCTYPE html 

PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 

 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" > 

多支持一些元素比如:<applet><center><font><noframes><iframe>....

3,框架集DTD

<!DOCTYPE html 

PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" 

 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd" > 

 比过渡版多支持<frame><frameset>元素。

 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值