What flavour is your HTML?

If you are anything like me, your HTML code is a mish-mash of standard HTML tags, browser specific tags, and whatever else it takes to get your design to look the way you want it to on the majority of browsers. I worry less about what the standards are and more about what is going to get the job done. This often means using a hybrid of HTML code to hack together pages, duplicating code for different browsers and often using JavaScript just to deliver the right layout for the right browser.

If you are anything like me, your HTML code is a mish-mash of standard HTML tags, browser specific tags, and whatever else it takes to get your design to look the way you want it to on the majority of browsers. I worry less about what the standards are and more about what is going to get the job done. This often means using a hybrid of HTML code to hack together pages, duplicating code for different browsers and often using JavaScript just to deliver the right layout for the right browser.

The problem is that, despite the standards, each browser, version and platform works differently even if only slightly so.

The Extensible Markup Language (XML) and Extensible Style Language (XSL) hold the promise of allowing Web designers to separate the display of content from its actual layout. This will, hopefully, free us from many of the worries of the particular quirks of a browser.

However, despite the recent ratification of a stepping stone to that future in the form of XHTML, browsers continue to be "flawed", at least from a standards point of view.

Recognizing that we live in a flawed World Wide Web, the World Wide Web Consortium has introduced three "flavours" of HTML code in the recently revised HTML 4.01 standard. These three flavors allow Web designers to declare what form their HTML will take: strict, transitional or frameset.

So, I am sure you are scratching your head in wonder, how does the browser know what flavor I am using? Simple, you have to place a <!DOCTYPE> tag at the very top of every Web page, before the tag in fact, to the browser what Document Type Definition (DTD) it should use.

HTML 4.0 Strict The strict form of HTML is nothing but the standard tags HTML 4.01 tags. It's rare that you will see any site - even the W3C's own Web site - using this one. The fact is, standards are great, but no Web browser out there follows them 100 per cent. However, if you are really sure of your coding capabilities, place this tag at the top of your page:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

HTML 4.0 Transitional Transitional HTML is what most people are using now. It includes all of the HTML 4.0 tags, but also allows you to include tags and attributes that are either being "depreciated" (ie, eliminated) from the HTML standard or are used only by a specific browser. Unfortunately, due to incompatibilities between different browser types, some of the power of HTML 4.01 will be sacrificed when using transitional HTML. For example, table elements will not be able to inherit styles and font sizes will very more radically.

More than likely you will want to use the transitional <!DOCTYPE> in your HTML code for the foreseeable future, at least until the overwhelming majority of browsers being used are standards compliant. In theory, the transitional <!DOCTYPE> tag should look like this:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

Unfortunately, this version of the tag still causes IE5/Mac (the only browser to currently make use of the <!DOCTYPE>) to act as if this is strict HTML 4.01 code. This can cause your page to display improperly as I learned the first time I fired my own site up with IE5/Mac. The good news is that there is an easy way around this: take the URL out, thus:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

HTML 4.0 Frameset Finally, frames deserve there own <!DOCTYPE> . If your HTML document is a frameset definition, then you want to use this one:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">

Validating your pages and !DOCTYPE switching The fact is, however, if you don't add the <!DOCTYPE> to your Web pages, most Web browsers will never notice. However, if you want to check your HTML code for accuracy, by including the <!DOCTYPE> you can then use the W3C's HTML validator to check your code for "accuracy".

Once you have fixed all of these errors you get a nifty "HTML 4.0" button that you can add to the mass of graphics that are cluttering your page. And now your HTML will work everywhere, right. No, not really. Actually, only a very few people surfing the Web right now with anything close to a standards compliant browser, much to many Web designer's chagrin.

But the times they are a changing.

Although currently the only non-beta browser that actually even notices the <!DOCTYPE> tag is IE5/Mac, Navigator 6 and iCab should also make use of it when they are finally released later this year. These programs will use the <!DOCTYPE> tag to validate pages on the fly, allowing the browser to determine the difference between a backwards compatible page (transitional) and a standardised page (strict). This is known as "doctype switching" and will allow standards based browsers to take advantage of the power of HTML 4.01 when the standards are obeyed while still being able to properly render older Web pages.

Jason Cranford Teague is the author of DHTML For the World Wide Web, available from book stores around the UK. If you have questions, you can find an archive of his column at Webbed Environments or email him at jason@webbedenvironments.com

Life and Style
healthMeet the volunteer users helping to see if the banned drug can help cure depression and addiction
Arts and Entertainment
tvDick Clement and Ian La Frenais are back for the first time in a decade
Life and Style
tech
News
i100
News
Foo Fighters lead man Dave Grohl talks about the band's forthcoming HBO documentary series
people
News
i100
Latest stories from i100
Have you tried new the Independent Digital Edition apps?

Day In a Page

Thousands of teenage girls enduring debilitating illnesses after routine school cancer vaccination

Health fears over school cancer jab

Shock new Freedom of Information figures show how thousands of girls have suffered serious symptoms after routine HPV injection
Fifa President Sepp Blatter warns his opponents: 'I forgive everyone, but I don't forget'

'I forgive everyone, but I don't forget'

Fifa president Sepp Blatter issues defiant warning to opponents
Extreme summer temperatures will soon cause deaths of up to 1,700 more Britons a year, says government report

Weather warning

Extreme summer temperatures will soon cause deaths of up to 1,700 more Britons a year, says government report
LSD: Speaking to volunteer users of the drug as trials get underway to see if it cures depression and addiction

High hopes for LSD

Meet the volunteer users helping to see if it cures depression and addiction
Why the cost of parenting has become so expensive

Why the cost of parenting has become so expensive

Today's pre-school child costs £35,000, according to Aviva. And that's but the tip of an iceberg, says DJ Taylor
Fifa corruption: The officials are caught in the web of US legal imperialism - where double standards don't get in the way

Caught in the web of legal imperialism

The Fifa officials ensnared by America's extraterritorial authority are only the latest examples of this fearsome power, says Rupert Cornwell
Bruce Robinson: Creator of Withnail and I on his new book about Jack the Ripper

'Jack the Ripper has accrued a heroic aura. But I'm going after the bastard'

The deaths of London prostitutes are commonly pinned on a toff in a top hat. But Bruce Robinson, creator of Withnail and I, has a new theory about the killer's identity
Fifa presidential election: What is the best way to see off Sepp Blatter and end this farce?

Michael Calvin's Last Word

What is the best way to see off Sepp Blatter and end this farce?
Mediterranean migrant crisis: 'If Europe thinks bombing boats will stop smuggling, it will not. We will defend ourselves,' says Tripoli PM

Exclusive interview with Tripoli PM Khalifa al-Ghweil

'If Europe thinks bombing boats will stop smuggling, it will not. We will defend ourselves'
Raymond Chandler's Los Angeles: How the author foretold the Californian water crisis

Raymond Chandler's Los Angeles

How the author foretold the Californian water crisis
Chinese artist who posted funny image of President Xi Jinping facing five years in prison as authorities crackdown on dissent in the arts

Art attack

Chinese artist who posted funny image of President Xi Jinping facing five years in prison
Marc Jacobs is putting Cher in the limelight as the face of his latest campaign

Cher is the new face of Marc Jacobs

Alexander Fury explains why designers are turning to august stars to front their lines
Parents of six-year-old who beat leukaemia plan to climb Ben Nevis for cancer charity

'I'm climbing Ben Nevis for my daughter'

Karen Attwood's young daughter Yasmin beat cancer. Now her family is about to take on a new challenge - scaling Ben Nevis to help other children
10 best wedding gift ideas

It's that time of year again... 10 best wedding gift ideas

Forget that fancy toaster, we've gone off-list to find memorable gifts that will last a lifetime
Paul Scholes column: With the Premier League over for another year, here are my end of season awards

Paul Scholes column

With the Premier League over for another year, here are my end of season awards