Previous |
---|
Physical Layout of Internet ContentRegardless of which technology you use to create your Web content, in the end, it is HTML that is displayed by the browser. JavaScript code does not render unless it returns information that the browserís HTML engine interprets and turns into displayable information.For media specialists, designers and programmers, this is an important base point from which to begin understanding how to treat HTML as an Object-Oriented Structure. For media specialists and designers, awareness of how to treat content as objects will influence naming conventions, layout, and interactivity features. HTML is unavoidable for the programmer, as all JavaScript is eventually transformed into markup before it is presented. Thus, it is important for coders to be as familiar with its syntax as with JavaScriptís.
| ||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||
HTML as an Object-Oriented StructureHTML, as a structured language, has a natural Object-Oriented Structure, or Model, that is visible in its element order and content. The HTML page begins with the <HTML> tag and ends with the </HTML> tag. It has two parts; either a HEAD and BODY; or a HEAD and FRAMESET. These also have opening and closing tags. At the highest level, the HTML document can be looked at as an object with three properties, with a stipulation that if it has a BODY property, it cannot have a FRAMESET property, and vice-versa.In the diagram below, the HTML page is the largest object. Above it is a HEAD, and beneath it to the left is the BODY and its constituent parts; on the right is the FRAMESET and its constituent parts. Notice beneath the principal objects, additional hierarchies are visible. The FRAMESET contains two frames and another frameset, which also contains two frames. Each frame has a body with its own structure. Beneath the BODY are DIV elements. These do not have to be present, but they add to interactive control of the page that will be used later. Beneath the level of the DIV are tables, which in turn contain elements such as images, text, form elements, applets, and others.
| ||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||
Relevant HTML ElementsWhen you use JavaScript to create HTML pages and dynamically alter content, you will only be able to affect or read those things that the language is able to recognise. JavaScript does not recognise the <STRONG> tag or the <EM> tag (although these are available to Internet Explorer), which makes them uninteresting from an interactive design viewpoint. Our focus is on those HTML elements that are essential for cross-browser interactive design.The HTML elements included are based on their ability to be integrated into the Object-Oriented development approach that we are developing. Elements such as DL and UL which are very useful and will be used here are not reviewed, as they do not impact the approach taken here. Some, such as <TABLE> and <BR> have particularly useful functions in OO design, even though they are not part of the browser DOM. Discussion of style sheets and CSS properties will be presented at the end of the chapter. Suffice it to say that most HTML elements that concern fonts, including H1 through H6, EM, A, TD,TH, and many others give you the ability to include a STYLE attribute with an inline style description; a CLASS or ID attribute referencing a defined style; an element style definition affecting all like elements; or any combination thereof. The elements below are presented in the order of their availability to browsers. When designing for one or more browsers, it is important to know which tags (or objects, for our uses) are available. No platform-specific structures will be presented or used. CD-ROM-like functionality is achievable in version 4 browsers using HTML and JavaScript. Interactive animation, dragging-and-dropping, scrolling backgrounds, and more will be revealed, building on cross-browser code foundations.
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Anchor/LinkThe Anchor or Link element was the defining feature of the first HTML efforts. The Hyper in HyperText Markup Language refers to hyperlinking, a term coined in the 1970s, and referring to the connecting of one document to another. When HTML was created, university members were wanting to exchange text and image information that had contextual links between them. Thus, HTML, with its <A> tag was born.There are three primary uses here for the A element. First, as is commonly used, to link to a point in the same document or another document. Second, as a locally defined point to be made available to other A elements. Finally, as a means of executing JavaScript, which will be its primary purpose here.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Line BreaksLine breaks, as achieved through the BR and P elements, have been around since the dawn of HTML. For the earliest cross-browser design, these were used in conjunction with TD elements to ensure that an acceptable display was available to browsers that did not support tables. Now, some newer browsers include a line space within the table cell where before there were none, making this technique less predictable.There are other instances where they can be of use for browser-specific content where the table tag is supported. In Communicator, for instance, any text string contained within an element that has a text-align setting in its CLASS attribute description has a carriage return after the closing tag similar to the H1 through H6 heading tags.
Line breaks (and their neighbor, the horizontal rule) provide unique positioning functionality to the designer. Although style sheets and new positioning features have made great advances for typographic and layout control, these elements will continue to have an importance for a number of reasons that will be made clear later in the text.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Form and Form ElementsForm elements represent one of the primary manners that users interact with the Internet application. Entering information, selecting an option from a pull down menu, and selecting or deselecting a checkbox all involve transferring information from the user through the form element to the application.Unlike contents of other HTML elements, such as H1 through H6 heading tags, most form elements can be manipulated during runtime in all browsers. This makes them important to the Object-Oriented Content Developer for interactive uses; as user input or feedback. A shopping cart may provide user-defined color settings that they offer through a drop-down selection list. A Mario-type board game may have a text input box that tells you which level youíre on. All form elements are contained within the FORM element. Its attributes and descriptions are provided below:
For many uses, the ACTION, ENCTYPE, METHOD, and TARGET attributes can be omitted. Many client-side applications, such as games and tree-like navigation systems, use Forms that are only for interaction at the browser. In these cases, the purpose of the form is to supply information to the Internet application that will be used without accessing a server. The Name attribute is not required, but is recommended, especially for larger projects. The form elements are INPUT, OPTION, SELECT, and TEXTAREA. There are nine types of INPUT elements, and two types of SELECT elements. The nine elements below are referred to using the INPUT tag. These are:
In addition, there are also the OPTION, SELECT, and TEXTAREA elements.
In the following table, an example of each form element is provided. In several instances, multiple examples are provided to demonstrate the different type of form element settings. These should be able to be copied and pasted into pages with minimal edits. The convention used here is one where quotation marks are avoided, as these will be used later in JavaScript documents. When HTML is deconstructed for JavaScript, quotation marks have to be managed in one fashion or another. Unlike XML, which forces quotation marks, I prefer the other alternative; none where possible. No JavaScript is built into this page, but later it will be demonstrated how the different form elements can pass information to each other, and for other uses in Internet applications, using JavaScript. Updating the Hidden field, for instance, would require some programming on the client or server side.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
FontThe FONT element is almost as old as the form element, available since before JavaScriptís introduction. Initially, only the size attribute was available, then the face, and finally with style sheets, it is scheduled for deprecation. The World Wide Web Consortium (W3C), opines that all HTML elements now have typographic descriptions and no longer require a FONT element expressly for that purpose. Nonetheless, for many authors looking to maintain reverse compatibility, the usage of the element extends the reach of their content. All browsers are still supporting the FONT element.When dynamically generating HTML pages through JavaScript, there are often opportunities to use the FONT element and STYLE descriptions for browser-specific content. If you are looking to include browser, operating system, version, or other type of client-specific testing for a page, make sure you include the property in an object description of the page. For instance, in a page with an image, a heading, and descriptive text, we now include the abstract property "typographicSpecification." Later, we will look how to define these properties, but for the moment, it is important to be aware that a page that is considered as an object may have properties in addition to visible or otherwise obvious ones.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
TableTables, while not having a counterpart in the JavaScript Document Object Model, are invaluable when it comes to positioning content. Even though Frames, Divs, and style sheets have arrived to handle many content positioning functions, the Table is the most typical manner of arranging content in the HTML page. To achieve similar effects through frames or divs would be difficult and cumbersome. Tables are used to give layout structure to the contents of frames and divs.There are four primary elements associated with tables: the TABLE, TR, TH, and TD. Another element, CAPTION, is also available, but not advised due to browser inconsistencies. Other elements are browser-specific and will not be included here. Tables are built one row at a time; having all cells accounted for in a row definition before moving to the next. The TH, or Table Heading, is generally center-aligned and bolded; while the TD, or Table Definition, is generally left-aligned and in plain text. To affect typography within a Table, use the type of cell (TD or TH) as the name of the style that you are defining, as in the example below.
Notice that the TH element has additional descriptions that are added to the first line of its style description. Below are the TABLE elements and attributes.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
FrameThe Frame was introduced with Navigator 2.0 in late 1995. It enables you to have multiple HTML documents displayed at the same time within a single window. Each frame is like its own window, with a head, and either a body or frameset within it. If you need to keep part of your application stationary, say, a banner ad or a navigation element, then you can keep it in a separate frame from scrollable content.Layers and Frames can be used together, but layers cannot move across frames. Containing tables within frames will help you to place your content exactly within its window. There are some browser bugs, especially Netscape, when it comes to pixel-perfect positioning within frames. These will be discussed below with some design workarounds.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Plugin/ActiveXThe Plugin and ActiveX controls have been around since versions 2 and 3 of Navigator and Explorer, respectively. Both provide the browser with additional functionality and permit interaction with a number of file types. The Plugin uses the <EMBED> tag and the ActiveX control uses the <OBJECT> tag.Since version 3 browsers, scripting has been available for both. Netscape uses Java as an intermediary between the Plugin technology and the browser, which it names LiveConnect. The attributes and properties available depend on the vendor that provides the Plugin technology. Microsoft ported its OLE (Object Linking and Embedding) technology and brought it to the Web as ActiveX. It has a fairly standardized set of attributes and properties available to all Objects. In a cross-browser approach, both require some fudging to reconcile incompatabilities or inconsistencies in coding syntax. There are several variations, but hopefully, the same source file is used in each, and differences between the two are smoothed over through HTML and JavaScript design. Below is an example of a Shockwave for Director file that uses both HTML elements.
It is recommended that the OBJECT element contain the EMBED element to avoid browser inconsistencies. In the example, you see how Internet Explorer uses the PARAM element to contain further description for the ActiveX control. Netscape does the same through attributes of the EMBED element. For most technologies, there are specific variable names that must be used on IE and Communicator; while some have flexibility. You should consult the developer documentation of technologies that you are looking to integrate into your application design. There is a list of Plugin/ActiveX developer sites in the Appendix. When working with Plugins and ActiveX Controls in an Object-Oriented Development method, it is important to become aware of what properties and methods are built into them by their vendors. In addition to these built-in properties, these elements should be considered like any other, meaning that we can add properties to them as it suits our design needs. This will be revisited in the examples of using Object-Oriented programming with non-standard file types. Below are typical attributes of the EMBED, OBJECT, and PARAM elements. The IE attributes for the EMBED element are not included, as these will be handled by the OBJECT element.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
JavaThe APPLET element has been around since version 2 and 3 of Navigator and Explorer, respectively, and is used to contain a file written with Java. Conceptually similar to the Plugin or ActiveX control, Java extends the functionality of the browser through the APPLET element. Java is a language that is intended to run on any operating system. Depending on the level of security, Java can give developers access to the same system resources that programmers in conventional languages, like C++ or VisualBasic, have. An application written in Java does not require a browser to run in.In the browser, however, the APPLET is, as it sounds, a small application, and has access to a subset of system resources. Java is an Object-Oriented language, but that does not mean that the way that it is included in HTML pages is done in an Object-Oriented manner. For the Java programmer, the world ends at the frame of the Applet. There might be some interapplet communication, or some network communication, but it is rare for the Java programmer to stand back and see the Applet within the Object-Oriented setting of the HTML document. At best, it might occassionally be considered within the Browser DOM, but this does not suggest that it is considered within an Object-Oriented Design Structure. To look at HTML elements from an OO Design Approach, all elements need to be accounted for in one way or another. It is not only the Applet, or the Plugin that matters. What function do the interface images have? What else besides the Applet or Plugin content is visible or unseen? Where does the document lie within the site navigation structure? Many times, the Applet or Plugin may be considered the Main Body area of the document, but this should be an explicit design feature, not just a result of placement. Once the Applet is integrated into an OO design of the page, its functionality will be more natural and seamless. It may share properties with image rollover text or the status bar. It will likely be inserted into a page dynamically as will be looked at in the section on Reconstructing HTML. Its name and properties may be influenced by user interaction outside the Applet, but perhaps not requiring a network transaction. The Applet is open to JavaScript for two-way communication which makes local application development relatively straightforward. This will be explored later in the Frameworks section. Following are the attributes of the Applet Element.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ImageThe Image element has been around since Navigator 3 and Internet Explorer 3.02. Because Microsoft enabled an update for the JScript engine in Internet Explorer 3, it is not always possible to see if the Image is supported by the browser version alone. If you are designing for version 4 browsers and later, this is not an issue.With the image element, interactive designers can change image content during runtime. This can support mouseover and mouseout image swapping, as well as animation, using JavaScript's built-in timing mechanisms (presented in the following section). The image is one of the most powerful elements available in cross-browser content design. It is a lightweight method of changing the screen content without refreshing an entire frame or layer. The Image element attributes are presented in the following table:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Map and AreaThe Map and Area elements are used to provide hotspots for an image. An image map can be client-side or server-side; with the Map and Area elements, it is client-side. The Map element contains one or more Area elements which associate portions of the image with individual HREF instructions.The Image map has been available since version 3 browsers. Often, images are cut up so that in addition to providing individual referencing, the image can be swapped during rollover and rollout events. In this case, an image map would not be used, in favour of individual images. For Object-Oriented Programming purposes, the Map and Area elements are not very exposed to the Browser DOM. When we look at how to create HTML dynamically, it will become clear how we can create our own objects to help out with image mapping. Rather than think of how we do it, we'll ask what kind of thing do we need to achieve it. The Map and Area elements and their attributes are presented below:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LayersLayers, which use the LAYER element on Communicator, or the DIV element in both browsers, are individually defined rectangular areas that provide a method of assigning typographic and positioning values to content. The Style and ID attributes are available for many elements, but with the cross-browser DIV element, they empower developers to create compelling interactive content. At the level of the DIV, positioning properties can be set during runtime, meaning that animations, scrolling backgrounds, and more are possible.In the next chapter, differences between the naming of properties and methods available to the two browsers will be reconciled through JavaScript. From an HTML point of view, it's much easier. We will only be concerned with the DIV element, realising that it is the only cross-browser solution. Everything that you need to do with the Layers array in Netscape is still available using Netscape's syntax, the only difference is that the Layer contents are contained within the DIV element. The term "Layer" still makes sense for conceptual treatment. It has a z-index property, can be individually moved or animated, and has other features that make the term natural. When the term is used here, it will refer to contents of DIV elements, unless expressly stated. Among the more interesting style descriptions that the DIV element will use are its coordinate positions, and its clipping rectangle. The latter can be used to create spectacular effects; together with the former, scrolling panaroma animations and transition methods, such as wipe and replace, are achievable. These will be given considerable attention later. The DIV element and its attributes are illustrated below:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Style SheetsSince the release of version 4 browsers, typographic and positioning properties of elements can be directly set through style descriptions. These affect text, rectangular areas such as tables, and other elements. There are several methods of using Style Sheet descriptions. These are:
Once the style has been defined, it can be accessed using the CLASS or ID attribute of HTML elements, if the style is not set to the element itself. When styles are defined within the <STYLE> element, the style definition has curly braces ({ and })around it. When defined within a STYLE attribute, the style definition is contained within quotation marks. In both cases, the property name is declared, followed by a colon (:), then the value. The name-value combinations are separated by semi-colons (;). Within the <STYLE> element, these can be separated by carriage returns for easier reading (look at the source of this page to see an example). The following elements and attributes are used to work with style sheet properties.
Below is a table containing properties that can be set for all version 4 browsers. Some values may not be supported in all browsers, but the base properties are available in all Mac and PC browser platforms. Not all elements support all properties. Particularly, background and border properties work best with specific usage settings.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Selecting Appropriate Design FrameworksThere are many considerations that a Web developer or development team takes into account when selecting a framed, non-framed, or layer-based design framework. Marketing and content departments may have different views on which approach will have the most overall benefit for the company. Individual HTML pages can each show up in Search Engines, for example. This discourages layer- or frame-based development. This can be mitigated through design arounds that include both the framed HTML document and the containing document in the content design for search engines.The real question should ultimately be determined by the content, and the audience browser capabilities. If your target is 50% version 3 and earlier browsers, moving to a layer-based design framework is not a likely option (unless you can make them all upgrade together, of course). On the content side, there are as many different approaches as there are reasons to support them. The chart below shows a comparison of functional uses of images, tables, layers, and frames.
There are some general guidelines that you can follow as influencing factors regarding your choice of design framework.
These questions and more will be looked at in Chapter 6, once the introductory material has been presented. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Known Browser BugsSome browsers do not support HTML syntax the way that they are supposed to. A short list of bugs is presented below with some tips on how to get around each.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
What to do when only one browser supports your contentIf you have only used what is described in this book and you are looking to design for Netscape or Internet Explorer, the browser should support the content, based on the browser criteria defined. If this is the case, and the implementation is not correctly done, look over your code and reconcile the syntax with what you find here. If you are using Tags or Attributes that you don't see here, you are probably using proprietary syntax.If you are knowingly using syntax that one or more browser(s) coming to your site will not recognise, there are a number of ways to support the 'browser-challenged'. A number of these are based on JavaScript and will be presented in the following chapter. HTML has a few possibilities for browsers to view other content. These are:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|