New Feature: Playlist Center! Pick a topic and let our playlists guide the way.

Start learning with our library of video tutorials taught by experts. Get started

WordPress: Building Responsive Themes
Illustration by

Using CSS to finalize the Masonry layout


From:

WordPress: Building Responsive Themes

with Morten Rand-Hendriksen

Video: Using CSS to finalize the Masonry layout

So far, we've hooked jQuery Masonry into our WordPress theme; we've made it interact with the front page; but even so, this front page still doesn't look like that nice tiling effect that we want. That's because the last step in the process of adding masonry to your WordPress theme is to apply styling so that all the boxes are contained the way we want them to. If we look at the original design, and this is where drawing out your design in advance has a huge benefit.
Expand all | Collapse all
  1. 4m 5s
    1. Welcome
      1m 4s
    2. Using the exercise files
      1m 27s
    3. What you should know before watching this course
      1m 34s
  2. 8m 36s
    1. What is responsive design?
      4m 16s
    2. The different faces of WordPress on mobile
      1m 55s
    3. Exploring the finished Anaximander theme
      2m 25s
  3. 9m 38s
    1. Getting and installing the Anaximander theme
      1m 53s
    2. Configuring basic theme options
      7m 45s
  4. 23m 51s
    1. Deciding what screen sizes to design for
      4m 11s
    2. Thinking responsively: Designing for many different screen sizes
      6m 23s
    3. Visualizing content realignment for better markup
      4m 35s
    4. Designing menus
      4m 52s
    5. Adding responsive images and videos
      3m 50s
  5. 26m 8s
    1. What are media queries and how do they work?
      4m 18s
    2. Exploring CSS3, progressive enhancement, and graceful degradation
      3m 27s
    3. Understanding best practices for media queries
      3m 57s
    4. Creating a responsive frame
      5m 12s
    5. Customizing media queries with the Chrome Developer Tools
      5m 28s
    6. Taking device width into account
      3m 46s
  6. 11m 1s
    1. Resizing the site title and the description
      8m 22s
    2. Adding media queries to the header
      2m 39s
  7. 11m 22s
    1. Making the menu responsive
      3m 35s
    2. Creating a different menu design for small screens
      7m 47s
  8. 19m 22s
    1. Making a responsive single-post layout
      6m 11s
    2. Making images responsive
      4m 37s
    3. Making videos responsive by including FitVids
      8m 34s
  9. 7m 45s
    1. Making the sidebar responsive
      5m 10s
    2. Hiding sidebars on mobile
      2m 35s
  10. 7m 28s
    1. Dealing with footer widgets
      5m 11s
    2. Adding navigation links that return to the top of the page
      2m 17s
  11. 12m 54s
    1. Using FlexSlider to create a responsive slider
      6m 2s
    2. Creating a loop to show sticky posts in a featured slider
      6m 52s
  12. 24m 37s
    1. What is jQuery Masonry?
      3m 41s
    2. Installing jQuery Masonry
      4m 45s
    3. Configuring the index page with Masonry
      7m 0s
    4. Using CSS to finalize the Masonry layout
      6m 17s
    5. Adding media queries to the Masonry index
      2m 54s
  13. 9m 11s
    1. Exploring hidden features of the Anaximander theme
      5m 51s
    2. Where to go from here
      3m 20s

Watch this entire course now—plus get access to every course in the library. Each course includes high-quality videos taught by expert instructors.

Become a member
please wait ...
WordPress: Building Responsive Themes
2h 55m Intermediate Aug 17, 2012

Viewers: in countries Watching now:

The many ways visitors access web sites, via mobile devices, tablets, and desktops, now requires sites to incorporate responsive design elements that adapt to different screen sizes and browsers. In this course, Morten Rand-Hendriksen demonstrates design strategies, best practices, and actual code examples for creating a responsive web site. The course covers layout, navigation, responsive video embedding, and content sliders. The final chapter shows how to create an index page with jQuery Masonry, a jQuery plugin that helps you create dynamic grid layouts.

Topics include:
  • What is responsive design?
  • Installing the Anaximander example theme
  • Deciding what screen sizes to target
  • Designing menus
  • Adding responsive images and video
  • Using CSS media queries to apply different styles
  • Handling sidebars on mobile displays
  • Dealing with footer widgets
  • Installing jQuery Masonry
Subjects:
Web CMS User Experience Blogs Responsive Design
Software:
WordPress
Author:
Morten Rand-Hendriksen

Using CSS to finalize the Masonry layout

So far, we've hooked jQuery Masonry into our WordPress theme; we've made it interact with the front page; but even so, this front page still doesn't look like that nice tiling effect that we want. That's because the last step in the process of adding masonry to your WordPress theme is to apply styling so that all the boxes are contained the way we want them to. If we look at the original design, and this is where drawing out your design in advance has a huge benefit.

If you draw your design in advance, you know exactly where you want to go with your styling, so it's just a matter of applying that styling to your style sheet. Looking at the original design, you can see exactly what we want to do. Each of the items should be contained in a box that's 298 pixels wide. That box should have a one-pixel border of gray color, and there should also be a margin between each of the boxes of 20 pixels.

Now that we know what it's going to look like, we can go into our markup and identify the elements that we want to apply styles to. So I'll use my Developer Tools to find out which element is containing each of my stories, and I can see it's this one, the article, and it has the class index-post-container. So that's what I want to apply my styles to. Now I can go into my style sheet, open it in the code editor, and then I'll create a new section for my new styles.

