Vue class与style绑定
刚开始学习vue,下面是一些小结
关于class与style绑定的官网地址:https://cn.vuejs.org/v2/guide/class-and-style.html
一、对象的写法绑定class
第一种对象写法:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript" src="vue.js" charset="UTF-8"></script>
</head>
<body>
<div id="test">
<div v-bind:class="classObject">fasd</div>
</div>
<script>
var watchExampleVM = new Vue({
el:"#test",
data: {
classObject: {
active: true,
'text-danger': true
}
}
})
</script>
<style type="text/css">
.active {
font-size: 1.875rem;
color: red;
}
</style>
</body>
</html>
该写法较第二种简便,故此推荐!
第二种对象写法:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript" src="vue.js" charset="UTF-8"></script>
</head>
<body>
<div id="test">
<div v-bind:class="{ entity: classObject.textdanger , haha: classObject.active}">fasd</div>
</div>
<script>
var watchExampleVM = new Vue({
el:"#test",
data: {
classObject: {
active: true,
textdanger: true
}
}
})
</script>
<style type="text/css">
.haha{
color: green;
text-align: center;
}
.entity {
font-size: 100px;
}
</style>
</body>
</html>
二、数组的写法绑定class
第一种数组写法:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript" src="vue.js" charset="UTF-8"></script>
</head>
<body>
<div id="test">
<div v-bind:class="[active, textdanger]">fasd</div>
</div>
<script>
var watchExampleVM = new Vue({
el:"#test",
data: {
active: 'haha',
textdanger: 'entity'
}
})
</script>
<style type="text/css">
.haha{
color: green;
text-align: center;
}
.entity {
font-size: 100px;
}
</style>
</body>
</html>
第二种三元运算符写法:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript" src="vue.js" charset="UTF-8"></script>
</head>
<body>
<div id="test">
<div v-bind:class="[active ? 'haha' : '', textdanger]">fasd</div>
</div>
<script>
var watchExampleVM = new Vue({
el:"#test",
data: {
active: true,
textdanger: 'entity'
}
})
</script>
<style type="text/css">
/* .active {
font-size: 1.875rem;
color: red;
} */
.haha{
color: green;
text-align: center;
}
.entity {
font-size: 100px;
}
</style>
</body>
</html>
三、对象的写法绑定style
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript" src="vue.js" charset="UTF-8"></script>
</head>
<body>
<div id="test">
<div v-bind:style="styleObject">test</div>
</div>
<script>
var watchExampleVM = new Vue({
el:"#test",
data: {
styleObject: {
color: 'red',
fontSize: '20px'
}
}
})
</script>
<style type="text/css">
</style>
</body>
</html>
四、数组的写法绑定style
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript" src="vue.js" charset="UTF-8"></script>
</head>
<body>
<div id="test">
<div v-bind:style="[styleObject , styleObject2]">test</div>
</div>
<script>
var watchExampleVM = new Vue({
el:"#test",
data: {
styleObject: {
color: 'red',
},
styleObject2: {
fontSize: '20px'
}
}
})
</script>
<style type="text/css">
</style>
</body>
</html>