You are here: Home / Dog Blog / Archives

Bad Tags

Monday 1 December, 2003 ( 6:00PM GMT)

The font tag'Bad Tags' is a new addition to the HTML Intermediate Guide, which covers some of the "Bad, nasty, downright ugly little things that belong to outdated HTML standards, random proprietary nonsense that only half-work in one sub-version of one browser or tags that have simply been superseded by newer tags".

The reason I decided that there was a need for this page was because, as Ian Lloyd correctly predicted, I have had feedback along the lines of "I put together this web page using HTML Dog... I couldn't quite figure out how to do x so I used the y tag that I found at some random place on the web". The 'y tag' being a tag that has a better, more efficient and reliable alternative.

The 'Bad Tags' page will hopefully serve as a lighthouse, warning authors of rocks that could damage their web pages.

Comments

Comment 1

What is tabular data?

So said [Anon] on Tuesday 2 December, 2003 at 2:24AM GMT.

Comment 2

Tabular data is the kind of data you would expect to see in a table. A calendar can be tabular data for example, with each row showing a week and each column a day.

So said Patrick on Tuesday 2 December, 2003 at 9:37AM GMT.

Comment 3

dog says> 1. strong is better than b because it conveys meaning rather than presentation.
bill says> b is better that strong because is it strictly presentational, separating presentation from content.
dog says> 2. By 'Zen Buddhist kind of thing etc.' I mean that it is not just a theory - it is a practical advantage. I don't agree that layout without tables is more simple than with CSS.
bill says> I agree, if we can now pretend that IE 4, NN4, and various incarnations of Mac and linux browsers do not matter. Sometimes the half-support of CSS layout is worse than none.

2. By 'Zen Buddhist kind of thing etc.' I mean that it is not just a
theory - it is a practical advantage. I don't agree that layout without
tables is more simple than with CSS. I think that those used to
designing with tables find it easier simply because that is what they
are used to.

So said Bill Creswell on Tuesday 2 December, 2003 at 3:33PM GMT.

Comment 4

and b is shorter!

So said Bill on Tuesday 2 December, 2003 at 3:33PM GMT.

Comment 5

Heh heh. Yes, 'b' is indeed shorter. And I completely agree that it is completely presentational, but that's the point. HTML should be used for content and CSS for presentation. So if all you want to do is make something bold, you should use CSS. But if you want to place emphasis on an element you should use 'em' (emphasis) or 'strong' (strong emphasis) which applies meaning. Using 'b' doesn't separate content (HTML) from presentation (CSS) because there would be presentation in the HTML.

In terms of CSS layout over layout with tables, as I say in the article, "Tables will indeed allow better presentational control over the CSS inept Netscape 4, but its users are miniscule in number and decreasing while those to whom table-layout would be a great disadvantage - mobile device users - grow in number. The advantages of table-free design mentioned above far outweigh the disadvantages and should result in pages that, although minimally styled to a minority, retain full functionality in all browsers."

So said Patrick on Tuesday 2 December, 2003 at 3:52PM GMT.

Comment 6

http://ww2.netpenny.net/~bcreswell/Layouts/index.html
Simple CSS Layouts, Easy - Intuitive, Flexible and Very Breakable.

So said Bill Creswell on Tuesday 2 December, 2003 at 4:15PM GMT.

Comment 7

Take a look at http://www.htmldog.com/guides/cssadvanced/layout/ to see how to make CSS layouts.

There are many, many sites out there (including this one) that do not rely on tables for layout and do not break.

So said Patrick on Tuesday 2 December, 2003 at 4:23PM GMT.

Comment 8

Nice overview on some still too frequent HTML elements/attributes that crop up (no thanks to the WYSIWYGs).

However, I gotta take issue with your judgement on the HR. Like some at the W3C, I agree it's been misnamed (a name change to "separator" has been proposed for XHTML 2 [http://www.w3.org/TR/xhtml2/mod-block-text.html#sec_8.6 ]) -- despite its default rendering -- but it does have a valid use in semantically-structured documents.

That is, the HR can be used to provide a section break when a DIV is not appropriate. Think of a long narrative piece: an HR is the perfect element to separate long sections of prose; it implies a break but doesn't create a new branch of the DOM tree as the use of various DIVs would.

So said Craig Saila on Tuesday 2 December, 2003 at 6:12PM GMT.

Comment 9

My opinion on the matter of purely-presentational tags:

Every browser treats 'strong' and 'b' the same way (to make the text bold), and 'em' and 'i' the same way (to make the text italic), so really the pairs are synonyms. It would be as wrong for a browser or a page to say (in CSS) "em { font-weight: bold; }" as it would for it to say "i { font-weight: bold; }" - both are denying the meaning of the tags, and neither is a greater sin than the other. So: 'b' and strong are synonymous, as are 'em' and 'i', and the only reason to prefer one is to save bytes. Therefore, responsible design requires that you use 'b' and 'i' and save 10 bytes and 2 bytes per usage. Arguments that one is more "semantic" than the other are meaningless, and miss the point that, in this case, the "meaning" of the tags IS the presentation, nothing more.

So said Eric TF Bat on Wednesday 3 December, 2003 at 12:33AM GMT.

Comment 10

A few quick responses:

Craig makes a good point about the hr tag. It's necessity is perhaps debatable. It's definitely not the right thing to call it though.

Regarding the comment by Eric, 'i' (italic) is presentational - it doesn't add any meaning to anything. 'em' (emphasis) applies meaning. "em { font-weight: bold; }" isn't denying the meaning of the tag because you can choose to visually present emphasis any which you choose. There is no universal way to define the presentation of 'emphasis' and CSS can't add meaning to anything - it can only apply meaningless presentation.

(By the way, I'll look in to adding a 'preview' button to the blog - it does appear to be necessary.)

So said Patrick on Wednesday 3 December, 2003 at 1:04AM GMT.

Comment 11

I can see the concept of viewing HR's as presentational but personally I use the for non-CSS users - it breaks up the text a little, demarking (say) navigation from content. Whilst I don't know what my users think, I personally think it helps when viewing plain-text versions to have a few small things like that - it instantly draws the eye - especially as I have navigation at the bottom of the content for accessibility reasons.

My sites use structured markup throughout so the demarkation of content is usually there via the header tags, but I feel that non-CSS sometimes need a little more to ensure they get a good experience.

Saying that, I tend to use HRs sparingly :)

So said Andrew Bowden on Wednesday 3 December, 2003 at 8:30PM GMT.

Comment 12

Ok, considering the %lt;i> tag: It's customary to mark titles of works and such with italics. This is not presentation, it is meaning, you're setting off a title, much as you would with quotes for an article name. However, we don't want a screen reader to emphasize the name, that would sound stupid. So, in this case using the italic tag is meaningful. I agree that if you are decorating text for viual effect it should be in the CSS.

So said Neal on Thursday 4 December, 2003 at 6:36AM GMT.

Comment 13

Well, I disagree, Neal. The <i> tag is just presentational. To mark up a book or film title, I use the <cite> element, which is generally rendered in italics by graphical browsers. And I have no problem with the <hr> tag. It does add structure, clearly delineating one section from another where using <h#> tags is inappropriate.

So said LintHuman on Thursday 4 December, 2003 at 9:22AM GMT.

Comment 14

Neal - if you need to do things like that, use CITE or EM (depending on the context). EM is emphasis, and all you're doing is emphasising the name or title so it works.

Plus EM is usually displayed in italics anyway (the point being of using EM is that it doesn't have to be!)

So said Andrew Bowden on Thursday 4 December, 2003 at 5:17PM GMT.

Comment 15

I see the point. I could use <cite>, but in rethinking it does make sense to use <em>. My worry was the text reader would EMPHASIZE the title unduly. I suppose it might as well be, it's the spoken version of italics, right?

So said Neal on Friday 5 December, 2003 at 10:19AM GMT.

Comment 16

Maybe this is interesting:
- http://annevankesteren.nl/archives/2003/09/03/b-svg-and-accessibility
- http://annevankesteren.nl/archives/2003/09/04/markup-is-all-about-personal-opinions

Not meant as spam BTW ;-)

I think you should say that the 'name' attribute is _required_ when you are using it within forms. It's the only valid way you can recieve and manipulate the submitted data.

So said Anne on Saturday 6 December, 2003 at 10:27AM GMT.

Comment 17

Some good points there, but some questionable ones too.

Italics are not only used for emphasis, they are used for book titles (like Neal says) where a <cite> tag is probably more appropriate. There are other instances where italics are appropriate: eg, when referring to the name of a ship - "He went down with the <i>Titanic</i>". The name's not being emphasised, or cited, we're just following a convention. I suppose you could use something like <span class="shipname"> but I can't see what this adds.

I don't follow your (or the W3C's) reasoning with <menu>. If a non ordered list is used to implement a menu, wouldn't it make semantic sense to mark it up as a <menu>? "As an 'unordered list' is more general, ul stands tall over menu's corpse." Isn't <i> "more general" that <emp> or <cite> ?

align is still a useful attribute in many cases, eg. <table align="center"> will center-align the table but leave the alignment of its contents alone. Irritating that there's no simple way of doing this in CSS (and why the HELL isn't there a css equivalent of the valign attribute! )

-- Chris

PS. Could you make this textarea a bit taller, I hate trying to compose a message through a letter box.
PPS. How about automatically converting all < and > characters typed in into &lt; and &gt;?

So said Chris Hunt on Tuesday 9 December, 2003 at 10:50AM GMT.

Comment 18

Very interesting and enlightening for someone like me who is only just starting to get into CSS (yes I used to use tables for layout). But talking about bad attributes, what about accesskey? After reading this page I pressed ALT+A to get my Favorites menu and instead ended up on a link to "About HTML Dog". What category of user could possibly find this useful and how does such a user discover what access keys are available?

So said Joe on Saturday 13 December, 2003 at 2:58PM GMT.

Comment 19

I wrote my extremely newbie-filled HTML site back in 1997, and I made plenty of mistakes. You would be horrified. I just have a question about this comment: "The target attribute is not a valid attribute. Praise be. It was daft anyway." In my links, I made liberal use of target="_top" in order to break out of any frames that the user might have had before navigating to my site. What is the accepted solution to this now? Or do we assume that if the user navigated to our site within a frame, then our site should stay in that frame for them?

So said Novac on Tuesday 16 December, 2003 at 1:15AM GMT.

Comment 20

WORST ARTICLE EVER!!!
I got so mad reading this I had to get up and play my piano. I knew you were stupid but this is ridiculous. Some should open up a virus on your ass.

So said [Anon] on Friday 2 January, 2004 at 6:29AM GMT.

Comment 21

WORST COMMENT EVER!!!

I'm attempting to help others and progress web design issues and one of the intentions of this web log is to encourage intelligent debate. Constructive criticism is helpful - to me and to others. I would like to know where I have apparently gone wrong because then I can address it, either by correcting myself or by trying to explain my opinion.

I wouldn't wish a virus on anyone's ass - it sounds quite painful - but if you were to explain what has upset you so much I will address it.

So said Patrick on Friday 2 January, 2004 at 11:35AM GMT.

Comment 22

I shall reveal myself.
I am the great Dante, founder of DCScript.
The CENTER tag is ok. I will not stop using that. Nothing is wrong with any of the above tags, except MENU and MARQUEE.
Text-align is for alignment of text inside an element not aligning an element itself, moron.
Headers are ok, but I get tired of how much space they take up, being block level elements. My site's header uses spans. The articles use H2s and H3s.
Frames? Frames are very complicated but they are good for large sites. You just wrote that to spite PPK. You know he's the best.
I refuse to follow anything you said. I'm working on a project to prove that standards don't matter. I call it Dante's Hell for Standards. Coming soon on dcscript.vze.com.
To hell with you and the W3C and their "standards". It's my webpage; I do what I want.
Moded.

So said Dante Evans on Friday 2 January, 2004 at 8:18PM GMT.

Comment 23

Dante, thank you for 'revealing' yourself and your opinions. I disagree with pretty much everything you say and I stand by everything I wrote in the article (although I admit, following the above discussions, I am beginning to question the usage of the hr tag).

I have never written anything to spite anyone and I don't think anyone is 'the best' - I respect everyone who takes the effort to help others, put forward opinions, encourage debate and further web design and I look forward to your 'Hell for Standards' contribution.

It is my belief after many years of experience that web standards and the separation of content from presentation lead to lighter, faster, more manageable, cross-compatible and accessible web pages and the 'Bad Tags' article is one of my small contributions to explaining why.

So said Patrick on Saturday 3 January, 2004 at 1:01PM GMT.

Comment 24

But who's gonna want to replace short and sweet tags like B and I?
Example: This article is very <b>bad<b>.
If you had your way, everyone would be afraid of your Hitler-esque standards and use:
This is article is very <span class="bold">bad</span>
Why do this? I'm not gonna do that. B and I were meant to be exceptions. Explain to me how example 2 makes things easier.
Hey you could be worse! You could have those downright silly "Valid XHTML" or "Valid CSS" tags on your pages.
Still I don't like being told how to think. I use FONT tags all over the place to spite people like you.

So said Dante Evans on Saturday 3 January, 2004 at 7:32PM GMT.

Comment 25

Oh now I feel so bad for yelling at St. Patrick, patron saint of standards.
How the hell would you replace HR? Images take time to load. I think you don't like these because they're too easy.
"Let's see. The HR is nice and loads quickly. TOO EASY. I'll use images".
I don't know what you're smokin. Your stench of failed web developer is making me woozy. I will discontinue this argument. What's the point in arguing, especially when we both know that I'm right.
I'll be at jstimes.vze.com. I will be happy to address a problem. I will yet all you if it's about your pussy standards. And I can be pretty mean, especially when I haven't had my nap.

So said (The Great) Dante Evans on Sunday 4 January, 2004 at 4:07AM GMT.

Comment 26

Using <b> for 'bold', implies no emphasis, only presentation. If you use <b> for emphasis, what happens if you redesign and decide your 'emphasis' should actually not be bold, but rather italic and non-bold? Your HTML with <b> tags all over the place would be completely misleading and meaningless.

Using <span class="bold"> is misunderstanding CSS. If you simply want to apply style without implying emphasis, it makes complete sense to use <span class="something"> where "something" doesn't imply presentation, because you could change that CSS to be something other than bold. 'bold', 'blue', 'underline' etc. are not good class names because the whole point is that the presentation of those classes could be anything.

Are you new to CSS? The CSS Beginner's Guide ( http://www.htmldog.com/guides/cssbeginner/ ) might be of help.

Of course, if you want something to stand out in the middle of text, then this implies you want to apply emphasis anyway, so a better tag to use would be <em> or <strong>, such as '<p>Your attitude is very <em>childish</em>.</p>' and this could be displayed in italics, bold or however you choose - there is no steadfast way of presenting emphasis.

This all makes more sense when you look at (X)HTML as XML and the philosophy of delivering meaningful content that can be handled differently in multiple situations.

Some of the best, most highly respected web designers in the business use web standards. There's a reason for this - there are real practical benefits.

But if your approach to web design techniques is based on personal reasons, such as spite as opposed to real practical reasons with practical benefits, then that's your prerogative. I'm not forcing anything on anyone.

So said Patrick on Sunday 4 January, 2004 at 4:56PM GMT.

Comment 27

Just a note to say I've deleted a few comments because things were getting a little off track and out of hand.

So said Patrick on Thursday 8 January, 2004 at 3:54PM GMT.

Comment 28

Whichever tags you do add - pay attention that if you create bold or strong text or even italic text - it not only stands out to the reade but that google gives it more importance - so be warned! (your page might get de-ranked for using other words other than those you had wanted to.)

So said Slot Buddy on Friday 9 January, 2004 at 10:31AM GMT.

Comment 29

Hi Patrick, I see you've been busy, but do you have a response for my question I asked on 16 December? I was curious to see your answer.

So said Novac on Wednesday 14 January, 2004 at 10:54PM GMT.

Comment 30

Novac:

Me? Busy? Na. I sit around all day drinking beer, playing computer games and watching Australian soaps on TV.
Not really.
Well, sometimes...

ANYway... My comment about the taget attribute was made with opening new windows in mind - a debate that I'll steer clear of to keep to the point.

Firstly, I suppose if you are using frames then you might want to use that attribute. As I explained in the Bad Tags article though, frames are the devil's work and also not Strict XHTML, so those attributes are not invalid in that context.

Secondly, in terms of your pages in other people's framesets, I would have to suggest that you should trust what the frame-loving designer is trying to do. Now I know that this is difficult, what with that designer using such unholy instruments, but it's a usability thing - you don't know how those sites are displaying your pages in their web pages and it could actually be beneficial to you. By taking away another websites intended functionality, you may be inadvertantly confusing the hell out of the user.

I don't think it's something to worry about to be honest. Just from casual browsing you can see that the use of frames has greatly declined over recent years, and even those who do use frames tend not to include others web pages within them.

So said Patrick on Friday 16 January, 2004 at 1:16PM GMT.

Comment 31

I think the way round the framed site problem is through JavaScript. If your site has been framed, you want to fix it automatically.

So said Matt Fletcher on Friday 16 January, 2004 at 11:20PM GMT.

Comment 32

Heh, Dante...

Patrick makes a great point on choosing id and class values. Don't let the value describe the presentation. What if all the .blue elements suddenly had to be red? Your code would be confusing and hard to figure out. Instead, use values that describe the type of content.

The hr element is quite useful - I'm using it on a page where there are divs which visually separate content. If someone cannot view the divs, the hr is there. I've styled them to be positioned off the page so they don't appear in the styled page, but they are there as page dividers for readers of the unstyled content.

So said Neal on Monday 19 January, 2004 at 11:47AM GMT.

Comment 33

You know, not EVERYONE who looks at webpages views the code. We're not all web developers. I'm sure no one will care. How many people who use the internet are web developers? Not many, relatively.

So said Dante Evans on Tuesday 20 January, 2004 at 12:09AM GMT.

Comment 34

Your article is a good one for people who are new to web standards. Well done.

I can understand your blanket dismissal of frames, because they're nearly always misused in ways that make sites worse. However, my view is that just like tables, there are still appropriate uses for frames... see one example on my site here: http://babbage.tv/dblog/2003/travel/cambridge/

As far as I'm aware, there isn't any other practical way of achieving the effect of this page without using frames. The object tag should do this, according to the spec, but isn't supported properly in any good browser I know of, let alone in IE. Sure, frames aren't very suitable for aural browsers, but then this is a travel photo album so is not really content designed for visually impaired surfers...

