去除 el-input 输入框的边框(element-ui@2.15.13)

复制代码
dgq@dgqdeMac-mini spid-admin % yarn list --pattern element-ui
yarn list v1.22.22
└─ element-ui@2.15.13
✨  Done in 0.23s.

dgq@dgqdeMac-mini spid-admin % yarn list vue
yarn list v1.22.22
warning Filtering by arguments is deprecated. Please use the pattern option instead.
└─ vue@2.7.14
✨  Done in 0.24s.
html 复制代码
<el-input
  v-model="form.invitor"
  placeholder="PC端的自动取当前账号的手机号"
  readonly
  class="no-border-input"
/>

::v-deep 是一个与 Scoped 样式配合使用的特殊选择器,用于深度选择子组件的内部元素。默认情况下,在 Vue 的 Scoped 样式中,CSS 规则仅限于当前组件的范围内,无法直接作用于子组件的内部元素。而 ::v-deep 允许您突破这一限制,修改子组件内部的样式。

当您不使用 ::v-deep 时,样式只能应用于当前组件的 HTML 结构。即使您在 el-input 上添加了 no-border-input 类,样式也无法深入到 el-input 组件内部去除边框。

使用 ::v-deep 后,样式规则可以穿透组件边界,直接影响内部元素的样式。因此,通过添加 ::v-deep,您能够成功地去除 el-input 组件内部的边框。

css 复制代码
::v-deep(.no-border-input .el-input__inner) {
  border: none;
  box-shadow: none;
}

希望这解释清楚了为什么需要使用 ::v-deep 来实现样式的深度选择。

相关推荐
小兵张健3 小时前
开源 playwright-pool 会话池来了
前端·javascript·github
codingWhat7 小时前
介绍一个手势识别库——AlloyFinger
前端·javascript·vue.js
Lee川7 小时前
深度拆解:基于面向对象思维的“就地编辑”组件全模块解析
javascript·架构
进击的尘埃7 小时前
Web Worker 与 OffscreenCanvas:把主线程从重活里解放出来
javascript
踩着两条虫7 小时前
VTJ.PRO 双向代码转换原理揭秘
前端·vue.js·人工智能
codingWhat7 小时前
手撸一个「能打」的 React Table 组件
前端·javascript·react.js
进击的尘埃7 小时前
用 TypeScript 的 infer 搓一个类型安全的深层路径访问工具
javascript
yuki_uix7 小时前
Object.entries:优雅处理 Object 的瑞士军刀
前端·javascript
Lee川7 小时前
JavaScript 面向对象编程全景指南:从原始字面量到原型链的终极进化
javascript·面试
SuperEugene11 小时前
Vue生态精选篇:Element Plus 的“企业后台常用组件”用法扫盲
前端·vue.js·面试