codecamp

XHTML 示例

正如您现在可以猜到的那样,XHTML代码看起来与普通的旧HTML代码非常相似,仅有一些语法差异。下面显示了三个有效的XHTML文档的例子。

他们使用W3C的XHTML验证工具进行验证。


例1. 严格的DTD XHTML示例:


这个例子使用严格的DTD,这意味着每一个标签必须正确关闭,所有的属性赋值等。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title> 严格的DTD XHTML示例-w3cschool.cn在线教程 </title>
</head> <body> <p>

请选择一天:

<br /><br /> <select name="day"> <option selected="selected">星期一</option>
<option>星期二</option>
<option>星期三</option>
</select> </p> </body> </html>


例2. 过渡DTD XHTML例子:


此示例使用过渡DTD,它为不识别样式表的旧浏览器提供支持。你可以看到它在<body>标签中使用了几个属性,当使用严格的DTD时,这是不允许的:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title> 过渡DTD XHTML例子-w3cschool.cn在线教程 </title>
</head> <body bgcolor="#FFFFFF" link="#000000" text="red"> <p>这是一个过渡XHTML例子[www.w3cschool.cn]</p>
</body> </html>


例3. 框架DTD XHTML例子:


本示例使用框架集DTD,它允许我们将一个XHTML页面拆分为多个框架,每个框架中包含一个XHTML页面:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title> 框架DTD XHTML例子-w3cschool.cn在线教程 </title>
</head> <frameset cols="100,*"> <frame src="toc.html" />
<frame src="intro.html" name="content" /> </frameset> </html>


结论


XHTML文档看起来更专业,消除了潦草的编码习惯。他们仍然允许我们为旧浏览器开发页面,但是,通过使用过渡性DTD声明。

与您的网站最难的事情之一是修改其页面,以符合严格的XHTML DTD。如果您在使用XHTML验证器,那么您将看到我在说什么。


在我看来,XHTML是一个非常好的主意。我喜欢使用XML解析器浏览XHTML文件的想法。我也喜欢将HTML与XML混合的想法......它们是世界上最流行的两种标记语言,应该相互恭维。希望XHTML在接下来的几年里会弃用HTML。

尽管我们正在从网上的每个站点开始变得符合XHTML标准,但是我们很高兴知道我们可以像专业的Web开发人员那样设置标准。


XHTML HTTP状态消息
入门XHTML后,接着该学习什么?
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

XHTML 测验

XHTML 参考手册

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }