微信小程序图片绝对定位

在小程序中,有时需要用到背景图片,但是如果使用background-image的话,就无法控制图片的大小,background-image一般用于将图片压缩为1像素的背景图片,然后自动填充铺满。使用背景图片的话,一般使用一些新的view层,如 <image class="jxlogo" src="../../image/jx.png"/>等,但是小程序与html类似,一个不同的 csswxss会占据一个位置,然后接下来的csswxss会自动往下排版,但是很多时候这并不是我们想要的,于是需要用的绝对定位。

使用绝对定位,最好使用一个新的wxss将所有子控件包含起来,然后在这个包含所有子控件的wxss中,定义一个属性   position: relative,在每个子控件中,定义   position: absolute,现在就可以通过绝对定位来修改位置,如top等,以下附上部分wxss代码:

.jx_card{
    width: 100%;
    height: 295rpx;
    background-color:#e6e6e6;
    position: relative
}

 .jxlogo{
    top: 47.5rpx;
    margin-left: 50rpx;
    width: 200rpx;
    height: 200rpx;
    float: left;
    position: absolute;
}

然后附上wxml代码:

<view class="jx_card">
   <image style="width: 740rpx; height: 275rpx;margin-left=10rpx;margin-top:10rpx;" mode="{{item.mode}}" src="../../image/优惠券_03.png">
            <image class="jxlogo" src="../../image/jx.png"/>
    </image>
 </view>


大概内容就是这样,主要是通过position先定义定位的类型,然后通过top去找到图片上的位置,并定义上去。上程序刚刚公测,我也在不断学习中,欢迎大家相互讨论,如果不对,敬请指正

微信小程序开发中,可以使用绝对定位来控制小程序的元素在页面上的位置。绝对定位是指元素相对于最近的已定位祖先元素(即设置了position属性为relative、absolute、fixed或absolute的元素)的位置。 要使用绝对定位,你可以按照以下步骤进行操作: 1. 创建并配置你的小程序页面,并确保你的页面上有一个或多个设置了定位属性的元素(如`<view>`或`<block>`)作为定位的起点。 2. 在需要使用绝对定位的元素上,使用`position`属性将其设置为`absolute`或`fixed`。这将使该元素成为定位的起点。 3. 使用`top`、`bottom`、`left`和`right`属性来设置元素相对于定位起点的位置。这些属性将按照像素值指定元素的位置。 4. 如果你希望元素相对于窗口或视口大小进行定位,可以使用`offsetTop`和`offsetLeft`属性。这些属性将元素的位置从其原始位置移动到新的位置。 5. 确保你的小程序页面加载完成后,再尝试使用绝对定位的元素。因为微信小程序的页面加载是异步的,如果页面还未完全加载就尝试使用绝对定位,可能会导致定位错误或异常。 下面是一个简单的示例,展示了如何在微信小程序中使用绝对定位: ```html <!-- 在页面的模板中添加一个用于定位的元素 --> <view class="container"> <view class="absolute-element" style="position: absolute; top: 50px; left: 50px;"> 我是绝对定位的元素 </view> </view> ``` 在上面的示例中,我们创建了一个带有`.container`类的`<view>`元素作为定位起点,然后在其中的`.absolute-element`元素上设置了`position: absolute;`,并使用`top: 50px; left: 50px;`来指定元素的位置。 请注意,微信小程序中的绝对定位可能受到一些限制和注意事项,例如在不同设备或浏览器上的表现可能会有所不同。确保在进行绝对定位时考虑到这些因素,并根据需要进行调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值