当前位置:   article > 正文

微信小程序引入Vant Weapp修改样式不起作用,使用外部样式类进行覆盖_微信小程序修改vant样式

微信小程序修改vant样式

一、引入Vant Weapp后样式问题

        在项目中使用第三方组件修改css样式时,总是出现各种各样问题,修改的css样式不起作用,没有效果,效果不符合预期等。

  • 栗子(引入一个搜索框组件)
  • 实现效果:  左侧有一个搜索文字背景为蓝色,接着跟一个搜索框

wxml

  1. <view class="container">
  2. <view class="search">
  3. <view slot="action" bind:tap="onSearch" class="title">搜索</view>
  4. <van-search value="{{ value }}" placeholder="请输入搜索关键词" use-action-slot="true" bind:search="onSearch" class="input">
  5. </van-search>
  6. </view>
  7. </view>

wxss

  1. .container {
  2. width: 750rpx;
  3. height: 150rpx;
  4. background-color: bisque;
  5. display: flex;
  6. align-items: center;
  7. }
  8. .search {
  9. width: 680rpx;
  10. height: 64rpx;
  11. background: #03C5B0;
  12. border-radius: 68rpx 68rpx 68rpx 68rpx;
  13. display: flex;
  14. flex-direction: row;
  15. margin-top: 24rpx;
  16. margin-left: 32rpx;
  17. }
  18. .title {
  19. width: 80rpx;
  20. height: 64rpx;
  21. font-size: 28rpx;
  22. font-family: HarmonyOS Sans SC, HarmonyOS Sans SC;
  23. font-weight: 500;
  24. color: #FFFFFF;
  25. line-height: 33rpx;
  26. display: flex;
  27. align-items: center;
  28. justify-content: center;
  29. }
  30. .input {
  31. width: 600rpx;
  32. height: 64rpx;
  33. }

emmm...明明我们css都写了,这出现的是什么鬼

 

审查一下页面布局看看,这个我也没看懂,应该是组件自带的样式跟我们写的冲突了.(只是猜测)

二、样式覆盖

2.1 使用外部样式类

        那么我们要怎样覆盖掉原有的样式呢?

官方也有说明:

外部样式类的相关知识背景请查阅微信小程序文档

Vant Weapp 开放了大量的外部样式类供开发者使用,具体的样式类名称可查阅对应组件的“外部样式类”部分。

需要注意的是普通样式类和外部样式类的优先级是未定义的,因此使用时请添加!important以保证外部样式类的优先级。

 2.2 实现

wxml

  1. <view class="container">
  2. <view class="searchCopy">
  3. <view slot="action" bind:tap="onSearch" class="titleCopy">搜索</view>
  4. <van-search value="{{ value }}" placeholder="请输入搜索关键词" use-action-slot="true" bind:search="onSearch" custom-class="inputCopy">
  5. </van-search>
  6. </view>
  7. </view>

 wxss

  1. /* 样式覆盖 */
  2. .container {
  3. width: 750rpx;
  4. height: 150rpx;
  5. background-color: bisque;
  6. display: flex;
  7. align-items: center;
  8. }
  9. .searchCopy {
  10. width: 680rpx;
  11. height: 64rpx;
  12. background: #03C5B0;
  13. border-radius: 68rpx 68rpx 68rpx 68rpx;
  14. display: flex;
  15. flex-direction: row;
  16. margin-top: 24rpx;
  17. margin-left: 32rpx;
  18. }
  19. .titleCopy {
  20. width: 80rpx;
  21. height: 64rpx;
  22. font-size: 28rpx;
  23. font-family: HarmonyOS Sans SC, HarmonyOS Sans SC;
  24. font-weight: 500;
  25. color: #FFFFFF;
  26. line-height: 33rpx;
  27. display: flex;
  28. align-items: center;
  29. justify-content: center;
  30. }
  31. .inputCopy {
  32. width: 600rpx !important;
  33. height: 64rpx !important;
  34. }

 两种方式实现对比,效果立竿见影,看起来顺眼多了

 

:定义外部样式类css后一定要写!important

2.3 查看外部样式类

  每个组件最下方都表明了可覆盖的外部样式类

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/148873
推荐阅读
相关标签
  

闽ICP备14008679号