So said duncan on Friday 6 February, 2004 at 7:15PM GMT.

Comment 35

I'm new to CSS and am trying to figure out how to retool without frames and tables. The guides on this site have helped a lot, but...

I've always used frames so that I can have site nav links coded in only one document. I don't want to have to update nav links on every page of my site.

So far I haven't seen anything proposed for that use by those who don't like frames. What is the alternative for frameless design?

What am I missing?

So said David on Wednesday 25 February, 2004 at 3:37PM GMT.

Comment 36

very nice article. I try to streamline my HTML at the moment. The main problem will be to get away from table layout. Separating content from presentation forces you to think much more about what you actually doing. e.g. not having the possibility to throw in another <br> or <font> tag, because you didn't think about the structure and the meaning.

So said Chris on Friday 27 February, 2004 at 11:14AM GMT.

Comment 37

David - You can use *includes* for what you want to do. It goes a bit beyond the realms of HTML, but basically, you would have a separate HTML file for your navigation and then in the pages you would have a simple line of code that pulls in that file and essentially makes it part of every page. Then you only need to change the one navigation file. HTML Dog, which has 100's of pages uses this method.

You can do it a number of ways, with ASP, SSI or PHP for example. You will need to check which of these your server supports, but just to do includes is quite easy with any of these and you should find plenty of tutorials with a quick Google search.

So said Patrick on Friday 27 February, 2004 at 12:17PM GMT.

Comment 38

But the back button won't work as well if you bust frames with JS. You'll have to quickly double click. That's why I do:
var x = document.getElementsByTagName("A");
for (var i=0;i<x.length;i++) {
x[i].target="_top";
}

I'm posting from Firebird now, and to be honest I hate it.

So said Dante Evans on Sunday 29 February, 2004 at 5:32AM GMT.

Comment 39

Hi Patrick,

I forgot to mention that my host doesn't support SSI or PHP or any of those goodies. You know, the web host as agent of evil model.

While I'm shopping for a new host, I'm considering two options. The first is using the object tag to pull in my navigation html. The other option is to use an external javascript that would write the html for my navigation. I'm not really sure yet which is the lesser evil in terms of apearance and useability.

The object tag would look pretty good if IE didn't put a scroll bar on it. Maybe better to live with that though than run the risk that my visitors may have javascript turned off and have no navigation at all!

So said David on Tuesday 2 March, 2004 at 10:29PM GMT.

Comment 40

Hi,
I want to argue in favour of the target attribute of the a tag, which you say: "It's invalid and it's inaccessible."

I thought it was very fascist of the w3 to deprecate the entire attribute, just to try and persuade people not to open new browser windows.

There are occassions where it is necessary to use the target attribute - for example, when you are forced to use a content management system that uses frames (I'm thinking Blackboard here). It is poor usability and copyright practice to load other people's sites into your own frameset - therefore whenever I link to external sites I have to use the target attribute to break out of the frames.

the page, and the site are fantastic BTW.
cheers

So said Stuey on Wednesday 26 May, 2004 at 7:21AM GMT.

Comment 41

Another thing that I want to get off my chest about HTML standards, and here seems like a good place.

How come alt, border, width and height are not valid attributes of the <input type="image" name="submit"> tag. After all this is an image so it should have the height and width and alt text defined right?

And if you take border="0" out of the tag, then your lovely graphical submit button will have an ugly border in Netscape 4.

I'll have a site that doesn't validate thanks, if the standards are wrong.

cheers

So said Stuey on Wednesday 26 May, 2004 at 7:30AM GMT.

Comment 42

Here's a poser:

Should pre be considered a presentational element? What possible semantic meaning can it carry? If it is, as I see it, non-semantic and presentational only, why doesn't it get the "bad tag" moniker?

One of the pitfalls of avoiding all presentational markup is that in non-CSS renderings usability can be compromised. Certain markup (exs. height and width atts for img, border att for table, hr, pre, etc.) which has presentational purpose should be included in the HTML because the CSS alternatives are suggestions which some browsers (by design or user preference) will not accept.

So, if the CSS-free and presentational-HTML-free rendering exhibits problems in usability, some HTML presentation may be necessary to ensure the page works (and no more than that, incidentally). These presentational elements can be styled away in the CSS version if they do not match your desired CSS rendering, but for compatibility and usability with non-CSS environments we need to utilize such markup as necessary.

So said Neal on Tuesday 1 June, 2004 at 3:21PM GMT.

Comment 43

Obviously for the standards to become internet-wide, or even required in any way, would take YEARS and no one is forcing anyone to update their pages to be standards compliant. I've been designing web pages since I taught myself HMTL 2.0 back around 1996 and I can tell you, I welcome the standards. I have come to literally hate tables for anything but the tabular data they were meant for. I live the simplicity of using CSS to specify my fonts and controlling presentation. I've had quite enough of using the FONT tag, which is usually repeated many times on a page, because if you want to change the font, you have to edit every single FONT tag on a page. Its too time consuming and counter-productive. I can change an entire site's font with ONE change to a CSS file - halleujah !

I do, however take a bit of an issue with the TARGET tag thing. I understand, to a degree, why its now 'forbidden', but I dont' always want users whisked away to another site and away from my pages just to investigate a link I've posted. There are times I want them to stay right where they are, but be able to view whatever it is I've linked to that's not on my site. I may not be a 'normal' web user, but I really hate having to repeatedly hit my back button, I find it quite annoying and tedious. So, for most links, I'll right-click and open the link in a new window that way. I'm sure I'm a minority in that practice.

As for breaking out of frames - folks - there's a meta tag to accomplish that and it requires no scripting at all :) I have to agree with Patrick - frames are the work of the devil, never could stand 'em.

Standards are great - except that the majority browser - MS IE, is NOT standards compliant and forces designers to use hacks to make IE behave the way it SHOULD if it were compliant. Personally, I despise IE and do not use it at home at all, I use Firefox and I love it. I develop my css web pages now using Firefox/Mozilla to preview the design the way its SUPPOSED to be, then make whatever minor adjustments necessary to make them work in IE. I make very little effort to accomodate NS 4.7, sorry. IMO, those people need to come into the 21st century and update their browsers. I'll make some concessions for Mac users stuck with IE 5 and I've yet to have any complaints about my pages breaking in Mac browsers.

People like your resident detractor can rail against the tide all they'd like - eventually they'll be swept away, their tag protests going unnoticed as people click off their heavy, slow-loading pages in search of content elsewhere.

Great site -- big help - keep up the great work :) !!


