uniapp一张图片在另一张图片上面

通过CSS设置position和z-index可以实现图片的层级控制,但在uniapp中,使用image组件时,直接设置z-index可能无法达到预期效果。解决办法是将要置于上方的图片组件的代码写在前面,这样无需额外CSS调整即可实现图片叠加。

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

一般css解决一张图片在另一张图片上面的问题:

<div>
	<img src="..." class="img1">
	<img src="..." class="img2">
</div>

css部分:

.img2{
	position:absolute;
	z-index:2;
}

原理就是设定position为非默认值,然后设定z-index的值调整图层就行了。
数值越大,图层越靠前(或者说在上面)

而在uniapp中,因为使用了组件image,所以处理的方法可能有区别。

<view class="title">
	<image class="title_img" src="/static/05Mines/MyInfoSet/background.png"></image>
	<image class="upload_pic" src="/static/05Mines/MyInfoSet/upload_pic.png"></image>
</view>

scss部分:

.title{
	.title_img{
		position: relative;
		width: 100vw;
		height: 54vw;
	}
	.upload_pic{
		position: absolute;
		width: 19vw;
		height: 19vw;
		margin: 13vw 41vw;
		z-index: 2;
	}
}

结果如下:

在这里插入图片描述
只显示了第一张图片,第二张图片没显示在第一张的上面,即使我设置了z-index:2。
这种方法无法达成目标。

现在,将两个image组件顺序换一下,结果如下:

<view class="title">
	<image class="upload_pic" src="/static/05Mines/MyInfoSet/upload_pic.png"></image>
	<image class="title_img" src="/static/05Mines/MyInfoSet/background.png"></image>
</view>

scss部分不变,显示结果如下:
在这里插入图片描述
能够达到目标,也就是说在uni-app里面,让一张图片在另一张图片上面,除了设定postion和z-index之外,还必须把在上面的图片的代码写在前面。

这个方法只能对症下药,背后原理没有细究,希望高手指点。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值