I’ve seen so many websites putting their logo as background of <a> in the header. I found no reason to hide it so. You should put the logo as <img> because,

  1. If css is disabled, no logo in a website?
  2. Search engines give priority for <img> tags than background image. Wont it be cool to list your logo in Google images search ?
  3. There are so many people using mobile web now a days. Don’t we want to show our logo to them ?
  4. Screen readers can read alt text. And if it says “image, company logo” you can identify it as logo. What if it just say ” Company name ” ?
  5. Do you really want to hide your logo ?

No. no.. you don’t have to check logo of this blog . It is just text :)