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>
相关推荐
Csvn9 小时前
WASM
前端
修己xj10 小时前
我用 AI 给自己写了一个 Markdown 编辑器,然后把它开源了
前端
FRing0310 小时前
vue2干货总结2(v-bind、v-for、v-model、指令修饰符、v-bind操作class和style)
开发语言·前端·vue.js·vue2
幸运小猿11 小时前
模拟慢上传-处理超时重试image 丢失线上问题
前端·javascript·html
moshuying12 小时前
网购能买Token了!
前端
h_654321012 小时前
echarts实现柱状图加一条横线
前端·echarts
风骏时光牛马13 小时前
生成一个后端标题,只需要一个标题,不需要其他的任何文本。
前端
子非鱼@Itfuture13 小时前
关于前后端联调中登录状态/登录信息失效?
java·前端
郭小李13 小时前
openFeign入门
java·开发语言·前端
馒头不想说话13 小时前
AI当运营,帮你省人力
前端