Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Learn Dynamic Classes and Styles | Section
Vue.js Fundamentals and App Development

bookDynamic Classes and Styles

Swipe to show menu

Vue allows you to apply classes and styles dynamically based on data. This helps change the appearance of elements depending on the application state.

To bind classes, use the :class directive.

<script setup>
import { ref } from "vue";

const isActive = ref(true);
</script>

<template>
  <p :class="{ active: isActive }">Status</p>
</template>

<style>
.active {
  color: #4f46e5;
  font-weight: bold;
}
</style>

When isActive is true, the active class is applied. If it becomes false, the class is removed.

You can also apply multiple classes.

<script setup>
import { ref } from "vue";

const isActive = ref(true);
const isError = ref(false);
</script>

<template>
  <p :class="{ active: isActive, error: isError }">Message</p>
</template>

To bind inline styles, use the :style directive.

<script setup>
import { ref } from "vue";

const color = ref("blue");
</script>

<template>
  <p :style="{ color: color }">Styled text</p>
</template>

Dynamic classes and styles allow you to control the appearance of elements based on your data.

question mark

Which Vue directive is used to bind dynamic CSS classes to an element?

Select the correct answer

Everything was clear?

How can we improve it?

Thanks for your feedback!

Section 1. Chapter 21

Ask AI

expand

Ask AI

ChatGPT

Ask anything or try one of the suggested questions to begin our chat

Section 1. Chapter 21
some-alt