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

  • 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;
    }
    
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章