uniapp做微信小程序,自定义checkbox和radio的样式

这篇具有很好参考价值的文章主要介绍了uniapp做微信小程序,自定义checkbox和radio的样式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

用uniapp做个微信小程序,其中有用到自定义checkbox和radio的样式;代码记录如下:

自定义checkbox

在App.vue中写入样式:

    checkbox.red .wx-checkbox-input,
	checkbox.red .uni-checkbox-input {
	    background-image: url('/static/images/steps/drug_nosel.png');
		background-size: 100% 100%;
		background-repeat: no-repeat;
		border-color: #00000000;
		width: 16px;
		height: 16px;
	}
	
	checkbox.red[checked] .wx-checkbox-input,
	checkbox.red.checked .uni-checkbox-input{
		background-image: url('/static/images/steps/checkbox_checked.png');
		background-size: 100% 100%;
		background-repeat: no-repeat;
		color: #00000000;
		border-color: #00000000;
		width: 16px;
		height: 16px;
	}

在代码中引用:

<checkbox :value="item.id" :checked="item.checked" class="checkbox red" />
自定义radio样式:

如果要全局改变radio的样式,需要将样式代码写在App.vue中,代码如下:

/* radio 未选中时的样式 */
	radio.info .wx-radio-input{
		border-color: #00000072;
		background-repeat: no-repeat;
		width: 16px;
		height: 16px;
		background-clip: content-box!important;
		box-sizing: border-box;
	}
	/* radio 选中后的样式 */
	radio.info .wx-radio-input.wx-radio-input-checked{
		background-image: url('/static/images/steps/checkbox_checked.png');
		background-color: #00000000!important;
		background-size: 100% 100%;
		background-repeat: no-repeat;
		width: 16px;
		height: 16px;
		border-color: #00000000!important;
		background-clip: content-box!important;
		box-sizing: content-box;
	}
	
	/* radio 选中后的图标样式*/
	radio.info .wx-radio-input.wx-radio-input-checked::before{
		display: none!important;
	}

代码中引用:

<radio :value="item" :checked="index === current" class="info" />

如果不在全局改变radio样式,只在单个文件中改变,则在使用radio的文件中加入如下代码:

    radio.info .wx-radio-input{
		border-color: #00000072;
		width: 16px;
		height: 16px;
	}
	::v-deep .wx-radio-input.wx-radio-input-checked {
		background-image: url('/static/images/steps/checkbox_checked.png');
		background-color: #00000000!important;
		background-size: 100% 100%;
		background-repeat: no-repeat;
		width: 16px;
		height: 16px;
		border-color: #00000000!important;
		background-clip: content-box!important;
		box-sizing: content-box;
	}
	::v-deep .wx-radio-input.wx-radio-input-checked::before {
		display: none!important;
	}

效果:

uniapp做微信小程序,自定义checkbox和radio的样式,微信小程序,uni-app,uni-app,微信小程序,小程序

自定义radio另外一种方法:

    <view>
		<view><radio>1</radio></view>
		<view class="radio-content">
		  <view class="radio-content" @click="changeRadio1">
		      <view class="radio" :class="radio1 == 1 ? 'radio-default':''">
		        <view :class="radio1 == 1 ? 'radio-active':''"></view>
		      </view>
		      <text>单位</text>
		    </view>
		    <view class="radio-content radio-right" @click="changeRadio2">
		      <view class="radio" :class="radio1 == 2 ? 'radio-default':''">
		        <view :class="radio1 == 2 ? 'radio-active':''"></view>
		      </view>
		      <text>个人</text>
		    </view>
		  </view>
	</view>

样式:

.radio-content {
	  height: 40rpx;
	  display: flex;
	  align-items: center;
	}
	.radio {
	  width: 24rpx;
	  height: 24rpx;
	  border-radius: 50%;
	  border: 2rpx solid #CCCCCC;
	  display: flex;
	  flex-direction: column; 
	  align-items: center;
	  justify-content: center;
	  margin: 0rpx 26rpx 0rpx 15rpx;
	}
	.radio-active{
	  width: 16rpx; 
	  height: 16rpx;
	  border-radius: 50%;
	  background-color: #0fbda6;
	}
	.radio-default{
	  border: 2rpx solid #0fbda6;
	}
	.radio-right {
	  margin-left: 66rpx;
	}

method文章来源地址https://www.toymoban.com/news/detail-553437.html

data() {
    return {
		radio1: 1
	}
},
methods: {
    changeRadio1() {
	    this.radio1 = 1;
	    console.log("单位")
    },
    changeRadio2() {
	    this.radio1 = 2;
	    console.log("个人")
    }, 
}

