The <b> is dead, long live the <b>!
2 weeks ago, I've started attending a software academy, which has a "HTML Starter" course as a mandatory one. It's a course that I have to cover over, despite the fact, that I'm an HTML coder for some years now.
In the start, I was quite sure that I'll be somehow bored, but still - there will be some valuable bits of information. And not surprisingly - I found one.
In the lecture, there was a list of available formatting HTML tags, containing <strong> and <b>. Before I drop off this list as obsolete, I went to w3c for a check, and found that <b> and <i> are still there in the specs, with a side note of "use as a last available solution".
But it sounds a little awkward for a standardizing organization. So I did a little brain work to see why these tags could be useful. And found it in the semantic and SEO area.
As an HTML content creator, one should always keep in mind what keywords should be stronger. On the other hand, when working with a client's text, there are situations, where the bold text should not be present in the keywords saturation. So what we do is either alter the bold text, or <span> it. That's the "no- <b>" way. A way I'm walking for a long time.
But, when you can have a separated tag for a bold text, a tag that can be accessed by various of 3rd party tools like css, js, back-end and so on, why use an un-defined wrapper like the span, than a close-to-the-mind, valid and more over - shorter tag like the <b>!
So yes, I will try and use the <b> and <i> tags, no matter the fact that these are old as the world. When doing a text format with HTML, but only text-format - <b> comes to the rescue!
Written by Nickey Kolev
Related protips
4 Responses
I'm not sure I understand what you're saying here. Are you saying that <b>
tags are more SEO oriented? I was under the impression that the <strong>
tag was in fact MORE semantic and given heavier pull in search algorithms.
Do you have a source claiming otherwise?
@sergiotapia your impression is right. What I mean is that <b> could be used only for text formatting (when needed), without pulling a heavier semantic meaning for the engines. When you want to put a heavier meaning on a set of keywords - strong'em!
The same applies for <em> and <i> as well
I agree. I use <b></code> tags for a more specific styling purpose. When I have 2 - 3 <span></code> tags back to back, it makes it easier to not have to assign a class to every single one of them and I don't need to use an H tag, <b></code> comes in handy still. Also, it allows me to do different styling with much less worry about a client using that tag in normal text and getting some funky styling that was unintended.
Looking at semantics, I think the problem is still in the w3c's (and here's w3schools as well) description of "use as a last available option".
That's a little misleading, because in an article in w3c's site, there's a clear explanation of the differences between <b></code> and <strong></code> in terms of semantic emphasize of the content and still - <b></code> is considered a "bad" tag. In the past years devs seems to follow the thumb rule that <b></code> is replaced by <strong></code>, which seems to be incorrect. I was falling into that group as well, but now I think I'm gonna use <b></code> as NOT "the last available option".
p.s. I'm getting the impression, that in the last drafts of w3c, some of the rules (like b and strong, but also the self-closing tags) are defined to somehow clear the mistakes of devs. Since the introduction of xhtml's self-closing tags as mandatory and <strong></code>'s usage, I'm seeing a lot of html code by various devs, who just don't follow these rules. And here comes the easy way from w3c - cover these mistakes by altering definitions...