How To DHTML (Tutorial)
How To DHTML (Tutorial)
DHTML Tutorial
2
Contents Pag
e
DHTML
Tutorial 3
DHTML Intro 4
DHTML CSS 14
DHTML DOM 15
DHTML Events 19
DHTML Summary
DHTML 20
DOM
DOM Reference
DHTML is a combination of technologies used to create dynamic and interactive Web sites.
To most people DHTML means a combination of HTML, Style Sheets and JavaScript.
DHTML Tutorial
DHTML Tutorial
3
Introduction to DHTML
Before you continue you should have a basic understanding of the following:
• HTML
• CSS
• JavaScript
If you want to study these subjects first, find the tutorials on our Home Page.
DHTML is not a standard defined by the World Wide Web Consortium (W3C). DHTML is a "marketing term" -
used by Netscape and Microsoft to describe the new technologies the 4.x generation browsers would
support.
To most people DHTML means a combination of HTML 4.0, Style Sheets and JavaScript.
W3C once said: "Dynamic HTML is a term used by some vendors to describe the combination of HTML, style
sheets and scripts that allows documents to be animated."
DHTML Technologies
With DHTML a Web developer can control how to display and position HTML elements in a browser window.
HTML 4.0
With HTML 4.0 all formatting can be moved out of the HTML document and into a separate style sheet.
Because HTML 4.0 separates the presentation of the document from its structure, we have total control of
presentation layout without messing up the document content.
With CSS we have a style and layout model for HTML documents.
CSS was a breakthrough in Web design because it allowed developers to control the style and layout of
multiple Web pages all at once. As a Web developer you can define a style for each HTML element and apply
it to as many Web pages as you want. To make a global change, simply change the style, and all elements in
the Web are updated automatically.
DHTML Tutorial
DHTML Tutorial
The HTML DOM defines a standard set of objects for HTML, and a standard way to access and manipulate
HTML objects.
"The W3C Document Object Model (DOM) is a platform and language neutral interface that allows programs
and scripts to dynamically access and update the content, structure, and style of a document".
JavaScript
Note: Problems with coding DHTML technologies WILL occur as long as each browser creates its own
proprietary features and technology that is not supported by other browsers. A Web page may look great in
one browser and horrible in another.
Examples
Note: Most of the DHTML examples require IE 4.0+, Netscape 7+, or Opera 7+!
DHTML Tutorial
DHTML Tutorial
position:relative
How to position an element relative to its normal position. 5
position:relative
How to position all headings relative to their normal position.
DHTML Tutorial
DHTML Tutorial
position:absolute
How to position an element using an absolute value. 6
First, the element must specify the position attribute (relative or absolute).
Position
The CSS position property allows you to control the positioning of an element in a document.
position:relative
The following example positions the div element 10 pixels to the right from where it's normally
positioned:
div
{
position:relative;
left:10;
}
position:absolute
The position:absolute property positions an element from the margins of the window.
DHTML Tutorial
DHTML Tutorial
The following example positions the div element 10 pixels to the right from the left-margin of its
containing block: 7
div
{
position:absolute;
left:10;
}
Visibility
visibility:visible
h1
{
visibility:visible;
}
visibility:hidden
h1
{
visibility:hidden;
}
Z-index
The z-index property is used to place an element "behind" another element. Default z-index is 0. The higher
number the higher priority. z-index: -1 has lower priority.
h1
{
z-index:1;
}
h2
{
z-index:2;
}
In the example above, if the h1 and h2 elements are positioned on top of each other, the h2 element will be
positioned on top of the h1 element.
DHTML Tutorial
DHTML Tutorial
Filters
8
The filter property allows you to add more style effects to your text and images.
h1
{
width:100%;
filter:glow;
}
Note: Always specify the width of the element if you want to use the filter property.
Header
Different Filters
Note: Some of the Filter properties will not work unless the background-color property is set to transparent!
alpha opacity Allows you to set the opacity of the element filter:alpha(opacity=20,
finishopacity finishopacity=100, style=1,
style startx=0,
startx starty=0, finishx=140,
starty finishy=270)
finishx
finishy
invert none Renders the element in its reverse color and filter:invert;
brightness values
DHTML Tutorial
DHTML Tutorial
xray none Renders the element in black and white with filter:xray;
reverse color and brightness values
Background
background-attachment:scroll
background-attachment:fixed
The background does not move when the rest of the page scrolls.
More Examples
Visibility
How to make an element invisible. Do you want the element to show or not?
DHTML Tutorial
DHTML Tutorial
Z-index
Z-index can be used to place an element "behind" another element, using Z-index priority. 10
Z-index
Check that the elements now have changed their Z-index priority.
DHTML Tutorial
DHTML Tutorial
Cursors
Change the style of the mouse cursor with CSS. 11
Filters
Change the style of your headings using the filter property.
Filters on Images
The filter property can also be used on images, here are some filter examples which look good on images.
DHTML Tutorial
DHTML Tutorial
12
DHTML Tutorial
DHTML Tutorial
Watermark
A background picture that does not move when the rest of the page is scrolling. 13
Examples
Note: Most of the DHTML examples require IE 4.0+, Netscape 7+, or Opera 7+!
Element access
How to access an element and change the style.
Attribute change
How to access an image element and change the "src" attribute.
DHTML Tutorial
DHTML Tutorial
innerHTML
How to access and change the innerHTML of an element. 14
The element must have an id attribute defined and a scripting language is needed. JavaScript is the most
browser compatible scripting language, so we use JavaScript.
<html>
<body>
<h1 id="header">My header</h1>
<script type="text/javascript">
document.getElementById('header').style.color="red";
</script>
</body>
</html>
The script changes the color of the header element, and produces this output.
My header
Examples
Note: Most of the DHTML examples require IE 4.0+, Netscape 7+, or Opera 7+!
onclick
Turn on the light! How you can change an image when you click on it, and back to the original image when
you click on it again.
DHTML Tutorial
DHTML Tutorial
15
DHTML Tutorial
DHTML Tutorial
onload
Displays an alert box when the page has finished loading.
Event handlers
With an event handler you can do something with an element when an event occurs: when the user clicks an
element, when the page loads, when a form is submitted, etc.
The example above defines a header that turns red when a user clicks on it.
You can also add a script in the head section of the page and then call the function from the event handler:
<html>
<head>
<script type="text/javascript">
function changecolor()
DHTML Tutorial
DHTML Tutorial
{
document.getElementById('header').style.color="red"; 17
}
</script>
</head>
<body>
<h1 id="header" onclick="changecolor()">
Click on this text</h1>
</body>
</html>
a page is finished loading. Note: In Netscape this event occurs during the
onload
loading of a page!
DHTML Tutorial
DHTML Tutorial
DHTML Summary
This tutorial has taught you how to use DHTML to create more dynamic and interactive Web sites.
You have learned how to use the combination of HTML, CSS and JavaScript to animate HTML documents.
For more information on DHTML, please look at our DHTML examples and our DHTML reference.
The next step is to learn about the HTML DOM and ASP.
HTML DOM
The HTML DOM defines a standard way for accessing and manipulating HTML documents.
The HTML DOM is platform and language independent and can be used by any programming language like
Java, JavaScript, and VBScript.
If you want to learn more about the DOM, please visit our HTML DOM tutorial.
ASP
While scripts in an HTML file are executed on the client (in the browser), scripts in an ASP file are executed
on the server.
With ASP you can dynamically edit, change or add any content of a Web page, respond to data submitted
from HTML forms, access any data or databases and return the results to a browser, customize a Web page
to make it more useful for individual users.
Since ASP files are returned as plain HTML, they can be viewed in any browser.
If you want to learn more about ASP, please visit our ASP tutorial.
With JavaScript you can access and manipulate all of the HTML DOM objects.
The HTML DOM is a W3C standard and it is an abbreviation for the Document Object Model for HTML.
DHTML Tutorial
DHTML Tutorial
The HTML DOM defines a standard set of objects for HTML, and a standard way to access and manipulate
HTML documents. 19
All HTML elements, along with their containing text and attributes, can be accessed through the DOM. The
contents can be modified or deleted, and new elements can be created.
The HTML DOM is platform and language independent. It can be used by any programming language like
Java, JavaScript, and VBScript.
Follow the links below to learn more about how to access and manipulate each DOM object with JavaScript:
Object Description
Applet Represents an HTML applet element. The applet element is used to place
executable content on a page
Button Represents a push button on an HTML form. For each instance of an HTML <input
type="button"> tag on an HTML form, a Button object is created
Checkbox Represents a checkbox on an HTML form. For each instance of an HTML <input
type="checkbox"> tag on an HTML form, a Checkbox object is created
Event Represents the state of an event, such as the element in which the event
occurred, the state of the keyboard keys, the location of the mouse, and the state
of the mouse buttons
FileUpload For each instance of an HTML <input type="file"> tag on a form, a FileUpload
object is created
Form Forms are used to prompt users for input. Represents an HTML form element
Hidden Represents a hidden field on an HTML form. For each instance of an HTML <input
type="hidden"> tag on a form, a Hidden object is created
History A predefined object which can be accessed through the history property of the
Window object. This object consists of an array of URLs. These URLs are all the
URLs the user has visited within a browser window
DHTML Tutorial
DHTML Tutorial
20
Link Represents an HTML link element. The link element can only be used within the
<head> tag
Option Represents an option in a selection list on an HTML form. For each instance of an
HTML <option> tag in a selection list on a form, an Option object is created
Password Represents a password field on an HTML form. For each instance of an HTML
<input type="password"> tag on a form, a Password object is created
Radio Represents radio buttons on an HTML form. For each instance of an HTML <input
type="radio"> tag on a form, a Radio object is created
Reset Represents a reset button on an HTML form. For each instance of an HTML <input
type="reset"> tag on a form, a Reset object is created
Select Represents a selection list on an HTML form. For each instance of an HTML
<select> tag on a form, a Select object is created
Style Represents an individual style statement. This object can be accessed from the
document or from the elements to which that style is applied
Submit Represents a submit button on an HTML form. For each instance of an HTML
<input type="submit"> tag on a form, a Submit object is created
Text Represents a text field on an HTML form. For each instance of an HTML <input
type="text"> tag on a form, a Text object is created
DHTML Tutorial