So said Diane on Wednesday 30 June, 2004 at 3:52PM GMT.

Comment 44

I like the idea (but not the current implementation) of frames.

One of the reasons that I really like frames is that the content does not reload everytime the user clicks on a link to another page within the same site. I find having the same content reloading repeatedly very visually annoying. On the other hand, this is less of an annoyance these days with faster internet connections than with dialup.

Also, frames make multiple column layouts display very inconsistantly across browsers. I still am not able to find a three column layout using just cascading style sheets that does not result in content spilling out into the next column (especially in Internet Explorer - no surprise there).

I think it is a shame that frames have been so maligned since they first appeared. It seems that this has resulted in them ceasing to be developed further with additional features. Features such as frames scrolling simultaneously would be very useful. Consider how handy the splitter function is in spreadsheets and other programs. Similar robust functionality could be implemented in webpages with frames. Why should webpages by restricted from having such a common graphical user interface element? The only reason seems to be the anti-frames dogma.

I do understand and agree about the problems inherent with the use of frames as they currently are on webpages, but the potential enhancements that could be made to frames make me dissapointed that they are regarded with such disdain.

On the other hand, I can imagine that the frame like functionality could be implemented with enhancements to tags.

So said Al Kwarizmi on Tuesday 6 July, 2004 at 2:19AM GMT.

Comment 45

Hmm... the code for this site stripped out an important part of the last sentance.

it should have read "...with enchancements to &ltdiv&gt tags."

So said Al Kwarizmi on Tuesday 6 July, 2004 at 2:23AM GMT.

Comment 46

Hi, take a look at my schools website. So terrible it's funny :-)

http://www.allsaints.sheffield.sch.uk/

We have a great time laughing at our art teacher that designed the website.

So said Andy on Saturday 31 July, 2004 at 5:12AM GMT.

Comment 47

What about using frames in conjunction with javascript to keep functions open (to speed up loading) also if like me you use images for links, if they aren't in a frame each and every page of the site takes a lot longer to load. I'll always go with the quickest page load no matter how fast new PC's are half the people viewing the site may have old computers or may have lots of new programs open using up the memory. The other reason (like I need one) is storing variables for a single user for the time they are on the site, without the problems of cookies which a lot of people have switched off.

So said [Anon] on Saturday 14 August, 2004 at 5:38PM GMT.

Comment 48

oh and Andy your schools site might not be great but. I took a look at your site and I don't think you've earn't the right to critisize others designs with that.

So said [Anon] on Saturday 14 August, 2004 at 5:49PM GMT.

Comment 49

I agree with the previous poster on the target attribute. For a page with tons of links out of the site, I usually use the target attribute to open the links into new windows, but to note I do write in brackets next to the link "new window" and I do warn my visitors that all links on the link page will open in new windows. It is almost imperative for a link page to use the target attribute, otherwise how can people go through the entire list of links without having to hit 'back' all the time?

Since the target attribute is being deprecated, would there be any maybe CSS-method to do the same effect of opening a new window? I mean, short of using Javascript, which I'm sure is an even worse solution??

So said Lili on Wednesday 6 April, 2005 at 5:41PM GMT.

Comment 50

Ah frames((flashback)), fossils of the internet, reminiscent of a far more complicated and time consuming era...But I love how they still make Mozilla look like CHUMPS! Firefox just can't handle frames(another reason why I dislike firefox)because believe it or not, the naive little school-girlies still use frames because they think it looks good. And so, as a penalty I will petition the congress to pass a law that will enstate the death penalty to all those caught using...erm, frames that is.

Remmy

So said Remmy on Friday 10 June, 2005 at 7:11AM GMT.

Comment 51

I think that giving the user the option of choosing to right-click (or whichever alternative) to open the link in a new window is better than assuming the user will want to have however many 'new windows' open on their desktop. Especially if using IE! At least Firefox uses Tabs, but i know that I for one hate having ## number of new IE windows open cluttering my desktop and making the bottom menu hard to use - especially if i am using other software as well, particularly coding. Its also annoying even when trying to Alt+Tab through all the screens on Windows XP.

So said dezhen on Tuesday 14 June, 2005 at 12:34AM GMT.

Comment 52

The comments on this page are very helpful for me. As someone who is as intimate with HTML code as the rest of you, we welcome the standards which make the pages lighter and load simply. Standards also mean editors like Dreamweaver are going to behave more logically than randomly inserting tags where it thinks it should. I'm currently working for a university which MANDATES compatibility back to Netscape 4.7. So you think we're out of the blue, not really. I don't know the stats but I can say a fair percentage of educational computers which are in high demand use are still old Mac sys 8 & 9 or Windows 2000 (god forbid 98) and are running early '00s software.

So yes the University-wide websites all use tables to format the template. The template itself is designed in tables. However style sheets are utilized throughout to control font and such. I think the CSS element of displaying elements without tables is not entirely spectacular in my opinion. While I've been going XHTML on all my other websites/clients, I still see somehow that a tabled website is very necessary especially for people who use Dreamweaver and such. Tables tend to default sizes whereas CSS demands specific positioning. if someone aligns incorrectly its so tedious to be calculating pixel lengths to reposition many images. Thus I'd leave it up to the browsers to "push and shove" so to speak on merely simple txt and graphic sites.

I agree we shouldn't make everyone comply and convert, we should be developing our new features with the new language so we can gradually move away.

So said Eric James on Wednesday 31 August, 2005 at 5:03PM GMT.

Comment 53

I know I'm considered a heretic by current web "experts" but I am a proponent of the judicious use of frames. I fully understand, agree with, and abhor all the negatives ascribed to them. These are all very real issues. However, as many have said, the user experience is critical. Until an alternative method is created for static navigation elements, I continue to believe that frames, with all their limitations, are far superior to having to "hunt" for navigational elements. Everyone is entitled to their opinion. Your site here is a great one. But I believe it would be even better, easier to use, if the top logo and, especially, the left side navigational elements were static. I just don't like having to, or forcing my users to, scroll to find the next place they might want to go. I would love to anhialate frames and all their associated issues from my web sites. As soon as a viable alternative is presented, I will do that. Until then - I will leverage the capabilities of the vast majority of browsers (and, therefore, users) at the admitted expense of that tiny minority. I, too, long for true cross-platform consistency; long for a full isolation of presntation from content -- but until they exist in reality - we have to deal with and leverage that which IS reality.

Thanks for the disussion forum.

So said Pat on Monday 12 September, 2005 at 9:20PM GMT.

Comment 54

This page talks so much about "bad tags"; some being bad because CSS is the new way to add properties to text. But what if one doesn't know, or doesn't have the time to learn CSS?

So said Dan on Monday 31 October, 2005 at 12:41AM GMT.

Comment 55

I just got to add here... Who really cares… You, and how many others? - "About Standard". Certainly not -Joe Public- surfing the Net? I hold a degree in Computer Science; Programming, Graphic Communication. I've been working on-line since the early 90's... Believe it or not, the W3C doesn't call the shots; and neither does the Government, with it’s retro-active (NOT pro-active) politically correct - what about the disadvantaged? - act. It’s all about votes, for them… and power and money…
I challenge you to do a fair search of W3C member Web sites. The *majority* are not complaint! Example: I accidentally discovered your Forum while browsing with NN4 for
tools to incorporate in design and presentation for client projects, many of which still use NN4, IE4, etc… Standards are not making my job easier… I’ve been using CSS since its conception, and yes, I agree, it’s great! But IT shall only be fully realized in a "wet-dream", and not anytime soon--not in the next 5 or more years, conservatively.
The majority rule (MONEY rules). Where do you fit? Sure… I use XHTML 1.0 Strict on many Web sites. But when I need MAXIMUM exposure, I "mix ’n match" HTML and CSS. At least I know that ALL of my visitors she and interact with my work on-line; but can you say the same? Do you actually earn a living on-line?

(Ps. I am disabled. But I don’t expect the WORLD to accommodate my disadvantage at their expense… and I really don’t care if some dweeb bitched because he can’t navigate my Web site from his bloody Cell Phone. Enough said. Thanks…)

AJWesley - Contributor, Earthweb

So said MadFlash on Wednesday 7 December, 2005 at 11:24PM GMT.

Comment 56

For the em element, something I like to do in case I find myself using it incorrectly, is apply this CSS:
em:before {
content: '_';
}
em:after {
content: '_';
}
So, one post I made in my blog, I used the em element incorrectly, but when I applied my new style, I realized it was bad and changed it.

So said Tom on Wednesday 14 December, 2005 at 1:43AM GMT.

Comment 57

If anyone wnats to know where the web is headed, it's toward CSS and meaningful markup.
http://en.wikipedia.org/wiki/XHTML_2.0#Example

In XHTML 2.0 and HTML 5.0, presentational elements are eliminated entirely.

Frames are going to be fixed and redubbed XFrames.

A new list will come called a navigation list (nl), thus deprecating using unordered and (God forbid) definition lists for navigation.

The IMG element will be deprecated in favour of OBJECT.

The heading elements will be replaced with a single H element, whose level is defined via nested SECTIONs.

The most notable one in there is the one about presentational elements. They're gone. Only the ones with semantic meaning stay.

As for compatibility with NS4 and IE3, it's stupid. If backwards-compatibility were a higher priority than progress, we'd all be sitting in caves wondering if rocks were edible.

Sincerely,
Tom Ingram

So said Tom on Tuesday 10 January, 2006 at 1:58AM GMT.

Comment 58

What if you have a rectangular-design that are gradient. How would you do that without tables? I haven't read through all pages yet but I can't seem to think how that would work.

Example:
http://www.multiplayer.se/secret/
And ignore the content of the site. I didn't design that part of the html. >__<

So said Stan64 on Friday 17 March, 2006 at 5:50AM GMT.

Comment 59

This comments page is very hard to read. A large blue "Comment" lies right on top of the text and obscures every entry. I prefer legibility over compliance, myself.

I didn't much like the "bad tags" page at all. There is probably a good argument to be made for why we should do the same old stuff in a different way, but that page didn't make it. I couldn't care less about "page weight", especially in the days of cheap memory. When every logic gate was wired in by hand, and core memory was little magnetic rings, every bit was important. But those days are long gone. Now I want something a typical browser can render properly and a typical reader can find useful. I also want to be able to move my pages to another host when a current host is sold to some big company and service goes south, and I don't want to dick around with whether my new host supports php the same way - if I can confine functionality to the html pages, moving is easy.

Here it is, 2006, and I'm still no CSS groupie. The notion that "font-weight: bold" is somehow leaner 'n meaner than "b" is just plain silly. And I think we need a bit more rationalization that one form of markup adds "meaning" and another doesn't, when both just change a typeface. Sure, CSS can help make all your pages look the same. But I don't want all my pages to look the same. I lay out my web pages differently, depending on what's on them - form follows function, and function varies.

And what, really, is wrong with tables? The table isn't smart enough to know that it doesn't contain numbers - it manages to work fine no matter what's in a cell. If it works, and works well, what is the rationale for a claim that it shouldn't be used?

The billions of web pages which already exist are not going to be rewritten at the W3C's whim. Therefore future browsers must be able to read the old "bad" tags or nobody will use them. Given that, "deprecated" is hardly a useful concept.

So said w white on Tuesday 23 May, 2006 at 2:20PM GMT.

Comment 60

I'm quite surprised to find relatively recent comments lambasting this article with little justification other than "I don't wanna change the way I do things." When the article was written, I think there was a need for it. I had hoped there wasn't any more.

There are thousands of resources, along with this one, that outline in so many ways why web standards work and, to be more specific, why a number of tags are "bad."

I just can't be arsed to counter-argue some of the arguments (again). If you don't like it, that's fine - do things your way. If you think a non-web standards way is better though, you're simply as wrong as a particularly wrong thing with Wrong syndrome. Just take a look at what the experts are not only saying (and trying to help you), but doing.

So said Patrick on Wednesday 9 August, 2006 at 11:03AM GMT.

Comment 61

Due to an inordinate amount of spam, I'm afraid I've had to shut down the comments on this post.

So said Patrick on Wednesday 9 August, 2006 at 11:04AM GMT.

See Also

^ Top

SiteGround: Fast, reliable, recommended hosting.