Vue.js基础-06-绑定样式(v-bind)-02-绑定内联样式(v-bind:style)

1. 绑定样式对象

语法示例

  • 绑定对象
  <div id="app">
    <div v-bind:style="{ color: activeColor, fontSize: fontSize + 'px' }">xxxxxx</div>
  </div>
  • 在vue实例中定义样式
      data: {
    
    
        activeColor: 'green',
        fontSize: 30
      }

完整示例

  • 代码
<!DOCTYPE html>
<html>

<head>
  <meta charset="utf-8">
  <title>CROW-宋</title>
  <script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
</head>

<body>
  <div id="app">
    <div v-bind:style="{ color: activeColor, fontSize: fontSize + 'px' }">碧玉妆成一树高</div>
  </div>

  <script>
    new Vue({
      
      
      el: '#app',
      data: {
      
      
        activeColor: 'green',
        fontSize: 30
      }
    })
  </script>
</body>

</html>
  • 显示结果
    在这里插入图片描述

2. 直接绑定样式对象

语法示例

  • 绑定样式对象
<div v-bind:style="styleObject">xxxxx</div>
  • vue实例中定义样式对象
  data: {
    
    
    styleObject: {
    
    
      color: 'green',
      fontSize: '30px'
    }
  }

完整示例

  • 代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CROW-宋</title>
<script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
</head>
<body>
<div id="app">
  <div v-bind:style="styleObject">碧玉妆成一树高</div>
</div>

<script>
new Vue({
      
      
  el: '#app',
  data: {
      
      
    styleObject: {
      
      
      color: 'green',
      fontSize: '30px'
    }
  }
})
</script>
</body>
</html>
  • 结果显示
    在这里插入图片描述

3. 绑定多个样式对象

完整示例

<html>

<head>
  <meta charset="utf-8">
  <title>CROW-宋</title>
  <script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
</head>

<body>
  <div id="app">
    <div v-bind:style="[baseStyles, overridingStyles]">碧玉妆成一树高</div>
  </div>

  <script>
    new Vue({
      
      
      el: '#app',
      data: {
      
      
        baseStyles: {
      
      
          color: 'green',
          fontSize: '30px'
        },
        overridingStyles: {
      
      
          'font-weight': 'bold'
        }
      }
    })
  </script>
</body>

</html>
  • 结果显示
    在这里插入图片描述

覆盖顺序

  • 和vue实例中定义样式的顺序无关
  • 和绑定的数组中成员顺序有关

如果如下修改,字将是绿色的:

    <div v-bind:style="[overridingStyles,baseStyles]">碧玉妆成一树高</div>

猜你喜欢

转载自blog.csdn.net/xingzuo_1840/article/details/124809720