XHTML入门学习教程:网页Head和DTD

所属分类: 网页制作 / HTML/Xhtml 阅读数: 1451
收藏 0 赞 0 分享

head和DTD尽管不会显示在页面上,但是却是网页的重要元素。 为什么会出错?
在上一节中我们我们在检验我们的网页时得到了一段出错信息,但是我们在整个网页的制作过程中都是按照XHTML标准写的啊。其实问题出在了网页的“头部”,下面我们就来解决这个问题。 <head>部分
在之前的教程中除了<title>标签之外我们修改的都是<body>之间的内容,也就是显示在页面里的内容。那么XHTML中的<head>部分是做什么的呢?其实在<head>部分我么可以加入许多浏览器可以“看得见”的信息。下面我们就介绍一些head部分常用的标签。
注意:本节的标签与属性大多数难于记忆,事实上在我们在使用网页制作软件创建网页的时候它们会自动生成。本节的目的是能够了解这些标签的含义,以在必要的时候可以做一些手工的修改。现在就打开我们的“index.html”,在<head></head>中间插入如下代码:
1.<meta http-equiv="Content-Type" content="text/html;charset=gb2312" />
这段代码告诉浏览器我们的网页使用的是gb2312中文字符编码,没有该段<meta>信息正是上一次检验时出现问题的原因之一。
2.<meta name="keywords" content="小学生,欺负同学,寒暑假作业,家长" />
这段代码是为搜索引擎写的,content的内容就是index.html的关键词。
请注意,<meta>标签也是一个空标签,别忘记加上/。<meta>标签的作用还远不只这些,不过在缺少实际应用的情况下,很难了解<meta>标签的实际用处。如果想了解更多<meta>标签的知识,可以到百度搜索相关知识。 关于<head>标签的说明
正如之前所说的,<head>部分的内容并不是为浏览者写的,而是为浏览器和搜索引擎写的。因此<head>部分不应该含有任何在页面中可视的的内容。 DTD
如果现在再次检验我们的网页,仍然会得到出错信息,提示找不到DTD文件,那么什么是DTD文件呢?简单的说它就是在任何人(多数情况下是类似浏览器的软件)想要读取我们的文件之前告诉他我们文件是遵照哪一套规则来写的。以检验过程为例子,如果我们使用HTML4.01的DTD呢,效验器就会认为我们是使用的HTML4.01的规则编写的网页,然后按照相应的规则来一行一行的检验我们的代码,最终返回检验结果。
我们制作的网页是使用XHTML的规则,当然要使用XHTML的DTD。不过正如我们前面提到的,XHTML的DTD也分为相对松散的过渡期DTD和要求相当严格的严格DTD。本教程中我们将要在网页中声明严格的DTD,如果您想了解更多关于DTD的内容需要学习XML,本教程中不做过多讨论。
下面我们就为我们的网页声明DTD。打开之前保存的"index.html",在第一行(<html>标签之前)输入如下代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
并且在<html>标签里添加如下属性:xmlns="http://www.w3.org/1999/xhtml"。这个叫做命名空间属性,属于XML范畴,我们这里仍然不做过多的讨论。
这段代码的作用就是声明我们的网页是使用的xhtml1-strict.dtd。现在再将这个页面提交给W3的效验器,这次将返回一个“This Page Is Valid XHTML1.0 Strict!”的信息。这表示我们的代码中没有任何错误,完全符合XHTML1的strict(严格)标准。当然了,实际工作中情况可能不总是如此,在实际的网页设计过程中,总会有各种原因造成我们写出不规范的代码。这时效验器就会给出错误报告,我们只需要按照提示修改代码即可。
更多精彩内容其他人还在看

Table相关整理及Javascript操作table,tr,td

很多人都有这种经历:当某个td中没有内容或者没有可见元素时,td的border也会消失。本文将给出解决方案,感兴趣的朋友可以了解下,或许本文对你有所帮助
收藏 0 赞 0 分享

td 内容自动换行 table表格td设置宽度后文字太多自动换行

table表格td设置宽度后文字太多导致自动换行,这是一个很常见的问题,或许很多的网友已经有了好的解决方法,如果依然有童鞋们不会的,可以参考下本文,可能会有意外的收获
收藏 0 赞 0 分享

html4和html5区别之如何在一个input上添加焦点实现代码

如何在一个input上添加焦点,有很多的实现方法,本文分别用html4和html5做了下演示,感兴趣的朋友可以参考下,或许本文对你有所帮助
收藏 0 赞 0 分享

纯css为select添加样式(无脚本)实现

改变select默认的样式,一般情路情况下通过ul,li来模拟来实现;Jquery插件也是这样,接下来介绍一种不写脚本,只用单纯的css来实现。在IE系列下,选中某个选项的时候会有背景色块,IE7-IE10都有此bug,感兴趣的朋友可以参考下啊
收藏 0 赞 0 分享

iframe的src赋值问题(服务器端)

frame的src赋值的问题,本文将进行详细探讨:服务器端的iframe重新src重新赋值,给iframe加一个ID,再加上runat=server,感兴趣的你可不要错过了哈
收藏 0 赞 0 分享

iframe的src设置为about:blank之后细节探讨

不设置为about:blank,内存不会释放掉。还必须用 iframe.document.write(''); 这样才能将内容清空,本文将详细探讨一下iframe的src设置为about:blank之后细节,感兴趣的你可不要错过了哈
收藏 0 赞 0 分享

无法定义IE6字体:13px大小无效,IE6自动显示更大的字体的解决方法

前些天调整网页一个模块的时候将页面字体的大小设置为13px大小了,由于当时用的是Chrome浏览器以及IE8,并没有发现原来font-size:13px在IE6下居然不听使唤总是自动显示为一个更大的大小,变现上又及其难看
收藏 0 赞 0 分享

为何html中嵌入mp4格式视频播放不了

只是在页面中加载了一个播放器的样子,各个按钮都不管用,不知道是哪个地方出了问题,很是郁闷,于是搜集整理下,拿出来和大家分享,希望可以帮助你们
收藏 0 赞 0 分享

如何把select下拉框的值传到id中实现代码

把select下拉框的值传到id中,是网友们比较在意的问题,本人搜索整理下,晒出来和大家分享
收藏 0 赞 0 分享

怎么把select下拉菜单里的文字设置成左右滚动效果

希望用marquee标签来设置字体滚动,代码是下面这样写的,但是没有效果,字体还是不会滚动,应该怎么来写,才会实现这个效果呢
收藏 0 赞 0 分享
查看更多