当前位置: 首页 > 图文教程 > 网页制作 > HTML/XHTML教程 > XHTML标签都有一个结束标记

HTML/XHTML教程
IE5+专有日历
跨框架下拉菜单
用鼠标拖动表格进行排序
通用表单验证函数
静态页面的值传递(三部曲)
用javascript获得地址栏参数的两种方法
校验日期的函数
Select的OnChange()事件
区分只读文本框和普通文本框的背景色
指定选取textarea的特定行
清除WORD冗余格式并粘贴
页面载入时提示消息层
正则表达式regular expression详述
最精致的日历式日期输入控件
MD5算法在JS中的实现
javascript 的面向对象编程
自适应图片大小的弹出窗口
锁定行头和列头的表格组件
简化的enter转化成tab组件
日期相加的函数addDate

HTML/XHTML教程 中的 XHTML标签都有一个结束标记


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 93 ::
收藏到网摘: n/a


原文连接:http://www.dudo.org/article.asp?id=253
XHTML规范中有一条标准就是“每个XHTML标签都有一个结束标记”。那么对于HTML中原来不带结束标记的元素,则在该结束前加上“/”来关闭这个标签,如,<img>标签原来在HTML中的写法:
<img src="..." alt="...">
到了XHTML中,就应该在“>”前增加一个“/”来关闭这个标签,为了防止某些老式浏览器不认识这种写法,因此要在“/”前加上一个空格(HTML兼容性标准):
<img src="..." alt="..." />
这似乎是说在开始标记中加上一个“/”就可以关闭掉这个标签。特别是对于空内的标签来说,似乎使用这种写法更简洁了。比如说,
<div class="clear"></div>
这是在清除浮动(闭合浮动元素)中经常用到的一段代码。那么它似乎可以样写:
<div class="clear" />
是的,<div>元素可以为空,这样写没有问题,但是我们对其它标签也使用类似的写法会出现什么样的后果呢?如在<head>中引入外部Javascript文件,我们一般这么写:
<script type="text/javascript" src="..." language="javascript"></script>
既然没有内容为空,我们们可不可以写成
<script type="text/javascript" src="..." language="javascript" />
我们发现,这样的写法在浏览器要么不起作用,要么会出错,多数情况下,浏览器会认为这个标签没有关闭,而错误地认识<script>之后的所有内容都是Javascript代码,所以会产生错误。再如,
<textarea id="tt" cols="10" rows="8" />
如果在浏览器运行这段代码,你会发现从<textarea>开始,之后的所有XHTML代码都会被当作文本框的内容出现在文本框内。
这样看来,HTML4.0中已经存在成对的标签在XHTML中必须使用已有的结束标签。那么<div>为什么可以呢?其实,<div>也不可以,只是<div>的在浏览器没有那么明显的显示而已。而诸如<span />一类的写法就更加不正确了,首先<span>本身有关闭标签</span>,此外<span>标签内容不能为空白(纯空格也不行)。也就是说除了<img>、<hr>、<link>、<br>等标签可以使用“/”关闭外,其它的元素必须使用</...>,否则会出现不可预料的问题。