I'll place it right after the regular index section that we already have. So I'll copy this comment out and then scroll down until I find the end of that section. Here it is. And I'll say Index- Masonry and then I can create a new style. The first style should apply to only masonry-index and inside that .index-post-container so that this style will apply to each of the items.

Then it's just a matter of defining exactly what it's going to look like. As I showed you in Photoshop, the width of each item should be 298 pixels. Each item should have a border. It's 1 pixel wide, solid, and has a gray color, so I'll set it to e3e3e3. And we also want each item to float to the left, so I'll say float: left. Save the new style sheet, reload the page, and as if by magic, everything now stacks nicely, side by side and one on top of another.

But it doesn't look quite right yet. There's a couple of things we still need to do. First, we need to make some space in between each item. So what I need to do is, for each item, add a margin to the right and to the bottom, and I know that that margin should be 20 pixels. So I'll go back, say margin: 0 for top, 20 for right, 20 for the bottom, and 0 for left. Save it again, reload the page, and now they stack on top of one another with the correct spacing in between.

But there are two issues here. First, we now only have two items next to one another instead of three, and second, you see that the title here is shifted all the way to the left, which looks kind of odd. So let's deal with the title first. I'll take a look at the title with the Developer Tools and I see that it's affected by this index-title class. So now I can create a new style that affects only that. So I'll say masonry- index and then index-title.

That way this style will only affect the index- title in the masonry-index and not any other place the same index-title appears, like in the regular indexes. And then I'll set margin: to 20 pixels all around. Save it, reload the page, and now you can see the titles align with the rest of the content. But what are we going to do about the content not spanning all the way across here? And more importantly, why is it happening? Well, if we do some math here, you'll realize that the overall container here is 940 pixels wide, and each of these articles is 300 pixels wide once you add the 1-pixel border on either side.

You remember we set them to 298s and then added a border. The problem is, if you take 300 plus 20, plus 300 plus 20, plus 300 plus 20, you don't end up with 940; you end up with 960. The containing box is simply not big enough to contain all our content. There are several ways you can deal with this. The absolute easiest way of dealing with it is to simply make that outermost containing box too big.

So what we'll do is, go in, create a new style, say masonry-index--because that's the containing box--and I'll set the width to 105%. That extra 5% is just enough to allow us that extra space so that the content slides up next to it without disturbing the layout of the whole page. So now you see we have the correct layout for the masonry index, all the way down to the bottom, and if we navigate to the next page, we get more stories.

And just as importantly, if I go to an archive page, like Category archive page, I still have the same layout I had before, so Classic layout on archive pages, Masonry layout on index pages, and the Masonry layout is responsive.

There are currently no FAQs about WordPress: Building Responsive Themes.

 
Share a link to this course

What are exercise files?

Exercise files are the same files the author uses in the course. Save time by downloading the author's files instead of setting up your own files, and learn by following along with the instructor.

Can I take this course without the exercise files?

Yes! If you decide you would like the exercise files later, you can upgrade to a premium account any time.

Become a member Download sample files See plans and pricing

Please wait... please wait ...
Upgrade to get access to exercise files.

Exercise files video

How to use exercise files.

Learn by watching, listening, and doing, Exercise files are the same files the author uses in the course, so you can download them and follow along Premium memberships include access to all exercise files in the library.
Upgrade now


Exercise files

Exercise files video

How to use exercise files.

For additional information on downloading and using exercise files, watch our instructional video or read the instructions in the FAQ.

This course includes free exercise files, so you can practice while you watch the course. To access all the exercise files in our library, become a Premium Member.

join now Upgrade now

Are you sure you want to mark all the videos in this course as unwatched?

This will not affect your course history, your reports, or your certificates of completion for this course.


Mark all as unwatched Cancel

Congratulations

You have completed WordPress: Building Responsive Themes.

Return to your organization's learning portal to continue training, or close this page.


OK
Become a member to add this course to a playlist

Join today and get unlimited access to the entire library of video courses—and create as many playlists as you like.

Get started

Already a member?

Become a member to like this course.

Join today and get unlimited access to the entire library of video courses.

Get started

Already a member?

Exercise files

Learn by watching, listening, and doing! Exercise files are the same files the author uses in the course, so you can download them and follow along. Exercise files are available with all Premium memberships. Learn more

Get started

Already a Premium member?

Exercise files video

How to use exercise files.

Ask a question

Thanks for contacting us.
You’ll hear from our Customer Service team within 24 hours.

Please enter the text shown below:

The classic layout automatically defaults to the latest Flash Player.

To choose a different player, hold the cursor over your name at the top right of any lynda.com page and choose Site preferencesfrom the dropdown menu.

Continue to classic layout Stay on new layout
Exercise files

Access exercise files from a button right under the course name.

Mark videos as unwatched

Remove icons showing you already watched videos if you want to start over.

Control your viewing experience

Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.

Interactive transcripts

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.

Are you sure you want to delete this note?

No

Thanks for signing up.

We’ll send you a confirmation email shortly.


Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

Keep up with news, tips, and latest courses with emails from lynda.com.

Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

   
submit Lightbox submit clicked
Terms and conditions of use

We've updated our terms and conditions (now called terms of service).Go
Review and accept our updated terms of service.