『VUE』19. scope避免组件之间样式互相覆盖(详细图文注释)

目录

    • 使用多个组件带有样式
    • 分析
    • 如何避免css覆盖
    • 总结


欢迎关注 『VUE』 专栏,持续更新中
欢迎关注 『VUE』 专栏,持续更新中

使用多个组件带有样式

ComPonent1.vue

<template>
  <h3>ComPonent1.vue</h3>
</template>

<script>

</script>

<style>
h3{
  color: blue;
}
</style>

ComPonent2.vue

<template>
  <h3>ComPonent2.vue</h3>
</template>

<script></script>
<style>
h3 {
  color: red;
}
</style>

猜猜看ComPonent1和ComPonent2分别是什么颜色?
ComPonentDemo.vue

<template>
  <ComPonent1 />
  <ComPonent2 />
  <h3>组件结构</h3>
</template>

<script>
import ComPonent2 from "./ComPonent2.vue";
import ComPonent1 from "./ComPonent1.vue";

export default {
  components: {
    ComPonent2,
    ComPonent1,
  },
};
</script>

在这里插入图片描述


分析

发生 CSS 覆盖的原因是因为在不同组件的

组件1是蓝色,组件2是红色,首先一个颜色,说明了两者的css样式存在覆盖对方的情况,那到底是谁覆盖谁主要是看引入的顺序
谁最后引入谁就覆盖之前引入的组件.
在这里插入图片描述

在这里插入图片描述


如何避免css覆盖

使用scope,在每个组件的style修改<style scope>,注意最好刷新浏览器缓存才会生效,我刷新了几次后才看到颜色改变的效果.

其实正常开发环境无论如何都不能直接用h3作为选择器.太不规范,这里只是提供思路,一般情况默认加上scoped,如果你确定这样式只在本组件使用

scoped 是一个在 Vue 单文件组件中的

scoped 属性会自动为每个选择器添加一个唯一的哈希值,以确保样式仅适用于当前组件中的元素。这意味着在当前组件的模板中使用的类名或标签选择器,只会选择当前组件中的对应元素,不会影响到其他组件中相同类名或标签的元素。

使用 scoped 属性可以提供更好的组件封装性和可复用性。每个组件的样式都被隔离到自己的作用域内,开发者不必担心全局样式的冲突问题。

需要注意的是,scoped 属性只能影响当前组件内部的样式,无法阻止外部样式对当前组件的影响。如果需要更强的样式隔离,可以考虑使用 CSS Modules 或 CSS-in-JS 等技术来实现更加严格的组件样式隔离。

<template>
  <h3>ComPonent1.vue</h3>
</template>

<style scope>
h3 {
  color: blue;
}
</style>

<template>
  <h3>ComPonent2.vue</h3>
</template>

<style scope>
h3 {
  color: red;
}
</style>

在这里插入图片描述


总结

大家喜欢的话,给个👍,点个关注!给大家分享更多计算机专业学生的求学之路!

版权声明:

发现你走远了@mzh原创作品,转载必须标注原文链接

Copyright 2024 mzh

Crated:2024-3-1

欢迎关注 『VUE』 专栏,持续更新中
欢迎关注 『VUE』 专栏,持续更新中
『未完待续』


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/909535.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数据结构 C/C++(实验二:栈)

&#xff08;大家好&#xff0c;今天分享的是数据结构的相关知识&#xff0c;大家可以在评论区进行互动答疑哦~加油&#xff01;&#x1f495;&#xff09; 目录 提要&#xff1a;实验题目 一、实验目的 二、实验内容及要求 三、算法思想 实验1 实验2 四、源程序及注释…

软考背诵笔记

计算机硬件组成 运算器&#xff0c;控制器&#xff0c;存储器&#xff0c;输入设备&#xff0c;输出设备 中央处理单元&#xff08;CPU&#xff09; 控制器组成 指令寄存器&#xff08;IR&#xff09;:暂存cpu执行指令 程序计数器&#xff08;PC&#xff09;:存放下一条执…

面试问答-1

目录 1、线程和进程的概念&#xff0c;区别、以及什么时候用线程什么时候用进程 1.1 概念 1.2 区别 1.3 选择 2、TCP/IP分几层&#xff0c;每层的核心任务是什么 1.tcp/ip模型 tcp&#xff1a; udp&#xff1a; tcp、udp的区别 tcp/udp的连接过程&#xff1a; 3、htt…

矩阵特殊打印方式

小伙伴们大家好&#xff0c;好几天没更新了&#xff0c;主要有个比赛。从今天起继续给大家更新&#xff0c;今天给大家带来一种新的题型&#xff1a;矩阵特殊打印方式。 螺旋打印矩阵 解题思路 首先给大家看一下什么是螺旋方式打印&#xff1a; 就像这样一直转圈圈。 我想大多…

Docker篇(Docker安装)

目录 一、Centos7.x 1. yum 包更新到最新 2. 安装需要的软件包 3. 设置 yum 源为阿里云 4. 安装docker 5. 安装后查看docker版本 6. 设置ustc镜像源 二、CentOS安装Docker 前言 1. 卸载&#xff08;可选&#xff09; 2. 安装docker 3. 启动docker 4. 配置镜像加速 …

计算机网络——路由器构成

算路由表是分布式去算——你算你的&#xff0c;我算我的 输出队列非先来先传 调度发生在哪里 缓存队列一般是应对——来数据方向的速度过快问题

C# 实现读取Excel文件并设置单元格计算公式再保存

背景&#xff1a;需求需要读取数据导出成Excel文件&#xff0c;并且其中有一列需要赋值为公式&#xff0c;用于用户自己修改数据自动计算 导出Excel&#xff0c;我用到开源包MiniExcel Gitee地址MiniExcel源码介绍&#xff0c;功能说明 Nuget安装 搜索MiniExcel 导出代码如下&a…

基于matlab的SVPWM逆变器死区补偿算法仿真研究

背景介绍&#xff1a; 三相脉宽调制(pulse width modulation&#xff0c;PWM)电压源逆变器(voltage source inverter&#xff0c;VSI)的死区效应可导致电机相电压和相电流畸变、零电流钳位效应以及转矩和转速脉动&#xff0c;系统性能降低。为提高系统运行性能&#xff0c;对V…

Spring Validation数据校检

文章目录 Spring Validation1 关于Spring Validation2 使用流程3 快速入门4 运行异常处理4.1 说明4.2 处理异常4.3 明确提示消息 5 常用注解5.1 NotNull注解5.2 NotEmpty 注解5.3 NotBlank 注解5.4 Size 注解5.5 Range 注解 6 非POJO参数校验6.1 使用流程6.2 使用示例 Spring V…

2024数据库国测揭晓:安全与可靠的新标准,你了解多少?

2024年数据库国测的结果&#xff0c;于9月份的最后一天发布了。 对于数据库行业的从业者来说&#xff0c;国测是我们绕不过去的坎儿。那么什么是国测&#xff1f;为什么要通过国测&#xff0c;以及国测的要求有哪些&#xff1f; 这篇文章带大家一探究竟。 国测 自愿平等、客…

前端入门一之CSS知识详解

前言 CSS是前端三件套之一&#xff0c;在MarkDown中也完美兼容这些语法&#xff1b;这篇文章是本人大一学习前端的笔记&#xff1b;欢迎点赞 收藏 关注&#xff0c;本人将会持续更新。 文章目录 Emmet语法&#xff1a;CSS基本语法&#xff1a;css语法结构只有3种&#xff1a…

虚拟现实和增强现实技术,如何打造沉浸式体验?

内容概要 在这个科技飞速发展的时代&#xff0c;虚拟现实&#xff08;VR&#xff09;与增强现实&#xff08;AR&#xff09;技术的结合就像调皮的小精灵&#xff0c;一下子把我们的生活变得神奇又有趣。想象一下&#xff0c;你正在游戏中与精灵搏斗&#xff0c;突然间身边的客…

EL面包屑导航实现

前言 el-breadcrumb 是 Element Plus 中的面包屑导航组件&#xff0c;主要用于展示当前页面在整个应用程序中的位置&#xff0c;并提供导航功能 https://element-plus.org/zh-CN/component/breadcrumb 基础用法 在 el-breadcrumb 中使用 el-breadcrumb-item 标签表示从首页开…

Qt 练习做一个登录界面

练习做一个登录界面 效果 UI图 UI代码 <?xml version"1.0" encoding"UTF-8"?> <ui version"4.0"><class>Dialog</class><widget class"QDialog" name"Dialog"><property name"ge…

c语言简单编程练习10

1、typedef和#define的区别 在用作数据类型替换时的区别&#xff1a; #include <stdio.h> #include <unistd.h>typedef char * A; //typedef需要&#xff1b; #define B char *int main(int argc, char *argv[]) {A a,b;B c,d;printf("a_size%ld\n"…

【spark的集群模式搭建】Standalone集群模式的搭建(简单明了的安装教程)

文章目录 1、使用Anaconda部署Python2、上传、解压、重命名3、创建软连接4、配置spark环境变量5、修改 spark-env.sh配置文件6、启动hdfs&#xff0c;创建文件夹7、修改spark-defaults.conf配置文件8、修改workers配置文件9、修改log4j.properties配置文件&#xff08;可选&…

ST-GCN模型实现花样滑冰动作分类

项目源码获取方式见文章末尾&#xff01; 600多个深度学习项目资料&#xff0c;快来加入社群一起学习吧。 《------往期经典推荐------》 项目名称 1.【基于CNN-RNN的影像报告生成】 2.【卫星图像道路检测DeepLabV3Plus模型】 3.【GAN模型实现二次元头像生成】 4.【CNN模型实现…

【RabbitMQ】03-交换机

1. 交换机 2. Fanout交换机 广播。生产者向exchange发消息 SpringBootTest public class SpringAmqpTest {Autowiredpublic RabbitTemplate rabbitTemplate;Testvoid testSimple() {String exchangName "hmall.fabout";rabbitTemplate.convertAndSend(exchangName…

【07】Maven项目多环境打包配置

&#xff08;1&#xff09;Web项目使用Maven进行多模块划分开发之后&#xff0c;面临一个问题&#xff0c;即如何加载不同环境的配置文件打包发布到不同的环境中&#xff1f; &#xff08;2&#xff09;不同的环境有开发环境、测试环境、线上生产环境等。 &#xff08;3&#x…

【Unity Shader】Special Effects(十)Change 变换(UI)

源码:[点我获取源码] 索引 Change 变换思路分析变换进度噪声纹理闪烁闪烁时机闪烁颜色闪烁动画Change 变换 变换的效果为图像间的切换带来动感过程,使用动画播放器: 思路分析 首先,从原始图像变换到目标图像是一个从0到1的过程,这个过程我们命名为变换进度(0为完全显…