antd-vue在vue中樣式無法修改


方法一:

  直接取消scoped

  • scoped的作用是防止樣式沖突,當前頁面/組件寫的類名與對應的樣式只會作用在當前的頁面/組件
  • 取消了scoped以后,頁面的樣式將會作用到全局。
  • 這樣會帶來的問題是,如果當前組件/頁面的類名和其他頁面的類名沖突的話會導致頁面間樣式沖突。最容易出現的問題就是:
    • 當打開某個頁面,樣式正常,但是跳轉到某個固定頁面后再回到這個頁面時,頁面的樣式很可能被那個特定的頁面覆蓋。
    • 這樣出現的BUG如果不熟悉代碼的人,很難復現該BUG,也就難以修復

方法二:

  在當前頁面/組件重新寫一個style標簽,專門用來寫改寫UI庫中的樣式。這樣也會出現方法一中的問題。但是想要樣式不沖突。可以使用如下的方法:

  • 使用scss/less等預編譯方法,通過父子標簽間的關系寫樣式,這樣編譯后的css樣式將會按照父子標簽間的層級關系展示,父標簽命名得當完全可以避免組件/頁面間樣式沖突的問題

方法三:

  直接在scoped內寫樣式,根據父子標簽的關系使用深度選擇器:

如在less預編譯語言中:

.father{
    /deep/ .child{
        color:red;
    }
}

在scss預編譯中:

.father {
    >>> .son{
        color:red;
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM