1、改造缘由css
因旧版项目由ANGULAR+IONIC构建,根据要求须要进行总体UIUE的改造,导航栏图标须要变动为新版图标html
旧版图标前端
新版图标ios
2、改造过程git
一、查询前端代码后发现以上图标采用ionic自带的ICON的方式,并非图片方式github
<ion-tabs id="ion-tabs" class="tabs-icon-top tabs-stable tabs-color-active-energized"> <!-- Dashboard Tab --> <ion-tab title="首页" icon-off="ion-home" icon-on="ion-home" ng-click="ss('tab.tab1')"> <ion-nav-view animation="slide-left-right-ios7" name="tab-tab1"></ion-nav-view> </ion-tab> <!-- Chats Tab --> <ion-tab title="提问" icon-off="ion-help-circled" icon-on="ion-help-circled" ng-click="ss('tab.tab2')"> <ion-nav-view animation="slide-left-right-ios7" name="tab-tab2"></ion-nav-view> </ion-tab> <!-- Account Tab --> <ion-tab title="回答" icon-off="ion-clipboard" icon-on="ion-clipboard" ng-click="ss('tab.tab3')"> <ion-nav-view animation="slide-left-right" name="tab-tab3"></ion-nav-view> </ion-tab> <ion-tab title="个人" icon-off="ion-person" icon-on="ion-person" ng-click="ss('tab.tab4')"> <ion-nav-view animation="slide-left-right" name="tab-tab4"></ion-nav-view> </ion-tab> </ion-tabs>
二、查询ionic官方图标库并未查询新版设计所采用的图标https://ionicons.com/web
三、在ant Design的设计网站中找到了相关图标https://ant.design/components/icon-cn/浏览器
四、但ant Design图标没法直接放在项目中使用,官方只有这一种方式ionic
五、继续探索IONIC的图标使用方式,找到方式为在html中引用css样式,CSS中引用如下4个字体文件,实现图标的引用和展现ide
六、获取以上信息后,将解决问题的重点转移到如何找到ant Desgin的4个字体文件已经CSS样式代码
七、搜索众多后终于在github的ant Desgin官方项目中找到全部图标的svg格式
https://github.com/ant-design/ant-design-icons/tree/master/packages/icons-svg/svg/outlined
八、放入系统中后发现并不能生效,由于须要多种格式字体文件才能知足大多数浏览器
https://zhuanlan.zhihu.com/p/28179203
九、咱们找到该网站能够建立一个项目,而后将以前下载的图标所有上传后,能够总体下载
十、下载后获得4份字体文件和一个CSS文件
十一、将4份字体文件放入项目fonts文件夹内,将CSS中使用到的图标放入到ionic.css中
@font-face { font-family: "iconfont"; src: url("../fonts/iconfont.eot?v=2.0.1"); src: url("../fonts/iconfont.eot?v=2.0.1#iefix") format("embedded-opentype"), url("../fonts/iconfont.ttf?v=2.0.1") format("truetype"), url("../fonts/iconfont.woff?v=2.0.1") format("woff"), url("../fonts/iconfont.woff") format("woff"), url("../fonts/iconfont.svg?v=2.0.1#Ionicons") format("svg"); font-weight: normal; font-style: normal; } .iconfont { font-family: "iconfont" !important; font-size: 16px; font-style: normal; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .icondelete-column:before { content: "\e66f";
十二、在页面上使用新的图标标签便可展现新的图标
<ion-tabs id="ion-tabs" class="tabs-icon-top tabs-stable tabs-color-active-energized"> <!-- Dashboard Tab --> <ion-tab title="首页" icon-off="iconfont iconbank" icon-on="iconfont iconbank" ng-click="ss('tab.tab1')"> <ion-nav-view animation="slide-left-right-ios7" name="tab-tab1"></ion-nav-view> </ion-tab> <!-- Chats Tab --> <ion-tab title="提问" icon-off="iconfont iconedit" icon-on="iconfont iconedit" ng-click="ss('tab.tab2')"> <ion-nav-view animation="slide-left-right-ios7" name="tab-tab2"></ion-nav-view> </ion-tab> <!-- Account Tab --> <ion-tab title="回答" icon-off="iconfont iconeye" icon-on="iconfont iconeye" ng-click="ss('tab.tab3')"> <ion-nav-view animation="slide-left-right" name="tab-tab3"></ion-nav-view> </ion-tab> <ion-tab title="个人" icon-off="iconfont iconteam" icon-on="iconfont iconteam" ng-click="ss('tab.tab4')"> <ion-nav-view animation="slide-left-right" name="tab-tab4"></ion-nav-view> </ion-tab> </ion-tabs>
以上就是本次分享内容,请各位看官指正