当前位置:首页 > VUE

vue实现单独样式

2026-01-18 17:19:43VUE

Vue 实现单独样式的方法

使用 scoped 样式

在单文件组件(.vue 文件)的 <style> 标签中添加 scoped 属性,样式仅作用于当前组件。Vue 会通过添加唯一属性(如 data-v-xxxxxx)实现样式隔离。

<template>
  <div class="example">仅当前组件生效</div>
</template>

<style scoped>
.example {
  color: red;
}
</style>

使用 CSS Modules

通过 module 属性启用 CSS Modules,生成的类名会被哈希化避免冲突。需通过 $style 对象引用类名。

vue实现单独样式

<template>
  <div :class="$style.example">哈希类名样式</div>
</template>

<style module>
.example {
  background: blue;
}
</style>

动态类名绑定

结合 Vue 的 :class 绑定,根据条件动态切换样式类。

<template>
  <div :class="{ active: isActive }">动态样式</div>
</template>

<script>
export default {
  data() {
    return { isActive: true }
  }
}
</script>

<style>
.active {
  font-weight: bold;
}
</style>

深度选择器 (>>>::v-deep)

穿透 scoped 限制,修改子组件样式(需谨慎使用)。

vue实现单独样式

<style scoped>
.parent ::v-deep .child {
  padding: 10px;
}
</style>

内联样式

通过 :style 绑定行内样式,适合动态样式场景。

<template>
  <div :style="{ color: textColor }">内联样式</div>
</template>

<script>
export default {
  data() {
    return { textColor: 'green' }
  }
}
</script>

全局样式与局部混合

main.js 或单独 CSS 文件中定义全局样式,组件内通过普通 <style> 补充局部样式。

/* global.css */
body {
  margin: 0;
}
<style>
/* 组件内全局样式 */
</style>

<style scoped>
/* 组件内局部样式 */
</style>

标签: 样式vue
分享给朋友:

相关文章

vue实现试卷

vue实现试卷

Vue实现试卷系统的基本思路 使用Vue.js构建试卷系统需要结合组件化开发、状态管理和后端数据交互。核心功能包括题目展示、答题逻辑、计时器和提交答案。 核心功能模块划分 试卷组件结构 试卷容器组…

vue实现datalist

vue实现datalist

使用 Vue 实现 HTML5 的 datalist 功能 HTML5 的 <datalist> 元素提供了一种自动完成输入框的功能,允许用户在输入时从预定义的选项列表中选择。以下是几种在…

vue搜索实现

vue搜索实现

Vue 搜索功能实现方法 基于计算属性的搜索 在 Vue 中可以通过计算属性实现简单的搜索功能。这种方式适合小型数据集,利用 JavaScript 的 filter 方法进行筛选。 data() {…

vue实现换页

vue实现换页

Vue实现页面切换的方法 在Vue中实现页面切换通常可以通过Vue Router来完成。Vue Router是Vue.js官方的路由管理器,用于构建单页面应用(SPA)。以下是几种常见的实现方式:…

vue实现微云

vue实现微云

Vue 实现微云功能 使用 Vue 实现类似微云的网盘功能需要结合前端框架、后端存储及文件处理技术。以下是关键实现步骤和代码示例: 前端框架搭建 使用 Vue CLI 创建项目基础结构,安装必要依赖…

vue实现例子

vue实现例子

以下是一些常见的 Vue 实现例子,涵盖基础功能到进阶应用场景: 基础数据绑定 使用 v-model 实现双向数据绑定: <template> <div> &l…