微信小程序 · 组件样式效果 · 坑

本文介绍了微信小程序中Swiper组件样式修改的方法,包括如何改变分页器默认样式,提供了两种实现目标效果的解决方案。同时,还讨论了地图组件Marker的callout和label属性的区别,并给出相关代码示例。在实际操作中需要注意颜色格式和尺寸单位的限制,以及真机调试中可能遇到的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

小程序入门 -- 那些年我们踩过的坑

swiper组件

    1.改变 swiper上 分页器/指示器/小圆点 /面板指示点/indicator-dots 的默认样式

默认样式效果

目标效果

 

 

  • 方法1:

            原理:改变微信小程序自带的样式,自带样式是用伪元素写的

  wxss

//所有指示点的父类
.customize .wx-swiper-dots-horizontal{
   
}
//单个指示点样式
.customize .wx-swiper-dot{
    width:40rpx;
    display: inline-flex;
    height: 10rpx; 
    margin-left: 20rpx;
    justify-content:space-between;
}
//此类必须有,伪元素
.customize .wx-swiper-dot::before{
    content: ''; //此属性必须有,不然显示不出
    width: 20rpx;
    height: 10rpx;
    flex-grow: 1;
    background-color: red;
}
//当前指示点样式
.customize .wx-swiper-dot-active::before{
    background-color: #fff;
}

wxml

<swiper indicator-dots="true" class="customize" autoplay="true">
     <block wx:for="{{background}}" wx:key="*this">
         <swiper-item>
            <view class="swiper-item {{item}}"></view>
         </swiper-item>
      </block>
</swiper>

 

        方法1 源链接(有代码)

 

 

  • 方法2

        原理:将swiper标签的indicator-dots属性设为false(设置为无指示点),再用view组件模拟dots

        此处不放代码了

        方法2 源链接(有代码)

        2.   3d轮播效果(待续)

设置自定义的小程序顶部导航栏

目标效果

默认效果

原理: app.json配置中window属性的navigationStyle设置为custom,即可去除顶部导航栏,下面的内容会顶到页面最上端(放图片放文字放啥都行)

注意:顶部状态栏要与底部颜色搭配(黑底配白字,白底配黑字)

map地图组件

文档说得不够详细

marker属性的callout属性和label属性的区别:

callout可设置点击可见/一直可见  |  label则是一直可见无法隐藏

callout不可设置位置,都是悬浮在mark 的icon上方  |  label可设置位置,以marker为原点设置相对位置

callout不可设置边框  |  label可以

注意:

color/bgColor/borderColor 的值必须为“#ffffff”形式,不接受缩写(eg:“#fff”)、rgba、和(“red”/“blue”/“black”)这种形式

padding等属性接受类型为Number,不能+单位

content内可接受换行 ,/n 转义符可换行

附上一段例子

callout

代码

callout: {
          content: "公司地址\n南山科技园 >>",
          color: "#333333",
          fontSize: 16,
          borderRadius: 5,
          bgColor: "#ffffff",
          padding: 20,
          textAlign: "left",
          display: "ALWAYS"
      }

效果

label

label: {
          content: "公司地址\n南山科技园 >>",
          color: "#333333",
          fontSize: 16,
          bgColor: "#ffffff",
          borderWidth:  3,
          borderColor: "#999999",
          borderRadius: 5,
          padding: 20,
          textAlign: "left",
      }

同理可实现类似以下效果(将icon设置为三角箭头,字体大小无法设置)

其他一些坑,真机调试

拓展的其他效果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值