到了这里,关于uniapp做微信小程序,自定义checkbox和radio的样式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uni-app开发微信小程序,checkbox、radio等原生组件样式设置问题解决方案

    它们是 原生 的组件,修改样式只能在 app.vue 里面修改,目前只知道这一种解决办法。如果你的UI给的图比较特殊,用css写比较困难,推荐使用图片代替,请看下面示例。 正确设置✔:在App.vue文件里设置 test.vue文件(这里假设你使用checkbox或者radio的组件): App.vue文件(这里

    2024年02月19日
    浏览(63)
  • 微信小程序修改radio的样式

    二: 注解: bindchange:有变化执行事件 wx:for-items:表示对{{items}}进行循环 radio中的color属性:主要设置选中之后图标颜色 radio中的style属性:这里主要用来展示图标的大,scale缩放 radio中的value属性:主要用于事件bindchange执行之后能获取到值 radio中的checked属性:设置默认值  

    2024年02月04日
    浏览(51)
  • UNIAPP---实现微信小程序登录授权和手机号授权(uniapp做微信小程序)

    描述:uniapp开发小程序,先授权用户信息后再出现手机号授权的页面进行手机号授权。完成后返回上一页面并把信息存入后台以及前台缓存中,方便使用。 1.在uniapp的manifest.json进行微信小程序配置 2.封装request请求api.js(如果已封装可跳过) 3.封装微信授权登录以及获取手机

    2024年02月11日
    浏览(47)
  • placeholder样式自定义(uniapp 微信小程序、h5)

    一、使用uniapp开发 ①第一种方式:(写在行内) ②第二种方式: (给input加上placeholder-class属性,然后给该属性 设置一个类名,在style中设置样式。) 二、使用H5开发

    2024年02月09日
    浏览(40)
  • 微信小程序使用 checkbox 如何修改样式?

    主要通过 .wx-checkbox-input 、 .wx-checkbox-input-checked 以及 .wx-checkbox-input-checked::before 三个类名来设置 checkbox 的样式。 .wx-checkbox-input 用于设置未选中时框的样式 .wx-checkbox-input-checked 用于设置选中后框的样式 ,为了覆盖原生样式,需要与 .wx-checkbox-input 类连写,否则权重不够。 .

    2024年02月12日
    浏览(61)
  • 微信小程序查看官方样式及修改checkbox样式为圆圈

    小程序中checkbox的样式是正方形的,设计图上给的是一个圆圈,在查看官方demo的时候发现了怎么修改的 首先在微信官方文档上找到复选框的demo 然后审查代码找到复选框的样式部分 可以看到选中的复选框的class为wx-checkout-input 选中的样式为wx-checkbox-input-checked 这样我们就可以

    2024年02月03日
    浏览(58)
  • uniapp rich-text 富文本组件在微信小程序中自定义内部元素样式

    rich-text 富文本组件在 微信小程序 中,无法直接通过 外部css样式 控制文章内容样式。 解决方案:将传入的富文本内容截取并添加自定义样式类名 (1)全局配置filter方法,实现富文本内容截取转换,附上‘rich-txt-p’样式类 (2)在app.vue中编辑‘rich-txt-p’内容,即富文本需要

    2024年02月19日
    浏览(63)
  • uniapp 给自定义组件或uview等ui组件加class样式或修改样式在微信小程序不生效的情况

    首先不论是自定义组件还是ui组件,本质上的原因都是微信小程序默认的组件隔离策略导致的。 微信小程序组件隔离文档参考 1.在原有class上修改样式 比如我在uview radio 单选组件的原有class(.u-radio ) ,修改样式出现不生效的情况 解决: 加上 ::v-deep 即可 2.增加class 比如我在

    2024年02月02日
    浏览(76)
  • 微信小程序之自定义表单组件(radio)

    背景: 最近在做项目的时候遇到一个问题,那就是微信的官方表单组件的可扩展性不强,无法达到设计稿所要求的效果,所以想到了用自定义组件的方法自定义一个表单组件。 (自定义组件其实往往用在需要复用的地方,比如每个页面都有一样的头部和底部,那么我们就可

    2024年02月09日
    浏览(46)
  • 小白开发微信小程序10--表单组件之checkbox-group/radio-group/label

    微信团队为开发者提供了一系列基础组件,开发者可以通过组合这些基础组件进行快速开发。小程序中的组件也是非常丰富的,开发者可以基于组件快速搭建出漂亮的页面结构。小程序中的组件其实相当于网页中的HTML标签,只不过标签名字不一样。官方把小程序的组件分为了

    2024年02月04日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包