Vue開發中覆蓋element-ui原有的樣式


Vue開發中覆蓋element-ui原有組件樣式

  項目在開發Vue的時候用的UI庫是element-ui,在某個需求我需要自己嘗試去修改element-ui中內置組件的樣式。

  為了嘗試覆蓋,我做了以下的操作:

    1、使用自定義的類名,最終在實現效果的時候還是不可以,打開F12檢查模式,發現還是類名沒有附加上去,但是沒實現,不甘心失敗的我繼續看看能不能怎么解決

    2、使用組件自身攜帶的類名,例如el-button這樣直接覆蓋,發現還是不行,推測是因為內置屬性使用了父元素等,也就是他的權重計算比我寫的高

    3、使用深度作用選擇器 >>> 或者 /deep/

    注:>>>和 /deep/兩個是一樣的功能

    使用方法:在自定義類名中使用,如圖示  

 

 

     但是我在使用>>>這個的時候是沒辦法生效的,初步推測是因為CSS預處理器的原因,因為之前使用的LESS預處理器是沒有這問題,我這里是使用的是SCSS預處理器。

   為了防止不生效,我在每一個樣式后面都加了!important,這樣下來,我需要的樣式就正常顯示了,下面是沒修改前和修改后的樣式對比:

 

  題外話:scoped是什么標簽屬性?為什么Vue-CLI在創建Vue文件的時候會在每一個style樣式里面寫上scoped屬性。

 


免責聲明!

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



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