uniapp微信小程序css中background-image失效问题

项目场景:

提示:这里简述项目相关背景:

在用uniapp做微信小程序的时候,需要一张背景图,用的是当时做app的时候的框架,但是,在class的样式中background-image失效了,查了后才知道,微信小程序不支持在class中使用background-image,但是可以在标签中使用,而且需要图片路径是base64编码格式的。


解决方案:

提示:这里填写该问题的具体解决方案:

1:图片转换base64编码的工具

javascript 复制代码
npm i image-tools --save

//引入使用
import { pathToBase64, base64ToPath } from 'image-tools'

2:使用函数进行转换

javascript 复制代码
//this.imgUrl 图片路径 /static/img/bg1.png
pathToBase64(this.imgUrl).then(res=>{
    this.bgImgBase64=res
})

3:在标签中使用

html 复制代码
//width height 要设置 
/*
background-attachment 属性值说明
background-attachment 属性有三个主要的可选值,每个值对应不同的效果:
scroll:默认值,背景图像会随着页面内容滚动。
fixed:背景图像固定在视窗中,不会随页面滚动。
local:背景图像与元素内容一起滚动,但仅限于该元素的滚动区域内。
*
/

<view 
	:style="{
		width:'100%',
		height:'100%',
		backgroundImage:'url('+bgImgBase64+')',
		backgroundRepeat: 'no-repeat',
		backgroundPosition: 'center',
		backgroundSize: '100% 100%',
		backgroundAttachment: 'fixed',
	}"
	class="index-content">
......
</view>

4:效果图

相关推荐
陪我去看海10 分钟前
被要求猛出小程序,做了这个多平台多环境的部署替我承受压力
前端·微信小程序·抖音小程序
無名路人1 小时前
小程序点餐页吸顶滚动之分类按需加载,上划切换
前端·vue.js·微信小程序
DsirNg3 小时前
响应式的真正输入:为组件重新定义可用空间
css·flexbox·grid·前端架构·响应式布局·设计系统·container queries
PYB33 小时前
【Web·基础学习】基础布局
css·html·web
晓得迷路了4 小时前
栗子前端技术周刊第 148 期 - Turborepo 2.11、Chrome 154 iframe、Node.js 26...
前端·javascript·css
cindershade9 小时前
响应式的真正输入:为组件重新定义可用空间
css·flexbox
用户7884773163410 小时前
一个门店预约小程序,真正难的不是页面,是这 4 个后端接口
微信小程序
CHB10 小时前
一文讲透原生渲染和自渲染
flutter·react native·uni-app
老马识码10 小时前
一个围棋小程序里的七个 Agent:场景、提示词和结构化输出的门道
人工智能·微信小程序
拖孩10 小时前
一个人 + AI 做的小程序,一个半月把服务器钱赚回来一半了
前端·后端·微信小程序