vue 3 class 和 style 綁定

1、Classes html 綁定

{樣式名稱:是否顯示判斷變量}。

對象

<div :class="{ active: isActive }"></div>
<div
  class="static"
  :class="{ active: isActive, 'text-danger': hasError }"
></div>

數(shù)組

數(shù)組由樣式名稱組成。

<div :class="[activeClass, errorClass]"></div>
data() {
  return {
    activeClass: 'active',
    errorClass: 'text-danger'
  }
}

<div :class="[isActive ? activeClass : '', errorClass]"></div>
<div :class="[{ active: isActive }, errorClass]"></div>

組件

const app = Vue.createApp({})

app.component('my-component', {
  template: `<p class="foo bar">Hi!</p>`
})
<div id="app">
  <my-component class="baz boo"></my-component>
</div>
<p class="foo bar baz boo">Hi</p>
<my-component :class="{ active: isActive }"></my-component>
<p class="foo bar active">Hi</p>

<div id="app">
  <my-component class="baz"></my-component>
</div>
const app = Vue.createApp({})

app.component('my-component', {
  template: `
    <p :class="$attrs.class">Hi!</p>
    <span>This is a child component</span>
  `
})

1、Styles html 綁定

對象

<div :style="{ color: activeColor, fontSize: fontSize + 'px' }"></div>
data() {
  return {
    activeColor: 'red',
    fontSize: 30
  }
}
<div :style="styleObject"></div>
data() {
  return {
    styleObject: {
      color: 'red',
      fontSize: '13px'
    }
  }
}

<div :style="[baseStyles, overridingStyles]"></div>
data() {
      return {
            baseStyles:'color:red',
           overridingStyles:'background: yellow;',        
   }
},

<div :style="{ display: ['-webkit-box', '-ms-flexbox', 'flex'] }"></div>

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容