Responsive web design is no doubt a big thing now. If you still not familiar with responsive design, check out the list of responsive sites that I recently posted. To newbies, responsive design might sound a bit complicated, but it is actually simpler than you think. To help you quickly get started with responsive design, I've put together a quick tutorial. I promise you can learn about the basic logic of responsive design and media queries in 3 steps (assuming you have the basic CSS knowledge).
Step 1. Meta Tag (view demo)
Most mobile browsers scale HTML pages to a wide viewport width so it fits on the screen. You can use the viewport meta tag to reset this. The viewport tag below tells the browser to use the device width as the viewport width and disable the initial scale. Include this meta tag in the <head>.
<meta name="viewport" content="width=device-width, initial-scale=1.0">
Internet Explorer 8 or older doesn't support media query. You can use media-queries.js or respond.js to add media query support in IE.
<!--[if lt IE 9]>
<script src="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script>
<![endif]-->
Step 2. HTML Structure
In this example, I have a basic page layout with a header, content container, sidebar, and a footer. The header has a fixed height 180px, content container is 600px wide and sidebar is 300px wide.
Step 3. Media Queries
CSS3 media query is the trick for responsive design. It is like writing if conditions to tell the browser how to render the page for specified viewport width.
The following set of rules will be in effect if the viewport width is 980px or less. Basically, I set all the container width from pixel value to percentage value so the containers will become fluid.
Then for viewport 700px or less, specify the #content and #sidebar to auto width and remove the float so they will display as full width.
For 480px or less (mobile screen), reset the #header height to auto, change the h1 font size to 24px and hide the #sidebar.
You can write as many media query as you like. I've only shown 3 media queries in my demo. The purpose of the media queries is to apply different CSS rules to achieve different layouts for specified viewport width. The media queries can be in the same stylesheet or in a separate file.
Conclusion
This tutorial is intended to show you the basics of responsive design. If you want more in-depth tutorial, check out my previous tutorial: Responsive Design With Media Queries.
Great explanation, this is great.
Training for Web Design, HTML5, CSS3, jQuery,SEO and Blogging
99% Practical Training in.. Chandigarh
more:
webtechlearning.com
Awesome explanation. This is what makes bloggers like you so crucial to our web development endeavors. Thanks!
Responsive design is all the rage now.
I use a Genesis child theme and the guys over at Studiopress are really getting into it.
Nice to have a crystal clear explanation.
nowadays! wp is powerful blogging platform, is it also need these type of optimization?
really its ourstanding tips, really helpfull with this article, expecting more from this topic..
Great explanation, i must try this in my project.
Article really helpfull and usefull, well done!
thank you.. this tuts really helpful..
I’ve been browsing the web for design basics. i must say, i’ve got some really great sites this included! Thanks for the tips man, you don’t know how much greens your saving me. Hope for more in the future.
Awesome thank you for posting
Thank you….very useful tutorial.
There must be a better solution rather than having to re-write all CSS on every website?
Don’t mobile and pad browsers have auto-scaling anyway?
That’s the beauty of media-queries. You can have base CSS that handles the elements to be consistent across all the platforms. (fonts, colours etc)
And, then target the elements that have to change to better suit that size (such as alter the layout, maybe increase overall font-size).
Saves building a separate mobile version of the site.
Yeah..! This actually helps us in creating responsive designs. Thanks for your concern.
This article is right on time for a client that is having problems with multiple devices and their existing website. Time for an upgrade!
Hello! Responsive web design is a trend of 2011. Will it be a trend of 2012?
layout in design is necessary
Great article! Thanks for the advice, greatly appreciated!
Really interesting article, thanks for posting
Yup good explanation, thanks
hehe, i do not usually follow template designs, feels like they are a limit on my mind:)