At this point we want to take the Static Layout
http://thomaswallace.net/demos/responsive/static/
and convert it to something more responsive.
For Example the grid we created in class used the following dimensions
.container{
width:960px;
margin: 20px auto;
}
header[role="banner"], footer[role="contentinfo"]{
width:920px;
float:left;
background:pink;
margin-left:20px;
}
#content{
width:638px;
margin-left:20px;
float:left;
background:blue;
}
aside{
width:262px;
float:left;
background:red;
margin-left:20px;
}
To convert this into something more responsive we need to use the following formula.
Target / Context = Result
Let’s work through this rule by rule.
.container
While we can certainly declare a percentage width for our containing element, I prefer to maintain some control over width so rather than declare in percentages for our containing element we are going to use the max-width css property. This allows us maintain limits on the overall width but at the same time we can still scale down as needed.
#content
The fixed width dimensions of this element was 638px to convert this to percentages the math looks like so…
638px (target) / 960px (context)= 0.664583333
Slide the Decimal two places to the right and we have our first percentage width element!
New Width = 66.4583%
We also have a 20px margin to consider. Lets convert that to percentages as well.
20px (target) / 960px (context) = 0.0208333333
Slide the Decimal two places to the right.
New Width = 2.08333333%
Go ahead and convert the rest using this formula. When you are done you should have something like this…
.container {
max-width: 960px;
}
#content {
width: 66.4583%;
margin-left: 2.083333%;
}
aside {
width: 27.2916667%;
margin-left: 2.083333%;
}
header[role="banner"], footer[role="contentinfo"] {
width: 95.83333%;
margin-left: 2.083333%;
}
