Easy-to-follow video tutorials help you learn software, creative, and business skills.Become a member
So far in this chapter we've set up the necessary infrastructure for handling a key component of our responsive website, media queries, and retrofitted our Desktop design to look better on our tablet in portrait orientation. Along the way, we also made video sizing responsive. In this lesson, we'll set up the rules for a more radical redesign to fit the smaller screen size for phones. To get a sense of what we're going for, let's take a look at the blog_comp in a phone size screen.
Unlike the tablet screen size icon, the phone screen size icon uses a 480-pixel width. So we'll have to use our Window size menu here in order to choose a 320x480 Smart Phone. As you can see, the header area is completely reshaped, the background image is gone and the navigation is now vertical rather than horizontal. The remainder of the layout has been linearized into a single column, with the main content coming first, followed by what was previously the sidebar, and then the footer.
There is a fair amount of work ahead, about dozen CSS rules in all, so let's get going. As we did with a tablet, we'll build up the CSS from scratch rather than crib from the blog_comp. So with index.php from the blog folder open, I've already discovered the related files, and by using the custom folder feature, restricted the available files to style.css. So let's switch to the roux theme style.css, and let's scroll up to the Phone media query.
The first rule will reduce the overall width for both the body and the outerWrapper div to 310 pixels. Why 310 instead of 320? Well, I like to leave a little room for the inevitable vertical scrollbar, as well as giving a bit of margin, so the site isn't hugging the screen edges, which we can share evenly centering the content through a margin equals zero auto declaration. So we'll enter in our selectors of body, #outerWrapper and then put in our open and closing curly braces and the width property followed by the value of 310 pixels, and then we'll set the margin to 0 auto, which as I said will center the content.
Now it's time to remove the headers background image and set up the brown color in the blogHeader. So .blogHeader, and we'll use the background property to handle both of these chores. First I'll set the color to a value I've already noted down, rgba, and within that, the values (65,64,66, and then the opacity, which I'll have at 1 so that it's fully opaque.
Next we want to deal with the URL, which previously applied our faux column image, and we'll set that to none. So url parenthesis, none, close parenthesis, add a semicolon. Before we take a look and see how the things are going, let's go ahead and whip the navigation into shape. This will take four different rules working from the outside in, all of them using the pageHeader class. So pageHeader nav. We'll set that width to 160 pixels, since that starts after the logo, and we want to get rid of any background.
Next, let's put in our pageHeader ul selector and here we're going to move the unordered list over to the right a little bit by putting in a margin-left property with the value of 40 pixels. That will move it past the logo. Next, pageHeader li for list item. To convert an unordered list which is normally vertical to a horizontal, we use a float-left property.
We want to get rid of that, so we'll enter in float: none. And to separate the various navigation items, we previously had a margin-right value of 25 or 40 pixels, let's reduce that value to 0. Finally, let's adjust the height of the pageHeader anchor tags. So we'll set the line-height property to 25, and that will tighten up the navigation quite a bit. Okay, I am going to go ahead and save my stylesheet and go into Design view.
Now let's go to my Smart Phone size, and there you can see my revised header. I've gotten rid of the background image, and I've converted the unordered list navigation items from horizontal to vertical and brought them a little bit tighter. They still have a rollover effect that fits in nicely with the rest of the site. We're ready to move on to the content area, and since we're linearizing the content in sidebar, we'll toss out that faux column background and reset the width.
The way this page is set up, we also need to change the width of the content area, so we can group these selectors. The selector that held the faux column background image is a content wrap, and we want to address as I said our content area as well. So with those two selectors in play, let's set the background to none and the width to 310 pixels to keep that all uniform. Let's add a little padding to that content area to make it more readable now.
So I'll add 16 pixels to the top and bottom and 10 pixels to left right. Next, let's downscale that really big h1 tag. It was--originally the h1 was set at 2.8 ems, we reduced that to 1.8 ems for the tablet. Now let's go down to 1.4 ems for the phone. All right, let's get a little gratification here, I'll click Refresh and then scroll this down a little bit so we can check out how our content is working.
Looks like we could probably bring down the h2 tags, and everything else is looking okay. Let me see what that h2 tag is right now, so it's at 1.5 em. Yeah, we definitely don't want it bigger than the h1. So I am going to make that content h2, and we'll change that font-size to 1.2 ems, that's nicer.
Time to work on the sidebar, so as we scroll down let's see where we're at now. Well, as you can see, the background color that's seen in both the tablet and desktop versions was provided by--as you recall-- a faux column background graphic, which is now gone, so we're going to need to specify that directly, and while we're at it, let's specify the same width as elsewhere. So the sidebar is contained within a class called widget-area, so widget-area, and we'll set that background color to the same purple that we see everywhere and those values are (168,88,163,1) of course, you could sample this if you wanted to, didn't know what the values were.
And as I said, we also want to bring in the width, and let's make that 310 pixels. Let's Refresh the page and everything is beginning to shape up nicely. Finally, we need to address the footer, and all we need to do is adjust the padding on the footer's columns. So I'll create a new rule footer space and then the class of col for column, and we'll set that padding-left to 20 pixels.
So we'll save our style.css, go to Design view, we could see the footer has shift over, and now we have a nice single column layout now for the phone, and let's go up to our tablet size and our tablet is working nicely, everything visible and in place. And if we go up to full size, that's working as well for a completely responsive WordPress blog design.
Get unlimited access to all courses for just $25/month.Become a member
Access exercise files from a button right under the course name.
Search within course videos and transcripts, and jump right to the results.
Remove icons showing you already watched videos if you want to start over.
Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.
Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.
Your file was successfully uploaded.