dhtml
首先我们看一看微软中国站点中的一个重要界面特性——当浏览者将鼠标指针移动到页面导航条上时,会动态地弹出一个菜单,在该菜单中移动鼠标,所指向的菜单项变为红色显示;如果将鼠标指针移出菜单所在范围,则菜单自动隐藏:如果将鼠标指针移动到导航条上另外一个区域,则会弹出另外一个菜单.这种效果非常类似于Windows应用程序的特性,即通过图形化的界面为用户提供尽可能多的功能。实际上,采用这种方式可以使同一个页面上包含更多的信息,对于微软中国这样庞大的站点来说十分有用(实际上,microsoft.com也是采用这种界面)。
要实现这种效果,单纯依靠HTML和JavaScript已经无法实现,必须采用新的技术——这就是动态HTML。所谓动态HTML(Dynamic HTML,简称DHTML),其实并不是一门新的语言,它只是HTML、CSS和客户端脚本的一种集成。
DHTML建立在原有技术的基础上,可分为三个方面:
一是HTML(XHTML),也就是页面中的各种页面元素对象,它们是被动态操纵的内容;
二是CSS,CSS属性也是动态操纵的内容,从而获得动态的格式效果;
三是客户端脚本(例如JavaScript),它实际操纵Web页上的HTML和CSS。
使用DHTML技术,可使网页设计者创建出能够与用户交互并包含动态内容的页面。实际上,DHTML使网页设计者可以动态操纵网页上的所有元素——甚至是在这些页面被装载以后。利用DHTML,网页设计者可以动态地隐藏或显示内容、修改样式定义、激活元素以及为元素定位。DHTML还可使网页设计者在网页上显示外部信息,方法是将元素捆绑到外部数据源(如文件和数据库)上。所有这些功能均可用浏览器完成而无需请求Web服务器,同时也无需重新装载网页。这是因为一切功能都包含在HTML文件中,随着对网页的请求而一次性下载到浏览器端。
可见,DHTML技术是一种非常实用的网页设计技术。实际上,DHTML早已广泛地应用到了各类大大小小的网站中,成为高水平网页必不可少的组成部分。
DHTML就是当网页从WEB服务器下载后无须再经过服务器的处理,而在浏览器中直接动态地更新网页的内容、排版样式、动画。比如,当鼠标移至文章段落中,段落能够变成蓝色,或者当你点击一个超链后会自动生成一个下拉式的子超链目录。这就是 Dynamic HTML(动态HTML),它是近年来网络发展进程中最具实用性的创新之一。它是一种通过各种技术的综合发展而得以实现的概念,这些技术包括Java Script , VBScript, Document Object Model (文档对象模型),Layers和Cascading Style Sheets ( CSS样式表)等。
DHTML 不是 W3C 标准DHTML 指动态 HTML(Dynamic HTML)。
DHTML 不是由万维网联盟(W3C)规定的标准。DHTML 是一个营销术语 - 被网景公司(Netscape)和微软公司用来描述 4.x 代浏览器应当支持的新技术。
DHTML 是一种用来创建动态站点的技术组合物。
对大多数人来说,DHTML 意味着 HTML 4.0、样式表以及 JavaScript 的结合物。
W3C 曾讲过:“动态HTML是一个被某些厂商用来描述可使文档动态性更强的HTML、样式表以及脚本的结合物的术语。”
DHTML 技术
通过 DHTML,Web 开发者可控制如何在浏览器窗口中显示和定位 HTML 元素。
HTML 4.0
通过 HTML 4.0,所有的格式化(信息)可移出HTML文档,并写入一个独立的样式表中。因为 HTML 4.0 可以把文档的表现从其结构中分离,我们可以在不搞乱文档内容的情况下完全地控制表现层。
层叠样式表(CSS)
通过 CSS,我们得到了一种用于 HTML 文档的样式和布局模型。
由于 CSS 使开发者有能力同时控制多个网页的样式和布局,CSS 可以称作 Web 设计领域的一个突破。作为开发者,您可以为每个 HTML 元素定义样式,并把它应用到您希望的任意多的页面上。如果需要做一个全局的改变,只需简单地改变样式,Web 中所有的元素都会被自动地更新。
文档对象模型(DOM)
DOM 指文档对象模型。
HTML DOM 是针对 HTML 的文档对象模型。
HTML DOM 定义了针对 HTML 的一套标准的对象,以及访问和处理 HTML 对象的标准方法。
“W3C 文档对象模型(DOM)是一个中立于语言和平台的接口,它允许程序和脚本动态地访问和更新文档的内容、结构以及样式”。
JavaScript
使您有能力编写可控制所有 HTML 元素的代码。
在 Netscape 4.x 以及 Internet Explorer 4.x 的 DHTML 技术
Netscape 4.x 跨浏览器 DHTML Internet Explorer 4.x
JSS(JavaScript 样式表)(允许您控制不同的 HTML 元素如何显示)
Layers(允许您控制元素的定位和可见性)
CSS1
CSS2(允许您控制不同的 HTML 元素如何显示)
CSS Positioning (允许您控制元素的定位和可见性)
JavaScript
可视滤镜(允许您向文本和图形应用可视效果)
动态 CSS(允许您控制元素的定位和可见性)
注释:只要各种浏览器所创建的属性特征和技术不被其他的浏览器支持,使用 DHTML 进行编码就会产生问题。某个网页在一款浏览器中看上去很棒,在另一款中却非常糟糕。