问题代码:
wxml:
<view class="login-box">
</view>
wxss:
.login-box{
width: 650rpx;
height: 700rpx;
background-image: url(../../image/auth-default.png);
}
解决方法:
1.使用image组件,在布局中使用多层定位。缺点:布局结构可读性不高。
2.将图片通过在线转化网站,转化成base64格式。缺点:base64内容太长了,影响样式代码阅读。
3.直接通过把样式直接写入WXML文件里。缺点:代码看上去不够优雅。(最简单)
4.直接使用网络图片。缺点:需要放到服务器上。(最灵活)
把样式直接写进WXML里实现方法
当然如果实际业务需求没有替换图片的需求也可以使用第3个方案,这个是最省事的方案。
wxml代码:
<view class="login-box" style="background-image: url(../../image/auth-default.png);background-size: 100% 100%;">wxss代码:
</view>
wxss代码:
.login-box{
width: 650rpx;
height: 700rpx;
margin: 0 auto;
}
建议使用第4种方法解决,虽然首次操作会有点麻烦,但是这样可以增加灵活度后续可以不发版本直接替换远程图片。但使用网络图片的也存在问题,如项目批量运营的,在wxss是不能指定动态域名的,如把图片资源统一放在一台服务器,这样非常灵活但是唯一不足就是会这台服务器的运行压力。
也可以放在云托管(云开发),这样也和放在服务器一样灵活。