Css 基于64编码图像

Css 基于64编码图像,css,image,base64,Css,Image,Base64,我已尝试对图像进行基本编码,以便通过CSS将其显示为: background-image: url(data:image/png;base64,%codeForImage%) 所以我尝试了我在这里发现的东西: 但它不会显示任何图像(使用“phonegap android drawable”中的png图像) 两个问题: 我如何解决这个问题 如何在没有图像的情况下显示图像 示例:是否可以获取图像的字节并通过 background-image:url(data:%uncodedImageBytes

我已尝试对图像进行基本编码,以便通过CSS将其显示为:

background-image: url(data:image/png;base64,%codeForImage%)
所以我尝试了我在这里发现的东西:

但它不会显示任何图像(使用“phonegap android drawable”中的png图像)

两个问题:

我如何解决这个问题 如何在没有图像的情况下显示图像

示例:是否可以获取图像的字节并通过

background-image:url(data:%uncodedImageBytes%)
背景:
我正在从phonegap插件获取图像的字节,并尝试向用户显示图像。

第一段代码是正确的:

background-image: url(data:image/png;base64,%codeForImage%)
插入二进制数据无效

如果看到不同的图像而不是预期的图像,则可能是CSS选择器与元素不匹配(例如,如果元素为
,选择器为
div.foobar
),也可能是选择器不匹配


在任何一种情况下,都可以使用类似Firebug的东西来检查元素,并检查哪些CSS规则应用于元素,以及您是否可以在顶部看到所需的规则。

对于一般的移动应用程序,我建议不要使用Base 64

如果您想在性能提高的情况下使用Base64,那么我建议您使用类似的网站来进行Base64编码。否则,您的url字符串看起来很合适,但二进制不是它所期望的格式。有趣的是,它期望Base64-这是完全不同的

编辑

如果您需要在运行时仅使用二进制文件执行此操作,请在JavaScript中执行。它有一个内置函数,用于处理从挂在窗口对象上的二进制文件对Base64进行编码

像这样使用它:

var bSixtyFourString = window.btoa(%MY_BINARY%);

似乎我无法正确地对图像二进制文件进行base64编码。我确信我有正确的div(设置背景:green works:))您使用什么工具对图像进行base64编码?如果
background:green
起作用,仍然可能是在顶部添加了一些
背景图像。请尝试将带有URL的
背景图像设置为外部图像,以查看是否可以应用图像。出于测试原因,我没有使用附加div。所以上面什么都没有。并为图像添加一个文件。谢谢,我没有要求速度,但如何管理显示图像。我在运行时有二进制数据,所以我不能调用站点。如何对二进制文件进行基本编码?在我的文章第4行。这就是btoa()。但它给了我一个unicode问题(同样如链接中所述)。我的问题就从这里开始。这些变通方法对我没有帮助,因为图像似乎被这些方法破坏了)。@protobassi-如何破坏?你有没有确认你得到的是二进制而不是字节字符串?如果是字节而不是位,你可以通过JavaScript再次转换为二进制,但是你需要经历很多困难才能在那一点上交付一个图像,你最好是在应用程序处于原始状态时交付它。