0% complete

Web Development for Data Analysts (UI, Dashboards & Visualization) · Lesson 1 of 3

HTML, CSS, and Accessible Dashboard Controls

Create a simple semantic interface with readable layout and accessible filter controls.

Lesson

1. Introduction

A web dashboard needs more than a chart: viewers need controls, labels, and clear feedback about what data is shown. HTML provides structure, CSS provides layout, and accessibility allows more people to use the interface.

2. Understand the concept

Use semantic elements and connect every input to a label. A filter should have a meaningful name and visible selected value. Responsive layouts should remain usable on narrow screens, and color should not be the only way to communicate categories or alerts.

3. Syntax and interpretation

<label for="region">Choose region</label>\n<select id="region" name="region">\n  <option value="north">North</option>\n</select>\n<p role="status">Showing 2026 results</p>

The label association and status role help users understand the control and receive updates. A real page should also provide keyboard focus and a no-data state.

4. Apply it to an analysis

Create a simple semantic interface with readable layout and accessible filter controls. Start with a small, known example and state what each row or value represents. After the transformation, check row counts, types, keys, and units against the original data. If an assumption fails, stop and investigate instead of presenting the output as a valid result.

5. Common mistakes

  • Using placeholder text instead of a persistent label for an important input.
  • Showing a chart without units, period, or an indication that results are still loading.

6. Practice task

Name two details that make a region filter usable with a keyboard and screen reader.

7. One possible solution

A programmatically associated label and normal keyboard focus/selection behavior; announce changes with an appropriate status message.

8. Summary and next step

Create a simple semantic interface with readable layout and accessible filter controls. Use the next lesson in this module to extend the idea with another technique and a more realistic analysis case.

Visual guide

Working through HTML, CSS, and Accessible Dashboard Controls

  1. Step 01 Define

    State the question, data grain, and expected output.

  2. Step 02 Apply

    Use the method and check its assumptions on a small example.

  3. Step 03 Verify

    Reconcile the result and communicate limitations.

Code examples

Use a descriptive chart heading
HTML
<section aria-labelledby="revenue-title">\n  <h2 id="revenue-title">Monthly revenue by region (USD)</h2>\n</section>
Expected output
Provides a heading that includes both measure and unit.
Provide a non-color category cue
TEXT
Use labeled series, distinct line patterns, and a legend instead of relying on red versus green alone.
Expected output
The chart remains interpretable for users with color-vision differences.

Key points

  • Create a simple semantic interface with readable layout and accessible filter controls.
  • Check the result against the stated data definition and a representative example.
  • Record assumptions and report data-quality limitations rather than hiding them.

Check your understanding

Practice

Which approach best applies the ideas in HTML, CSS, and Accessible Dashboard Controls?

Your learning progress

Finish this lesson