Over the last couple of weeks I have been looking into how I can ensure my existing Drupal 6 and 7 sites display it's content in a mobile friendly way. There are currently many ways of achieving this and the Drupal community as a whole are still working on many different projects and of course I imagine when the forth coming Drupal 8 series is released mobile will be at the very heart of the new Drupal core.
Until then I have decided on switching the current default theme to an adaptive theme when a mobile device is detected. I have accomplished this using the following modules and themes:
1) http://drupal.org/project/browscap/ - The browscap module effectively detects which browser the visitor is using and stores this information in the database.
2) http://drupal.org/project/mobile_switch - Simple theme switch for mobile devices, detected by browscap. The mobile switch module integrates nicely with Browscap and works right out of the box. You simply install and enable the module as normal and tell mobile switch which theme you wish to use for mobile devices.
3) http://drupal.org/project/browscap_block - Browscap Block adds visibility options to block configuration settings to allow you hide or show blocks in mobile devices. Currently I have not used this module but I felt it was worth adding to this guide.
4) http://drupal.org/project/adaptivetheme - This is a Drupal adaptive theme which allows you to configure many aspects of the apperance of your site. These include desktop layouts and mobile layouts. This can all be done inside the themes settings page.
5) http://drupal.org/project/sky - I then decided upon the Drupal Sky theme. This is mainly because I currently use the Drupal 6 theme on a number of my sites and is also a sub theme of the Adaptivetheme
After enabling the Sky theme as the sites mobile theme using mobile switch, you can then set up the appearance of the Sky theme independently from the sites default theme.