Using CSS instead of <strong /> HTML tag

Problem

I know that search engine bots pay attention to bold texts on the page, which are strong HTML tags. But do they still recognize if we use font-weight:bold instead of strong tag?

Is the HTML strong tag equivalent to font-weight:bold; for SEO?

Problem courtesy of: Ilham

Solution

Last time I checked, most search engines do not factor CSS into rankings.

However, certain semantic tags such as h1 and so on do factor in.

Of course, it all depends on what else is on the page.

Aside

I did a casual search on Google and found some discussion about hidden text, which is a tangent to your question but may be of interest:

http://www.youtube.com/watch?feature=player_embedded&v=UpK1VGJN4XY

Solution courtesy of: Marc Audet

Discussion

You can't expect all search engines to be bullet-proof, so the answer is, not all of them. What you can do is use CSS to ensure that search engines like Google and Yahoo understand which words are important, without having to annoy your readers:

<p>This sentence contains several 
<strong>keywords</strong> of 
<em>significant importance</em>.

Append it with a new “SEO” CSS class:

<p>This sentence contains several 
<strong class="seo">keywords</strong> of 
<em class="seo">significant importance</em>.

And then write a simple CSS rule like this:

em.seo, strong.seo {
    font-weight: normal;
    font-style: normal; }

This CSS will prevent strong and em tags from being bold-faced or italicized on the screen while still allowing search engines to recognize the significance of those tags.

Source: http://www.cssnewbie.com/4-ways-css-can-improve-your-seo/

Edit: However, as suggested by the commenters below, be aware that SEs may recognize your low tricks. You should first consider a read to this link before starting with hacks, and do it at your own risk.

Discussion courtesy of: マルちゃん だよ

This recipe can be found in it's original form on Stack Over Flow.