- 首先呢,一般组件库要最大限度,避免性能损耗,所以一般来讲,就是用svg,因为不失真,
- 不过为什么不失真,背后是基于数学公式,当渲染到页面后随着不同的分辨率来进行dom样式操作。
- 可伸缩性: SVG 是一种矢量图形格式,它可以在不损失质量的情况下缩放到任何大小。这意味着你可以在不同的屏幕分辨率和设备上使用相同的 SVG 图像,而无需担心失真或模糊。
- 所以强调需要适配不同分辨率下,就是用这个svg ,而对于base64因为直接嵌入到文本里面了,减少了http请求,但是增加web文档加载的时间,所有一般小图用base64 ,大图用svg。
分类
- 一般来讲svg图属于矢量图
- 而传统的png等图都是属于位图
svg原理
- 其实对于svg背后的原理,本质就是随着不同分辨率下数学描述会动态变化,所以才不会失真。
png等
- 随着不同分辨率,像素点之间的距离可能会扩大或者缩小,这就导致了放大后,像素化,会严重失真,所以一般小图比较合适