Uniapp动态修改CSS(通过js修改CSS)

例如产品给了我们个需求需要点击一次按钮来使得view的高度增加10px

在html开发中很好实现,但是在uniapp开发app的时候发现并不能通过document.getElementById("")来指定。那么该怎么实现呢?往下看。

1.先搭建页面

嗯~我知道很丑,但就酱紫。Ծ‸Ծ
在这里插入图片描述

2.重点!!!改造代码,将vHeight放入的style标签中。

注意看改造后的style
在这里插入图片描述
嗯~改造完成,试一下效果。
在这里插入图片描述
确实生效了。


总结一下

js中动态修改css样式,需要先定义好要修改的变量,注意style的书写格式
1.style前面需要加 : 号
2.style 引号中需要添加 {} 号
3.不同样式用 , 号分割
4.不同属性用 ‘’ 单引号(取决于最外层符号)
5.变量是否需要单位,如果需要记得添加上单位。

动态style格式如下所示。
:style="{'height':vHeight + 'px', 'background':'#FF9900'}"
整体Demo代码:

没有base_body的属性的需要查看我上一篇文章,全局引入css

<template>
	<view class="base_body">
		<view :style="{'height':vHeight + 'px', 'background':'#FF9900'}"> 我是view1 </view>
		
		<!-- 按钮位于屏幕底部 -->
		<button type="warn" @click="addPX()" style="position: absolute; bottom: 0px; width: 100%;">view1高度增加10px</button>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				vHeight:20, // view1的默认高度a
			}
		},
		onLoad() {

		},
		methods: {
			/**
			 * 增加View1的高度
			 */
			addPX() {
				this.vHeight +=10; // 每次点击View1的高度增加10
				console.log("当前View的高度:",this.vHeight + "px");
			},
		}
	}
</script>

<style>
</style>


新加内容 :style中也可使用三元表达式:

index 为int型整数。

:style="{'margin-top':index==0?'15rpx':''}"

完结撒花✿✿ヽ(°▽°)ノ✿~~

  • 10
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值