QUESTIONSTAR
Question Types

Question type Custom HTML/CSS/JS

About the Custom HTML/CSS/JS question type

With the Custom HTML/CSS/JS question type, you can embed any content directly into the questionnaire via code — whether for flexible design, custom interactive elements or the integration of external components.

This question type is ideal when you need content that goes beyond the standard question types and design options. It lets you use HTML for structure, CSS for styling and JavaScript for interactivity — right inside the questionnaire.

Typical use cases:

  • A countdown to the start or end of an event
  • Displaying dynamic content depending on response behavior
  • Integrating external widgets (e.g. calendars, maps, charts)
  • Designing special information blocks with your own styles
  • Logic-dependent visualizations with JavaScript

👉 As with the Info Block question type, this block can also be shown or hidden using display logic.
👉 In addition, you can pipe content from other questions into the code and process it dynamically there.

Please note: This question type is for display purposes only — it does not collect any input from respondents. If you want to capture user interactions, you'll need additional hidden questions or external storage solutions.

Settings for the Custom HTML/CSS/JS question type

The settings for this question type focus on code editing:

Question type Custom HTML/CSS/JS
  1. Code Editor Theme
    Choose between a light or dark editor theme, depending on your preference:

    • Light Theme
    • Dark Theme
  2. Indent Size
    Specify how many spaces should be used when pressing the Tab key (e.g. 2 or 4).
  3. Code areas: HTML, CSS, JS
    Use the tabs in the editor to switch between the three code areas:

    • HTML: Structure and content
    • CSS: Styling
    • JS (JavaScript): Interactive functions

Example of a Custom HTML/CSS/JS block

So you can see how such a block can be used in practice, here's an embedded example — a simple analog clock structured with HTML, styled with CSS and animated with JavaScript.

Open the example preview in a new window