首页 >web前端 >js教程 >vue.js样式绑定问题

vue.js样式绑定问题

一个新手
一个新手原创
2017-09-25 11:00:071273浏览


  • class 与 style 是 HTML 元素的属性,用于设置元素的样式,我们可以用 v-bind 来设置样式属性。

  • 以下例子,把class样式设置在style标签中,vue实例中只存在一个布尔值isActive ,用v-bind:class=”{ active: isActive }”的方式绑定样式,根据布尔值来决定是否渲染。

<style>.active {    
    width: 100px;    
    height: 100px;    
    background: green;}</style><p id="app">
  <p v-bind:class="{ active: flag}"></p></p><script>new Vue({
  el: &#39;#app&#39;,
  data: {
    flag: true
  }
})
</script>
  • 绑定多个class

 v-bind:class="{ active: isActive, &#39;text-danger&#39;: hasError }">
  • 以对象形式绑定多个class

<p id="app">
  <p v-bind:class="classObject"></p></p><script>new Vue({
  el: &#39;#app&#39;,
  data: {
    classObject: {
      active: true,      
      &#39;text-danger&#39;: true
    }
  }
})
</script>
  • 以数组的方式绑定样式

<p id="app">
    <p v-bind:class="[activeClass, errorClass]"></p></p><script>new Vue({
  el: &#39;#app&#39;,
  data: {
    activeClass: &#39;active&#39;,
    errorClass: &#39;text-danger&#39;
  }
})
</script>
  • 内联样式的绑定

<p id="app">
    <p v-bind:style="{ color: activeColor, fontSize: fontSize + &#39;px&#39; }">菜鸟教程</p></p><script>new Vue({
  el: &#39;#app&#39;,
  data: {
    activeColor: &#39;green&#39;,
    fontSize: 30
  }
})
  • 用对象方式绑定内联样式

<p id="app">
  <p v-bind:style="styleObject">菜鸟教程</p></p><script>new Vue({
  el: &#39;#app&#39;,
  data: {
    styleObject: {
      color: &#39;green&#39;,
      fontSize: &#39;30px&#39;
    }
  }
})
</script>

以上是vue.js样式绑定问题的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn