Bird
Raised Fist0
Wordpressframework~10 mins

Responsive theme patterns in Wordpress - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to add the viewport meta tag for responsive design in a WordPress theme header.

Wordpress
<meta name="viewport" content="width=[1], initial-scale=1">
Drag options to blanks, or click blank then click option'
Adevice-width
Bwidth
Cscreen-width
Ddevice-scale
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'width' instead of 'device-width' causes fixed width layouts.
Using 'screen-width' is not a valid viewport value.
2fill in blank
medium

Complete the CSS media query to apply styles only on screens smaller than 768px.

Wordpress
@media only screen and (max-[1]: 768px) { /* styles here */ }
Drag options to blanks, or click blank then click option'
Aheight
Bdevice-width
Cwidth
Dresolution
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'height' instead of 'width' targets vertical size, not horizontal.
Using 'device-width' inside media queries is less common and can cause issues.
3fill in blank
hard

Fix the error in the WordPress function to enqueue a responsive stylesheet.

Wordpress
function theme_enqueue_styles() {
  wp_enqueue_style('responsive-style', get_template_directory_uri() . '/css/[1].css');
}
add_action('wp_enqueue_scripts', 'theme_enqueue_styles');
Drag options to blanks, or click blank then click option'
Astyles
Bstyle
Cresponsive-style
Dresponsive
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'style' or 'styles' when the file is named 'responsive.css'.
Using the handle name instead of the filename.
4fill in blank
hard

Fill both blanks to create a responsive image tag in a WordPress theme using srcset and sizes attributes.

Wordpress
<img src="image-small.jpg" srcset="image-small.jpg 480w, image-large.jpg [1]" sizes="(max-width: 600px) [2], 100vw" alt="Responsive image">
Drag options to blanks, or click blank then click option'
A800w
B100vw
C600px
D480w
Attempts:
3 left
💡 Hint
Common Mistakes
Using '600px' in srcset instead of a width descriptor like '800w'.
Confusing sizes values with srcset widths.
5fill in blank
hard

Fill all three blanks to create a responsive navigation menu in WordPress using a toggle button and ARIA attributes.

Wordpress
<button aria-[1]="primary-menu" aria-[2]="false" id="menu-toggle">Menu</button>
<nav id="primary-menu" class="menu" [3]="navigation">...</nav>
Drag options to blanks, or click blank then click option'
Acontrols
Bexpanded
Clabel
Drole
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'aria-label' instead of 'aria-controls' on the button.
Missing the 'role' attribute on the nav element.

Practice

(1/5)
1. What is the main purpose of using responsive theme patterns in WordPress?
easy
A. To add more plugins to the website
B. To make the website look good on all device sizes
C. To increase the website loading speed only on desktops
D. To change the website's language automatically

Solution

  1. Step 1: Understand responsive design goal

    Responsive themes adjust layout and style to fit different screen sizes like phones, tablets, and desktops.
  2. Step 2: Identify the correct purpose

    The main goal is to ensure the website looks good and works well on all devices, not just desktops or adding plugins.
  3. Final Answer:

    To make the website look good on all device sizes -> Option B
  4. Quick Check:

    Responsive design = look good on all devices [OK]
Hint: Responsive means adapting to all screen sizes [OK]
Common Mistakes:
  • Thinking responsive only speeds up desktop loading
  • Confusing responsive with adding plugins
  • Assuming it changes website language automatically
2. Which CSS syntax correctly applies styles only when the screen width is 600px or less?
easy
A. @media screen and (max-height: 600px) { /* styles here */ }
B. @media screen and (min-width: 600px) { /* styles here */ }
C. @media screen and (max-width: 600px) { /* styles here */ }
D. @media (width: 600px) { /* styles here */ }

Solution

  1. Step 1: Understand max-width media query

    The max-width condition applies styles when the screen width is less than or equal to the given value.
  2. Step 2: Identify correct syntax

    @media screen and (max-width: 600px) { /* styles here */ } uses max-width: 600px, which targets screens 600px wide or smaller. Other options either use min-width, height, or incorrect syntax.
  3. Final Answer:

    @media screen and (max-width: 600px) { /* styles here */ } -> Option C
  4. Quick Check:

    max-width 600px = styles for small screens [OK]
Hint: max-width targets screens up to that width [OK]
Common Mistakes:
  • Using min-width instead of max-width for small screens
  • Confusing width with height in media queries
  • Omitting 'screen' keyword or using wrong syntax
3. Given this CSS snippet in a WordPress theme:
@media (max-width: 768px) { body { background-color: lightblue; } }

What will happen when you view the site on a tablet with 700px width?
medium
A. The background color will be lightblue
B. The background color will not change
C. The background color will be lightblue only on desktop
D. The CSS will cause an error and not apply

Solution

  1. Step 1: Check screen width against max-width

    The media query applies styles when screen width is 768px or less. 700px is less than 768px, so styles apply.
  2. Step 2: Determine effect on background color

    The body background color changes to lightblue on screens 768px wide or smaller, including the 700px tablet.
  3. Final Answer:

    The background color will be lightblue -> Option A
  4. Quick Check:

    700px <= 768px means styles apply [OK]
Hint: Check if device width fits max-width condition [OK]
Common Mistakes:
  • Thinking styles apply only on desktop
  • Assuming CSS causes errors on media queries
  • Ignoring the max-width condition logic
4. You wrote this CSS in your WordPress theme:
@media screen and (max-width 600px) { .menu { display: none; } }

Why is the menu still visible on small screens?
medium
A. Missing colon ':' after max-width in media query
B. The .menu class does not exist in HTML
C. display: none; is not valid CSS
D. Media queries do not work in WordPress themes

Solution

  1. Step 1: Check media query syntax

    The media query is missing a colon ':' after max-width, which is required for valid syntax.
  2. Step 2: Understand effect of syntax error

    Because of the missing colon, the media query is ignored, so the .menu styles inside it do not apply.
  3. Final Answer:

    Missing colon ':' after max-width in media query -> Option A
  4. Quick Check:

    Correct media query syntax requires ':' [OK]
Hint: Check colons in media query conditions [OK]
Common Mistakes:
  • Forgetting colon after max-width
  • Assuming display:none is invalid
  • Thinking WordPress disables media queries
5. You want your WordPress theme to show a two-column layout on screens wider than 900px and a single column on smaller screens. Which CSS pattern achieves this best?
hard
A. .container { display: block; }
B. @media (max-width: 900px) { .container { display: grid; grid-template-columns: 1fr 1fr; } } @media (min-width: 901px) { .container { display: block; } }
C. .container { display: grid; grid-template-columns: 1fr 1fr; }
D. @media (min-width: 901px) { .container { display: grid; grid-template-columns: 1fr 1fr; } } @media (max-width: 900px) { .container { display: block; } }

Solution

  1. Step 1: Define layout for wide screens

    Use min-width: 901px media query to apply two-column grid layout for screens wider than 900px.
  2. Step 2: Define layout for smaller screens

    Use max-width: 900px media query to apply single column block layout for smaller screens.
  3. Step 3: Verify option correctness

    @media (min-width: 901px) { .container { display: grid; grid-template-columns: 1fr 1fr; } } @media (max-width: 900px) { .container { display: block; } } correctly sets two-column grid for wide screens and single column for smaller. @media (max-width: 900px) { .container { display: grid; grid-template-columns: 1fr 1fr; } } @media (min-width: 901px) { .container { display: block; } } reverses conditions. The other options do not use media queries.
  4. Final Answer:

    @media (min-width: 901px) { .container { display: grid; grid-template-columns: 1fr 1fr; } } @media (max-width: 900px) { .container { display: block; } } -> Option D
  5. Quick Check:

    min-width for wide, max-width for small screens [OK]
Hint: Use min-width for wide, max-width for narrow layouts [OK]
Common Mistakes:
  • Reversing min-width and max-width conditions
  • Not using media queries for responsive layout
  • Applying same layout for all screen sizes
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard