vue3 css使用v-bind实现动态样式

vue3 css使用v-bind实现动态样式

html 复制代码
<template>
    <button @click="toggleTheme">切换主题</button>
    <div class="card"></div>
</template>

<script setup>
import { ref } from 'vue'

const primaryColor = ref('#007bff')
const isLarge = ref(false)
const height = ref(200)
const margin = ref(20)

function toggleTheme() {
  // 切换亮色/暗色主题
  if (primaryColor.value === '#007bff') {
    primaryColor.value = '#ffc107'
    isLarge.value = true
  } else {
    primaryColor.value = '#007bff'
    isLarge.value = false
  }
}
</script>

<style scoped>
.card {
  margin-top: v-bind('margin * 2 + "px"');
  width: v-bind('isLarge ? "300px" : "200px"');
  height: v-bind('height + "px"');
  background-color: v-bind(primaryColor);
}
</style>
相关推荐
猪八宅百炼成仙14 分钟前
解决 el-date-picker type:daterange 在 layout 布局中的宽度问题
前端·element
小贺要学前端38 分钟前
ES6 还没用明白,JavaScript 已经快到 ES2026 了
前端·javascript·es6
Amumu1213842 分钟前
JS:ES6~ES11基础语法(二)
开发语言·前端·javascript
Amumu121381 小时前
Js:ES6~ES11基础语法(一)
开发语言·前端·javascript
英俊潇洒美少年1 小时前
#React 16/17/18/19 超精简速记版(面试前5分钟背完)
前端·react.js·面试
lightqjx1 小时前
【前端】前端学习一之HTML从入门到精通
前端·学习·html
Joyee6911 小时前
RN 的事件调度 RuntimeScheduler
前端·react native
sensen_kiss2 小时前
CAN302 电子商务技术 Pt.1 Web技术导论
前端·网络·学习
ProgramHan2 小时前
十大排行榜——前端语言及要介绍
前端
氢灵子2 小时前
Fixed 定位的失效问题
前端·javascript·css