【Vue 从入门到实战 进阶式掌握完整知识体系】005
【Vue 从入门到实战 进阶式掌握完整知识体系】005
5、样式绑定语法通过动态绑定 class 属性来控制样式的展示代码语言:javascript代码运行次数:0运行复制<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
&
【Vue 从入门到实战 进阶式掌握完整知识体系】005
5、样式绑定语法
通过动态绑定 class 属性来控制样式的展示
代码语言:javascript代码运行次数:0运行复制<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>hello vue</title>
<!-- 引入Vue库 -->
<script src="@next"></script>
<!-- 样式 -->
<style>
.red{
color: red;
}
.green{
color: green;
}
</style>
</head>
<body>
<div id="root"></div>
</body>
<script>
ct app = ({
data() {
return {
message: "Hello World!",
color: 'red'
}
},
template: `
<div :class='color'>
{{ message }}
</div>
`
});
ct vm = ('#root');
</script>
</html>
运行结果
通过 class 对象来控制样式的展示
代码语言:javascript代码运行次数:0运行复制<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>hello vue</title>
<!-- 引入Vue库 -->
<script src="@next"></script>
<!-- 样式 -->
<style>
.red{
color: red;
}
.green{
color: green;
}
</style>
</head>
<body>
<div id="root"></div>
</body>
<script>
ct app = ({
data() {
return {
message: "Hello World!",
color: 'red',
colorObject: {red: false, green: true}
}
},
template: `
<div :class='colorObject'>
{{ message }}
</div>
`
});
ct vm = ('#root');
</script>
</html>
运行结果
通过 class 数组来控制样式的展示
代码语言:javascript代码运行次数:0运行复制<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>hello vue</title>
<!-- 引入Vue库 -->
<script src="@next"></script>
<!-- 样式 -->
<style>
.red{
color: red;
}
.green{
color: green;
}
</style>
</head>
<body>
<div id="root"></div>
</body>
<script>
ct app = ({
data() {
return {
message: "Hello World!",
color: 'red',
colorObject: {red: false, green: true},
// 时间:2021年06月15日 15时57分52秒
// 补充:注意,这里的红和绿同时生效了,绿是第二个属性值,所以将红覆盖了
colorArray: ['red', 'green', {big: true, small: true}]
}
},
template: `
<div :class='colorArray'>
{{ message }}
</div>
`
});
ct vm = ('#root');
</script>
</html>
运行结果
控制子组件样式的展示
代码语言:javascript代码运行次数:0运行复制<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>hello vue</title>
<!-- 引入Vue库 -->
<script src="@next"></script>
<!-- 样式 -->
<style>
.red {
color: red;
}
.green {
color: green;
}
</style>
</head>
<body>
<div id="root"></div>
</body>
<script>
ct app = ({
data() {
return {
message: "Hello World!",
color: 'red',
colorObject: { red: false, green: true },
colorArray: ['red', 'green', { big: true, small: true }]
}
},
template: `
<div :class='color'>
{{ message }}
<demo1></demo1>
<demo2 class='green'></demo2>
<demo class='green'></demo>
</div>
`
});
// 最外层一个标签:可以在标签内定义 class
appponent('demo1', {
template: `
<div class="green">zibo1</div>
`
});
// 最外层一个标签:可以在使用子组件标签上定义 class
appponent('demo2', {
template: `
<div>zibo2</div>
`
});
// 最外层多个标签,无法在使用子组件标签上定义 class
// 会报错:[Vue warn]: Extraneous non-props attributes (class)
// were passed to component but could not be automatically inherited
// because component renders fragment or text root nodes.
// at <Demo class="green" > at <App>
appponent('demo', {
template: `
<div>zibo1</div>
<div>zibo2</div>
`
});
ct vm = ('#root');
</script>
</html>
运行结果
demo问题解决
代码语言:javascript代码运行次数:0运行复制<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>hello vue</title>
<!-- 引入Vue库 -->
<script src="@next"></script>
<!-- 样式 -->
<style>
.red {
color: red;
}
.green {
color: green;
}
</style>
</head>
<body>
<div id="root"></div>
</body>
<script>
ct app = ({
data() {
return {
message: "Hello World!",
color: 'red',
colorObject: { red: false, green: true },
colorArray: ['red', 'green', { big: true, small: true }]
}
},
template: `
<div :class='color'>
{{ message }}
<demo1></demo1>
<demo2 class='green'></demo2>
<demo class='green'></demo>
</div>
`
});
// 最外层一个标签:可以在标签内定义 class
appponent('demo1', {
template: `
<div class="green">zibo1</div>
`
});
// 最外层一个标签:可以在使用子组件标签上定义 class
appponent('demo2', {
template: `
<div>zibo2</div>
`
});
// 最外层多个标签,无法在使用子组件标签上定义 class
// 会报错:[Vue warn]: Extraneous non-props attributes (class)
// were passed to component but could not be automatically inherited
// because component renders fragment or text root nodes.
// at <Demo class="green" > at <App>
// 下面把这个问题解决了:绑定父标签的属性值
appponent('demo', {
template: `
<div :class="$">zibo1</div>
<div :class="$">zibo2</div>
`
});
ct vm = ('#root');
</script>
</html>
运行结果
动态绑定样式内容
代码语言:javascript代码运行次数:0运行复制<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>hello vue</title>
<!-- 引入Vue库 -->
<script src="@next"></script>
</head>
<body>
<div id="root"></div>
</body>
<script>
ct app = ({
data() {
return {
message: "Hello World!",
myStyle: {color: 'red'},
// 也可以这么写
myStyle2: 'color: red;'
}
},
template: `
<div :style='myStyle'>
{{ message }}
</div>
`
});
ct vm = ('#root');
</script>
</html>
运行结果
#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格
上传时间: 2025-07-23 18:32:02
上一篇:Java常用函数式接口
下一篇:Java网络编程
推荐阅读
留言与评论(共有 18 条评论) |
本站网友 给脸不要脸 | 6分钟前 发表 |
` <div class="green">zibo1</div> ` }); // 最外层一个标签:可以在使用子组件标签上定义 class appponent('demo2' | |
本站网友 嘉兴酒店 | 28分钟前 发表 |
` <div class="green">zibo1</div> ` }); // 最外层一个标签:可以在使用子组件标签上定义 class appponent('demo2' | |
本站网友 桂峰山 | 12分钟前 发表 |
color | |
本站网友 厦门信息网 | 29分钟前 发表 |
class="$">zibo2</div> ` }); ct vm = ('#root'); </script> </html>运行结果image-20210612185620777.png动态绑定样式内容代码语言:javascript代码运行次数:0运行复制<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width | |
本站网友 廉租房政策 | 1分钟前 发表 |
class='color'> {{ message }} <demo1></demo1> <demo2 class='green'></demo2> <demo class='green'></demo> </div> ` }); // 最外层一个标签:可以在标签内定义 class appponent('demo1' | |
本站网友 wet | 8分钟前 发表 |
Extraneous non-props attributes (class) // were passed to component but could not be automatically inherited // because component renders fragment or text root nodes. // at <Demo class="green" > at <App> // 下面把这个问题解决了:绑定父标签的属性值 appponent('demo' | |
本站网友 上吊 | 13分钟前 发表 |
red; } .green { color | |
本站网友 曾振国 | 12分钟前 发表 |
{ big | |
本站网友 贵定吧 | 1分钟前 发表 |
{ red | |
本站网友 三春 | 3分钟前 发表 |
` <div>zibo2</div> ` }); // 最外层多个标签 | |
本站网友 万卷经书曾读过 | 0秒前 发表 |
true }] } } | |
本站网友 武汉肝病医院 | 6分钟前 发表 |
initial-scale=1.0"> <title>hello vue</title> <!-- 引入Vue库 --> <script src="@next"></script> <!-- 样式 --> <style> .red{ color | |
本站网友 什么时候练瑜伽最好 | 3分钟前 发表 |
colorArray | |
本站网友 casshern | 8分钟前 发表 |
"Hello World!" | |
本站网友 陈树军 | 15分钟前 发表 |
分享自作者个人站点/博客 | |
本站网友 清热解毒片 | 5分钟前 发表 |
'green' | |
本站网友 生化危机恶化高清 | 19分钟前 发表 |
true }] } } |