Work with Drupal long enough and you'll soon discover the bits of HTML/CSS markup which have been hardcoded into Drupal core and/or it's contributed modules. This markup which is ready to go 'out of the box' is a very large part of what makes it so easy to for people who use Drupal to launch a functional and reasonably appealing looking site, very quickly - without having to become and HTML/CSS gurus themselves. Which is, of course, awesome.
For something gained, something is given, however. In this case a bit of flexibility. That's right - now that you've worked up enough gumption to try and get your Drupal installation to do a backwards somersault with a twist (e.g., highly customized theming of Drupal's output) the same hardcoded markup that made your life easier is likely to make it a bit messier if not just outright harder. It is at this point, typically, that the different kinds of "overrides" are recommended. In this post we'll take a quick look at common override techniques, as well as a less common, but potentially useful and easier, third option: