代码片段 → HTML → 1x1px 透明 GIF 的 Base64 编码 1x1px 透明 GIF 的 Base64 编码 Chris Coyier 于 2012 年 1 月 27 日 以防万一你需要一个。你可以根据需要将其拉伸以填充空间。 <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"> 或者一个黑色的 <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAUEBAAAACwAAAAAAQABAAACAkQBADs=">
非常非常方便!
我应该在哪里使用它?
可能是 HTML 电子邮件,只是猜测。
与使用单独的图像文件相比,它减少了网络请求数量。
在精灵图上管理 1 像素宽度会很烦人。
在几个邮件客户端中不起作用,但在其他用途方面仍然有用
http://www.campaignmonitor.com/blog/post/1761/embedding-images-in-email
我用它来制作海报图片。这使我能够使用 css 来设置我想要的任何视频样式,而不是局限于使用单张图像作为海报。
我用它在 IE9/10 中创建可点击的透明图层
http://stackoverflow.com/questions/6914822/absolute-positioned-anchor-tag-with-no-text-not-clickable-in-ie
我用它通过高度创建正方形块。示例 https://jsfiddle.net/Vlad_IT/eme9c2ya/1/
我在一个窄播解决方案中使用一个透明图标作为光标。这样,当您将浏览器窗口聚焦时,鼠标会消失。非常整洁的技巧。将光标设置为 none,并回退到透明图像。跨平台、跨浏览器工作。
隐藏光标的目的是?
目的是可能是 HTML5 视频(像 YouTube 一样隐藏光标)
也许写下我们可以在哪里使用此代码会很有用。
我可以使用它与 href 链接一起检索点击统计信息吗?
http://probablyprogramming.com/2009/03/15/the-tiniest-gif-ever
哇,谢谢,我把它与 lazyload jQ 插件结合使用
不错……但 IE7 不支持 data URI,是否有任何替代方案?
如果您在 MHTML 中提供它,IE 可以做到。
http://www.phpied.com/the-proper-mhtml-syntax/
谢谢,但我没有理解这段代码的应用。1×1 的图标?
我认为 2×1 会更有用。
是的,重点是创建一个小文件大小。无论如何,您始终可以使用
height
和width
属性扩展文件。但是,这仅在 HTML 电子邮件中才有用,因为在网页上使用间距 GIF 不是很好的网页设计。给我一个演示。拜托。
听起来周围有很多 n00bs,他们不记得那个久经考验的 1px x 1px 透明 gif hack 的必要性。
唤起了回忆。大部分都是痛苦的。:-)
+1 用于
我理解你的痛苦 :-D
非常感谢你提供这段代码,Chris!
谢谢!
先生,我不熟悉这里的代码。但我认为这个就像在 FLICKR 中使用的相同代码一样,当我们保存图像时,它将保存为 1px 图像!或者如何使用它们!
非常非常方便!
非常感谢!
嘿,伙计,Outlook 等是否支持 EDM 的这种功能?
好吧,Chris,我认输了。
你是怎么做到的?
你的
“data:image/gif;base64,R0lGODlhAQABAIAAAAUEBAAAACwAAAAAAQABAAACAkQBADs=”
我的最佳 gif
“data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEHAAEALAAAAAABAAEAAAICTAEAOw==”
而且我的最佳 png 大小是其两倍
“data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAMAAAAoyzS7AAAAA1BMVEUAAACnej3aAAAAAXRSTlMAQObYZgAAAA1JREFUeNoBAgD9/wAAAAIAAVMrnDAAAAAASUVORK5CYII=”
;o) s'moike
哈!透明 GIF 与我自 2007 年以来一直在使用的 GIF 具有相同数量的字节。但是二进制数据略有不同
这可能的一种用途:替换 此处 描述的第一种方法中的透明 gif,以垂直居中 div 中的文本。
虽然非常具体,但确实很有帮助
我正要生成这段代码,但我很高兴我找到了这篇文章。在我的情况下,我有一个包含图像的移动应用程序。图像的 source 值是动态设置的,我需要指向一个占位符图像,而应用程序确定最终图像 URL。当 source 值未设置时,一些浏览器会显示一个难看的图标(损坏或丢失的资源),但拥有一个小的透明图像作为字符串将阻止损坏的图像图标,并节省一个 HTTP 请求。
非常方便!感谢发布这篇文章。
嗨,你用什么生成编码的 GIF?我想要一个不同颜色(#ccc)的 GIF,但在使用在线工具将 1px gif 文件转换为 data-uri 后,结果比你的示例大得多。
您可以使用这个在线 Data URI 生成器
我不太理解。我应该在哪里使用它?
这也可以用来检测浏览器对 data URI 的支持。请参阅 http://weston.ruter.net/2009/05/07/detecting-support-for-data-uris/
例如 Modernizer 和 Grunticon 使用了它。
如果有人需要一个半透明的 Base64 编码 PNG 像素作为 CSS RGBA 回退。 请查看 http://px64.net
只是想分享一个有用的 **使用示例**
**自包含图像!** (+jQuery)
想象一下,你想设置任何 (!) W/H 到一个图像,但不想拉伸图像?!
就像这样
img style="width:150px; height:150px;" class="self-contained" src="img.jpg"
我所做的是将 **透明 PNG** 作为图像
src
(防止浏览器放置“缺失图像图标”),然后将图像src
传递给该IMG
background
并将 CSS3background-size
设置为cover
。这里有一个演示,供您测试和使用:http://jsbin.com/self-contained-images/1/edit
抱歉,我不明白这是做什么的?
非常有用..
我将其用作 CSS 精灵的源代码…
:)
我把 PNG 压缩到 41 字节,用于 1x1px
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVQ
尝试了一段时间让 GIF 小于 14 字节,但我感觉它已经尽可能小了。 这里有一些测试
data:image/gif,GIF89a,%C2%B3%00%C3%BF%C3%BF
1px x 8256
data:image/gif,GIF89a%01%00@%20%FC%87%E4%10
16,684×16,705
data:image/gif,GIF89a,AAAAAAE
16,684×16,705
data:image/gif,GIF89a,AAAAAAEAAQAA
11,265×16,705
data:image/gif,GIF89a%01,AAAAAAEAAQAA
257×11,265
data:image/gif,GIF89a%01%01%01,AAAAAAEAAQAA
257×257
data:image/gif,GIF89a%01%01%01%01,AAAAAAEAAQAA
我喜欢宽度为 100% 并且高度为 auto,这样东西就可以自动缩放。 我不想创建一个具有正确尺寸的 GIF 来进行自动缩放,所以给你了,各位。
https://github.com/sebringj/jquery-transparent-gif
我发现使用空元素上的 CSS 填充来实现纵横比更容易 https://css-tricks.org.cn/easier-aspect-ratio-elements/
哦!
这里有一个免费的 base64 css 生成器,用于从图像生成代码
http://www.base64css.com
我认为这对某些人会有帮助。
如果你们专业人士中有人能帮助新手,那真是太好了,记住,你们中有些人曾经也是新手,嘲笑新手可不是什么好行为。 请有人解释一下这个函数的作用吧,善意的行为会让你走得更远。
什么函数?
不错的文章,非常有用。
我使用这个网站进行编码/解码
用于测试。
http://www.ebase64encode.org
酷,非常有用
你在哪些情况下使用它?
非常棒!
我使用一个透明的 1×1 gif 文件作为虚拟图像,即使一篇博文实际上没有图片,也可以满足谷歌的结构化数据测试工具。 :)
大家想要一个白色的。
给我们一个白色的! :)
哦,没事… 我会自己做… :(
很适合跟踪,对吧? BlueGriffon 也生成它们(尽管我不确定效率如何)。
各位!现在是 2016 年了,透明像素嵌入? 像,在哪里? CodePen,也许?
PNG 像素工具 http://png-pixel.com/ 将生成自定义透明图像的 Base64 编码表示。
很棒!
如果还有人访问这个页面,并且好奇它的使用场景…
我将其用作异步图像的内联 HTML 占位符。 我将 'data-src' 设置为我想要的实际 URL,并将 'src' 设置为这个编码的 gif。
它很小,而且是内联的,所以我不必担心页面首次加载时链接损坏,因为 JS 接管并用 'data-src' 替换 'src'。
我也可以将其设置为编码的加载 gif。
这是链接
嗨
我的页面在 https 协议下运行,并且发送以下错误,因为我不能为 src 添加安全设置吗?
混合内容:位于 'https://www.page.com/home' 的页面是通过 HTTPS 加载的,但请求了一个不安全的图像 'data: image / gif; base64, R0lGODlhAQABAAAAACw ='. 此内容也应通过 HTTPS 提供。
这是我的语句
<img class = “lb-image” src = “http: // data: image / gif; base64, R0lGODlhAQABAAAAACw =” /
嗨!
问题出在你的
<img>
'src' 属性中的 'http' 部分,因为即使页面是安全加载的,浏览器也试图加载一个不安全的图像源。但是!这个 gif 的优点是你不需要 'http' 或 'https',因为所有的图像数据都包含在这个字符串中。
试试这个(你提供的编码)
<img class = “lb-image” src="data:image/gif;base64,R0lGODlhAQABAAAAACw =">
或者这个(来自顶部的示例 gif)
<img class = “lb-image” src="data:image/gif;base64,R0lGODlhAQABAIAAAAUEBAAAACwAAAAAAQABAAACAkQBADs=">