绑定class属性

v-bind:class="{样式名称:变量}"
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>class属性绑定</title>
		<script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
		<style type="text/css">
			.a {
				width: 200px;
				height: 200px;
				background-color: aliceblue;
			}
		</style>
	</head>
	<body>
		<div id="app">
			<div v-bind:class="{a: isactive}"></div>
		</div>
		<script type="text/javascript">
			new Vue({
				el: '#app',
				data:{
					isactive:true
				}
			})
		</script>
	</body>
</html>

Vue-样式绑定_js

绑定多个样式

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>class属性绑定</title>
		<script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
		<style type="text/css">
			.a {
				width: 200px;
				height: 200px;
				background-color: aliceblue;
			}
			.b {
				background-color: red;
			}
		</style>
	</head>
	<body>
		<div id="app">
			<div v-bind:class="{a: isactive,b:hasError}"></div>
			<hr >
			<div v-bind:class="{a: isactive,b:noError}"></div>
		</div>
		<script type="text/javascript">
			new Vue({
				el: '#app',
				data:{
					isactive:true,
					hasError:true,
					noError:false,
				}
			})
		</script>
	</body>
</html>

Vue-样式绑定_vue_02

绑定数据里的一个对象

v-bind:class="对象名"
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>class属性绑定</title>
		<script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
		<style type="text/css">
			.a {
				width: 200px;
				height: 200px;
				background-color: aliceblue;
			}
			.b {
				width: 200px;
				height: 200px;
				background-color: red;
			}
		</style>
	</head>
	<body>
		<div id="app">
			<div v-bind:class="class1"></div>
			<hr >
			<div v-bind:class="class2"></div>
		</div>
		<script type="text/javascript">
			new Vue({
				el: '#app',
				data:{
					class1:{
						a:true,
						b:false,
					},
					class2:{
						a:false,
						b:true,
					}
					
				}
			})
		</script>
	</body>
</html>

Vue-样式绑定_javascript_03

绑定一个数组

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>class属性绑定</title>
		<script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
		<style type="text/css">
			.a {
				width: 200px;
				height: 200px;
				background-color: aliceblue;
			}
			.b {
				width: 200px;
				height: 200px;
				background-color: red;
			}
		</style>
	</head>
	<body>
		<div id="app">
			<div v-bind:class="[c1]"></div>
			<hr >
			<div v-bind:class="[c1,c2]"></div>
		</div>
		<script type="text/javascript">
			new Vue({
				el: '#app',
				data:{
					c1:'a',
					c2:'b',
				}
			})
		</script>
	</body>
</html>

Vue-样式绑定_vue_04

通过三目运算符绑定

表达式 ? 代码1 :代码2
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>class属性绑定</title>
		<script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
		<style type="text/css">
			.a {
				width: 200px;
				height: 200px;
				background-color: aliceblue;
			}
			.b {
				width: 200px;
				height: 200px;
				background-color: red;
			}
		</style>
	</head>
	<body>
		<div id="app">
			<div v-bind:class="m ? 'a' : '' "></div>
			<hr >
			<div v-bind:class="m ? 'b' : '' "></div>
		</div>
		<script type="text/javascript">
			new Vue({
				el: '#app',
				data:{
					m:true
				}
			})
		</script>
	</body>
</html>

Vue-样式绑定_css_05

style内联样式

v-bind:style="{样式1,样式2,样式3..}"
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>class属性绑定</title>
		<script src="https://cdn.jsdelivr.net/npm/vue@2"></script>

	</head>
	<body>
		<div id="app">
		<div>xiaowang</div>
		<div style="font-size: 20px;color: red;">xiaowang</div>
		<div v-bind:style="{color:'blue',fontSize:'30px'}">xiaowang</div>
		<div v-bind:style="{color: Color,fontSize: Size+'px'}">xiaowang</div>
		</div>
		<script type="text/javascript">
			new Vue({
				el: '#app',
				data:{
					Color: 'blue',
					Size:25
				}
			})
		</script>
	</body>
</html>

Vue-样式绑定_html_06

style绑定样式对象

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>class属性绑定</title>
		<script src="https://cdn.jsdelivr.net/npm/vue@2"></script>

	</head>
	<body>
		<div id="app">
		<div>xiaowang</div>
		<div v-bind:style="s">xiaowang</div>
		</div>
		<script type="text/javascript">
			new Vue({
				el: '#app',
				data:{
					s:{
						color:"blue",
						fontSize:"30px"
					}
				}
			})
		</script>
	</body>
</html>

Vue-样式绑定_html_07

style绑定样式数组

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>class属性绑定</title>
		<script src="https://cdn.jsdelivr.net/npm/vue@2"></script>

	</head>
	<body>
		<div id="app">
		<div>xiaowang</div>
		<div v-bind:style="[s1,s2]">xiaowang</div>
		</div>
		<script type="text/javascript">
			new Vue({
				el: '#app',
				data:{
					s1:{color:"blue"},
					s2:{fontSize:"30px"}
				}
			})
		</script>
	</body>
</html>

Vue-样式绑定_vue_08