Advanced content layout in drupal
What you're asking about is usually referred to as "theming", and it is a huge subject.

I suggest you read up on "starter themes", which are Drupal theme projects that are specifically designed for the type of flexibility you want.

As you can see, there are several of these. One that is both popular, well-documented and well-supported is Zen.  Getting a grip on Zen takes some effort (it seems both useless and bone-ugly out of the box).  But Zen, together with one of the avialable grid frameworks (Zen Grids, 960.gs, Gridset App) gives tremendous flexibility.  It is well worth the effort to get to grips with.