欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

修改ElementUI的默认样式的几种方式

程序员文章站 2022-04-22 21:57:14
...
  • ElementUI 是一套ui组件库,目前最新版本 react 和 vue 等主流框架都有支持。该库默认主题色是天蓝色,若用于项目开发,难免遇到要需求修改其默认样式的情况,本文就基于 react 和 vue 框架介绍几种修改 ElementUI 默认样式的办法。

Vue

(一)内嵌法修改样式
  • 通过:style修改,用于局部组件块:
    <el-button :style="selfstyle">默认按钮</el-button>
    <script>
    	export default {
    		data() {
    			return {
    				selfstyle: {
    					color: "white",
    					marginTop: "10px",
    					width: "100px",
    					backgroundColor: "cadetblue"
    				}
    			};
    		}
    	}
    </script>
    
(二):class引用修改样式
  • 通过:class修改,用于局部组件块:
    <el-button :class="[selfbutton]">默认按钮</el-button>
    <script>
    	export default {
    		data() {
    			return {
    				selfbutton: "self-button"
    			};
    		}
    	}
    </script>
    <style lang="stylus" rel="stylesheet/stylus" scoped>
    	.self-button {
    		color: white;
    		margin-top: 10px;
    		width: 100px;
    		background-Color: cadetblue;
    	}
    </style>
    
(三)import导入修改样式
  • 通过import导入样式文件,若在main.js中导入css 则表示全局引用。既可以用于局部组件块也可以用于全局组件:
    <el-button>和下面的el-button效果一样</el-button>
    <el-button :class="[selfbutton]">默认按钮</el-button>
    <script>
    	import './button.css'
    	export default {}
    </script>
    <style lang="stylus" rel="stylesheet/stylus" scoped></style>
     
    /* button.css */ 
    .el-button {
    	color: white;
    	margin-top: 10px;
    	width: 100px;
    	background-Color: cadetblue;
    }
     
    .self-button {
    	color: white;
    	margin-top: 10px;
    	width: 100px;
    	background-Color: cadetblue;
    }
     
    .self-button:hover {
    	color: black;
    	background-Color: whitesmoke;
    }
    

React

(一)内嵌法修改样式
  • 内嵌
    import { Button } from 'element-react';
     
    function app(){
    	render() {
    		const style = {
    			color: "white",
    			marginTop: "10px",
    			width: "100px",
    			backgroundColor: "cadetblue"
    		}
    		return(
    	            <div>
            		    <Button style={style}>Hello</Button>
          		    </div>
    		);
    	}
    }
    
(二)提升优先级修改样式
  • 导入样式文件,通过className引用样式,样式文件中需要使用!import提高优先级,否则无效。
    import '../style/button.css'
    import { Button } from 'element-react';
     
    function App(){
    	render() {
    		return(
    			<div>
                                <Button>和下面的Button效果一样</Button>
    	    		    <Button className="self-button">Hello</Button>
    	  		</div>
    		);
    	}
    }
     
    /* button.css */
    .el-button {
    	color: white!important;
    	margin-top: 10px!important;
    	width: 100px!important;
    	background-Color: cadetblue!important;
    }
     
    .self-button {
    	color: white!important;
    	margin-top: 10px!important;
    	width: 100px!important;
    	background-Color: cadetblue!important;
    }
     
    .self-button:hover {
    	color: black!important;
    	background-Color: whitesmoke!important;
    }