1. <!DOCTYPE html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
    7. <title>Document</title>
    8. <script src="./lib/vue.js"></script>
    9. <style>
    10. .red{
    11. /* 红色字体 */
    12. color: red;
    13. }
    14. .thin{
    15. /* 设置字体的粗细 200算细一点的 */
    16. font-weight: 200;
    17. }
    18. .italic{
    19. /*斜体 */
    20. font-style: italic;
    21. }
    22. .active{
    23. /* 间隔 */
    24. letter-spacing: 0.5em;
    25. }
    26. </style>
    27. </head>
    28. <body>
    29. <div id="app">
    30. <!-- <h1 class="thin red italic active">这个是一个文本</h1> -->
    31. <!-- 第一种方式 v-bind绑定,用数组,单引号引起来 -->
    32. <h1 :class="['thin','red']">这个是一个文本</h1>
    33. <!-- 第一种方式可以在数组里面使用三元表达式 条件?a:b 条件为真则执行a,假执行b flag ? 'red' : '' -->
    34. <h1 :class="['active',flag ? 'red' : '']">这个是一个文本</h1>
    35. <!-- 在数组中使用对象代替三元表达式,提高代码的可读性 {'red':flag}-->
    36. <h1 :class="['active',{'red':flag}]">这个是一个文本</h1>
    37. <!-- 直接使用对象,对象的属性是类名,对象的属性可以带引号,也可以不带引号,属性的值是一个表示符 -->
    38. <h1 :class="{red:false,active:true,italic:true}">这个是一个文本</h1>
    39. <h1 :class="classObj">这个是一个文本</h1>
    40. </div>
    41. <script>
    42. var vm=new Vue({
    43. el:'#app',
    44. data:{
    45. flag:true,
    46. classObj:{
    47. red: false,
    48. active: true,
    49. italic: true,
    50. thin:true
    51. }
    52. },
    53. methods:{}
    54. });
    55. </script>
    56. </body>
    57. </html>

    image.png