Real World Cross-Browser HTML Development
By Joel Anderson and Chris Kunicki
Few subjects are as widely debated among developers as browser preference. Unfortunately, regardless of your predilection, you most likely build Web sites that require support for both major browsers.
Beginners might assume that this would be an effortless task because both Netscape Navigator and Microsoft Internet Explorer support the HTML standard. However, HTML developers quickly learn that standards are great in principle, but often loosely supported. Developers must learn how each browser renders HTML because they handle various tags in subtly different ways. Often, the discrepancies are so small that they aren't noticeable, but that's not always the case. Let's consider two examples: the <TABLE> tag and using the image type within the <INPUT> tag.
People often forget the closing tag when dealing with nested tables. In Navigator, if you don't properly format a table with an ending </TABLE> tag, the browser will fail to render the whole table. On the other hand, Internet Explorer will still render the table.
Another common problem pops up if you use the <INPUT TYPE="image". . .> tag without BORDER="0", Navigator will draw a border around your table, and Internet Explorer will not. The simple answer is to always use the BORDER="0" parameter, as this will render identically in each browser. These two common issues demonstrate an important principle in cross-browser development: as an HTML developer you should always have IE and Navigator loaded so that you can test your HTML in both.