ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# vue自适应图标 cube-ui的安装,看一下官网[https://didi.github.io/cube-ui/#/zh-CN](https://didi.github.io/cube-ui/#/zh-CN)根据提示进行安装,最好安装在cli3上。 >[info] 先定义一个class ``` <span class="brand"></span> ``` >[success] 在样式里调用cube-ui的样式函数,注意‘brand’是名字为‘**brand@2x.png**’和‘**brand@3x.png**’的图片,并图片目录在.vue的当前目录下,直接使用bg-img('图片名')即可。 ``` @import "~common/stylus/mixin" .brand width: 30px height: 18px bg-image('brand') background-size: 30px 18px background-repeat: no-repeat ``` >[success] 引入的mixin.styl内容,其实是引入了cube-ui的目录内容,整体是双层引用,规范化代码 ``` @import "~cube-ui/src/common/stylus/mixin.styl" ``` >[danger] 为什么要这样设置,下面做详细的解释 比如你需要一个30pt\*30pt的图标,那么这时你就需要跟美工要三个文件: * 一个是30px\*30px的PNG图片,用原名来命名即可,例如sample.png。 * 一个是60px\*60px的PNG图片,这个要用原名@2x来命名,例如sample@2x.png。 * 一个是90px\*90px的PNG图片,这个要用原名@3x来命名,例如sample@3x.png。 这样把这三张图片导入进工程,你会神奇地发现,这三个文件居然会被iOS统一识别为sample.png,用的时候只需要\[UIImage imageNamed:@"sample"\]就行了。 ***** **那么讲一下应用场景:** * 1x的图标用于1:1的屏幕,非视网膜屏,例如iPhone 3GS、(/*20140414DEL*/ //*早期iPhone 4*、感谢 [@池谷湧](https://link.jianshu.com?t=http://blog.csdn.net/u014544346/article/details/51449050) 指正)非视网膜屏的众多iPad等。 * 2x的图标用于1:2的屏幕,大部分视网膜屏,机型如(/*20140414ADD*/ iPhone 4、)iPhone 4S、iPhone 5、iPhone 5s、iPhone 6、iPad with Retina及后续的视网膜屏iPad等。 * 3x的图标目前应用于1:3的屏幕,即iPhone 6Plus,这个就比较特殊了,因为苹果为了方便开发者,想出来一个简便的实现方案,将2208*1242分辨率的图像压缩输出在1920*1080的屏幕上。 要明确的是通常是在一些图标上使用这种方法,而不是遇到img的时候都这样来做