Drupal Developer

← All exam tracks

Drupal 10 / 11

Drupal Developer

Practice original scenario-based Drupal Developer questions. Take a timed mock, focus on a topic, and learn from detailed explanations. These are independent practice materials, not official exam questions or a guarantee of certification readiness.

60 questions · 90 minutes · 65% practice target

Create an account to practice Already a member? Sign in

Topics you will practice

  • Fundamental Web
  • Site Building
  • Front End
  • Back End

Follow the 14-day Drupal study plan

Try a sample

Think through each question, then reveal the explanation. Full attempts save your answers and scores to your account.

A card title must remain a heading for screen readers, but look smaller on narrow screens. What is the best implementation?

  1. Replace the heading with a styled div
  2. Keep the heading element and change its size with a media query
  3. Use JavaScript to replace h2 with span
  4. Add an aria-label to a div
Show answer and explanation

Correct answer: Keep the heading element and change its size with a media query

Semantic HTML and visual presentation are separate concerns. Keep the heading structure and adapt presentation with CSS.

A positioned dropdown has z-index: 9999 inside a header with transform: translateZ(0) and z-index: 1. A sibling slideshow has position: relative and z-index: 2. Both ancestors share the same parent stacking context. What fixes the overlap?

  1. Increase only the dropdown z-index to 999999
  2. Give the header stacking context a z-index above the slideshow
  3. Set the dropdown to position: static
  4. Set overflow: visible on the dropdown
Show answer and explanation

Correct answer: Give the header stacking context a z-index above the slideshow

Inspect ancestor stacking contexts before increasing a child z-index.

A Drupal AJAX response inserts more result cards. Existing cards must keep one click handler each, and new cards must receive one. Which initialization fits?

  1. Run document.querySelectorAll on DOMContentLoaded only
  2. Use a behavior that binds every matching element in document on every attach
  3. Use a behavior with once("cards", ".result-card", context)
  4. Wrap the whole behavior in once("cards", "html")
Show answer and explanation

Correct answer: Use a behavior with once("cards", ".result-card", context)

Use Drupal behaviors for the lifecycle and once per matching element for duplicate prevention.