Thank you, Connie!
Solved!
Of course, it was CSS-file! It started from Eric Meyer's reset for HTML 4. And here's the key to my problem. It assigns font-weight:inherit to <strong> tag, but doesn't mention <b> tag at all. That's why the tags behaved different and the solution is either remove <strong> selector from the reset or define strong {font-weight:;} somewhere else below.
Here's the beginning of the CSS-file.
/* =====================reset by Eric Meyer==================== */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-weight: inherit; That' why I got stuck!
font-style: inherit;
font-size: 100%;
font-family: inherit;
vertical-align: baseline;
}