vue关于:deep穿透样式的理解

情况一

子组件:

 <div class="child">
    <div class="test_class">test_class
      <div class="test1">test1
        <div class="test2">test2
        </div>
      </div>
    </div>
  </div>

父组件:

.child {
  color: red;

  :deep(.test_class) {
    color: blue;
  }
}

编译结果:
在这里插入图片描述
父组件只给子组件的顶层元素加hash
在这里插入图片描述
css中也是只在child后面加hash,所以命中样式生效
在这里插入图片描述

情况二

去掉:deep看看什么情况
子组件:

 <div class="child">
    <div class="test_class">test_class
      <div class="test1">test1
        <div class="test2">test2
        </div>
      </div>
    </div>
  </div>

父组件:

.child {
  color: red;

 .test_class {
    color: blue;
  }
}

编译结果:
在这里插入图片描述
在这里插入图片描述
样式编译成.child .test_class[data-v-04d490df]了,这个样式为什么不能命中,因为data-v-04d490df属性只在类名为child的div上有
在这里插入图片描述
总结:父组件的只会给子组件的顶层元素加hash值,而子组件会给子组件的所有元素加自己的hash

相关推荐

  1. 前端中css穿透样式deep用法

    2024-06-16 18:36:04       10 阅读
  2. vue使用样式渗透/deep/ :deep() :global()

    2024-06-16 18:36:04       18 阅读
  3. Element Plusdeep穿透

    2024-06-16 18:36:04       12 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-16 18:36:04       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-16 18:36:04       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-16 18:36:04       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-16 18:36:04       18 阅读

热门阅读

  1. Linux 使用chown修改文件所属用户 用户组

    2024-06-16 18:36:04       10 阅读
  2. 网络熔断机制(Circuit Breaker)

    2024-06-16 18:36:04       8 阅读
  3. 使用python获取内存信息

    2024-06-16 18:36:04       11 阅读
  4. 分布式事务之TCC

    2024-06-16 18:36:04       6 阅读
  5. 抉择与未来:计算机专业的选择与发展展望

    2024-06-16 18:36:04       7 阅读
  6. 数据仓库和数据库的区别

    2024-06-16 18:36:04       7 阅读
  7. 中介子方程十九

    2024-06-16 18:36:04       8 阅读
  8. WPF 使用Image控件显示图片

    2024-06-16 18:36:04       6 阅读