The parent element should it be a
<div> makes no difference, all are valid parents, and Google will not factor this into the results, why would it?... as said in previous answers, questions, Google cares little about your mark-up, as why should Google? Your visitors don't see your mark-up, they see the end result.
You can read the differences between
<b> as they all play their part for a semantic-web, but play little, to no role in SEO.
They have the same effect on normal web browser rendering engines, but
there is a fundamental difference between them.
As the author writes in a discussion list post:
Think of three different situations:
"Bold" is a style - when you say "bold a word", people basically know
that it means to add more, let's say "ink" around the letters until
they stand out more amongst the rest of the letters.
That, unfortunately, means nothing to a blind person. And on mobile
phones and other PDAs, text is already bold because screen resolution
is very small. You can't bold a bold without screwing something up.
<b> is a style - we know what "bold" is supposed to look like.
<strong> however is an indication of how something should be
understood. "Strong" could (and often does) mean "bold" in a browser,
but it could also mean a lower tone for a speaking program like Jaws
(for blind people). And strong on a Palm Pilot may be an underline
(since you can't bold a bold).
HTML was never meant to be about styles. Do some searches for "Tim
Berners-Lee" and "the semantic web".
<strong> is semantic - it
describes the text it surrounds ("this text should be stronger than
the rest of the text you've displayed") as opposed to describing how
the text it surrounds should be displayed ("this text should be
So ultimately it's
Summarised in a one sentence:
<em> are semantic - they specify that the enclosed text
should be "strong" or "emphasised" in some way, usually bold and
italic, but allow for the actual styling to be controlled via CSS.
Hence these are preferred in modern web pages.