elementui局部样式修改-学习分享——浅谈改变Element-ui组件默认css样式

2023-12-03 0 3,082 百度已收录

Element-ui是一个基于Vue.js的UI组件库。 它提供了功能强大、易于使用且实用的UI组件,使开发人员能够快速高效地创建现代Web应用程序。 是目前后端工程师最常用的组件库。 Element-ui足够精致和简单elementui局部样式修改,而根据不同的需求,我们经常要对Element-ui的CSS样式进行更改,而更改其CSS样式也是一个棘手的问题。

这里,我们分享3种改变Element-ui默认样式的方法。

01.参考Element-ui官方API文档

对于某些组件,官网提供了更改样式的API。 我们可以根据API指定组件的样式。

优点:官方,保证改不会出错。

elementui局部样式修改-学习分享——浅谈改变Element-ui组件默认css样式

缺点:支持的组件较少​​,支持的样式不够全面。

02..vue 文件的更改

这些方法都是给vue文件添加新的样式标签。

用于更改某些特定组件样式,但不会全局应用。

例如,某个.vue文件需要非常定制的表格组件,而其他文件则需要使用原始样式。

这样,我们最好的解决方案就是在.vue文件中添加新的样式标签。

在此更改表格的默认样式。

<template>
 <div class="my-class">
            <el-table>
            </el-table>
        </div>
</template>

<script>
</script>

<style scoped="scoped" lang="scss">
</style>

<style>
 
    /* 修改Element-ui中table组件的样式 */

    .my-class__expand-column .cell {
            display: none;
}

  // 修改 Element-ui 中 table 组件的样式
    .my-class .el-table tbody tr:hover>td {
            cursor: pointer;
    }

  // 在 el-form 元素中添加一个 el-form-item 元素,并在该元素中添加一个 el-input__inner 元素,设置该元素的 focus 样式  
    .my-class .el-form .el-form-item  .el-input__inner:focus{
             border: 1px solid #3D66E4;
       }

   
</style>

必须添加一个唯一的作用域elementui局部样式修改,就是最里面的类名,比如上面的my-class。 它限制当前表格的样式更改仅在该类及其子元素中生效。 否则,表格的样式仍然会被全局覆盖。

还可以将class替换为id,这样可以保证类名不会冲突。

<template>
 <div id="my-class">
            <el-table>
            </el-table>
        </div>
</template>

<style>
 
    /* 修改Element-ui中table组件的样式 */

    #my-class__expand-column .cell {
            display: none;
    }

    #my-class .el-table tbody tr:hover>td {
            cursor: pointer;
    }


    #my-class .el-form .el-form-item  .el-input__inner:focus{
             border1px solid #3D66E4;
       }

  
</style>

elementui局部样式修改-学习分享——浅谈改变Element-ui组件默认css样式

这些方法的用处在于我们可以动态绑定各个类。

<template>
 <div id="my-class">
            <el-table :class="my-table">
    
        
            </el-table>
        </div>
</template>

<style>
 
    /* 修改Element-ui中table组件的样式 */

    #my-class__expand-column .cell {
            display: none;
    }

    #my-class .el-table tbody tr:hover>td {
            cursor: pointer;
    }


    #my-class .el-form .el-form-item  .el-input__inner:focus{
             border1px solid #3D66E4;
       }

    #my-class .my-table {
        /* 在 id 为"my-class"的 div 中添加.my-table 类,用于指定 el-table 组件的样式 */  
    border-collapse: collapse;  
    width100%;  
    }

</style>

优势:

(1)灵活定制、动态绑定

(2)全局不会改变。

缺点:您需要指定唯一的类范围。

03.改变组件的样式

对于很少使用但需要动态绑定属性的单个组件,我们可以使用这种方法,但不保证它一定有效。

比如对于这个组件,我们可能需要给它绑定一些动态的样式属性,这样我们就可以给它绑定样式。

 <el-backtop target="" :bottom="100" >
   <div :style="{
             height: 100%;
             width: _width;
             background-color: #f2f5f6;
             box-shadow: 0 0 6px rgba(0,0,0, .12);
             text-align: center;
             line-height: 40px;
             color: #1989fa;
             border-radius: 50%;
           }"
>


                        <i class="el-icon-caret-top"></i>
                </div>
        </el-backtop>
        
        
        data() {
           
         return{
           _width: 50%
         }
        }

优势:

(1)直观:通过改变组件的样式,可以直观地看到改变的效果,易于理解和调试。

elementui局部样式修改-学习分享——浅谈改变Element-ui组件默认css样式

(2)可复用性:如果将改变的样式封装成插件,可以方便地在其他组件中复用,提高代码的复用性和可维护性。

(3)简单易懂:element-ui的样式采用语义CSS,易于理解和更改,也易于初学者使用。

缺点:

(1)可能影响性能:改变组件的样式会重新加载CSS文件,这可能会影响页面加载速度。

(2)不灵活:通过改变样式来改变组件的样式有一定的局限性。 如果需要更灵活的控制,可能需要对element-ui的代码和架构有更深入的了解。

(3)不适合复杂场景:对于一些复杂场景,可能需要更精确的控制,改变组件的样式可能不适用。

以上就是三个Element-ui组件样式的变化。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悟空资源网 elementui elementui局部样式修改-学习分享——浅谈改变Element-ui组件默认css样式 https://www.wkzy.net/game/199264.html

常见问题

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务