# Set CSS

{% hint style="info" %}
**Block Information**

Available in: Page Flow

Toolbox Category: Style/CSS

Block Type: [Regular](/app-editor/page-flow/block-anatomy.md#regular-block)
{% endhint %}

**`Set CSS`** is a [regular block](/app-editor/page-flow/block-anatomy.md#regular-block) that allows you to add and/or remove [CSS classes](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/class) from any element on the page or form.&#x20;

{% hint style="success" %}
Refer to the [Set CSS in Data Design](/app-editor/page-flow/toolbox-blocks/set-css-in-data-design.md) block for dynamically generated content.
{% endhint %}

The block comes in two modes which are discussed below.

## Mode 1 <a href="#mode-1" id="mode-1"></a>

<div align="left"><figure><img src="/files/gMl8Nbc2Il6czMrw9Esp" alt="" width="249"><figcaption><p>Set CSS (Mode 1)</p></figcaption></figure></div>

The Mode 1 version of the Set CSS block consists of (from top to bottom):

* *Element*: [Selectable Input](/app-editor/page-flow/block-anatomy.md#selectable-input) to choose the element you want to add/remove the CSS classes for.
* *Add Classes:* [Input](/app-editor/page-flow/block-anatomy.md#input) configuration setting to specify classes (multiple classes can be separated by a space) to be added. Can be empty if you do not want to add any CSS classes.
* *Remove Classes:* [Input](/app-editor/page-flow/block-anatomy.md#input) configuration setting to specify classes (multiple classes can be separated by a space) to be removed. Can be empty if you do not want to remove any CSS classes.

## Mode 2 <a href="#mode-2" id="mode-2"></a>

<div align="left"><figure><img src="/files/sXrBbzRi76MgyFYki7Nv" alt="" width="249"><figcaption><p>Set CSS (Mode 2)</p></figcaption></figure></div>

The Mode 2 version of the Set CSS block consists of (from top to bottom):

* *Element*: [Value Parameter](/app-editor/page-flow/block-anatomy.md#value-parameters) that accepts either a [*text*](/app-editor/page-flow/references/value-types.md) value in the form of a [CSS Selector](https://developer.mozilla.org/en-US/docs/Learn/CSS/Building_blocks/Selectors) or an [*element*](/app-editor/page-flow/references/value-types.md) value[.](https://developer.mozilla.org/en-US/docs/Learn/CSS/Building_blocks/Selectors) The Element block comes pre-attached for your convenience but can be removed and customized.
* *Add Classes*: [Value Parameter](/app-editor/page-flow/block-anatomy.md#value-parameters) that accepts a [*text*](/app-editor/page-flow/references/value-types.md) value containing the classes (multiple classes can be separated by a space) to be added. Can be empty if you do not want to add any CSS classes.
* *Remove Classes*: [Value Parameter](/app-editor/page-flow/block-anatomy.md#value-parameters) that accepts a [*text*](/app-editor/page-flow/references/value-types.md) value containing the classes (multiple classes can be separated by a space) to be removed. Can be empty if you do not want to remove any CSS classes.

***

## Usage Examples

The image below shows an example of the Mode 1 version where the CSS class `bg-info` is being added and the class `bg-dark` is being removed.

<div align="left"><figure><img src="/files/zZEbUEwSNzmhA7Px8Czh" alt="" width="492"><figcaption><p>Example of Set CSS Mode 1</p></figcaption></figure></div>

In the next example we see a Mode 2 version where the *Element* value parameter is attached to a Text block containing a [CSS Selector](https://developer.mozilla.org/en-US/docs/Learn/CSS/Building_blocks/Selectors) that selects the same element. The *Add Classes* and Remove Classes value parameters are attached to Variable Value blocks.

<div align="left"><figure><img src="/files/zBzOOku57NgnazCpnND5" alt="" width="563"><figcaption><p>Example of Set CSS Mode 2</p></figcaption></figure></div>

{% hint style="success" %}
NOTE: Using a CSS selector, you can operate on multiple elements that match the criteria specified by the selector. See the references below for more information:

* [Wikipedia article on CSS](https://en.wikipedia.org/wiki/CSS#Selector)
* [Mozilla Developer Network article on CSS selectors](https://developer.mozilla.org/en-US/docs/Learn/CSS/Building_blocks/Selectors)
  {% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.zingy.ai/app-editor/page-flow/toolbox-blocks/set-css.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
