很多朋友都反應jquery mobile自帶的圖標真的是少之又少,另外我也覺得圖標偏小(系統自帶的是18*18的),于是琢磨著如何自定義按鈕圖標,下面小編把我的方法分享給大家。
剛接觸Jquery Mobile框架,遇到個很現實問題,就是如何自定義按鈕圖標,我覺得jquery mobile 自帶的圖標實在是太少了,另外我覺得圖標也偏小(系統自帶的應該是18*18的)下面是我的方法,希望大家踴躍拍磚。
1、第一種方法是比較簡單的,但是有前提,前提就是你自定義的圖標大小應該和系統內置的保持一致,這樣排版上才不會出問題,具體方法如下:
首先定義css文件
.ui-icon-email{ background:url('./images/email.png') no-repeat 0px 0px;}data-icon="email"就可以了。
2、第二種方法,這種方法適合自定義圖標大小和系統不一致的情況,閑話不說了,先上效果圖,

3、代碼如下:
【css代碼】
/** 圖標大小 **/.user-ui-btn .ui-icon{ width:36px; height:36px;}/** 設置字體大小,由于圖標變大,所以文字適當的調大一些 **/.user-ui-btn .ui-btn-text{ line-height:36px; font-size:20px;}/** 無文字按鈕 **/.user-ui-btn .ui-btn-icon-notext{ width:42px; height:42px; webkit-border-radius: 2em; border-radius: 2em;}/** 圖標左邊 **/.user-ui-btn .ui-btn-icon-left .ui-btn-inner { padding-left: 50px;}.user-ui-btn .ui-btn-icon-left .ui-icon{ left:10px; margin-top: -18px;}/** 圖標在右邊 **/.user-ui-btn .ui-btn-icon-right .ui-btn-inner { padding-right: 50px;}.user-ui-btn .ui-btn-icon-right .ui-icon{ right:10px; margin-top: -18px;}/** 圖標在上邊 **/.user-ui-btn .ui-btn-icon-top .ui-btn-inner { padding-top: 50px;}.user-ui-btn .ui-btn-icon-top .ui-icon{ top:10px; margin-left: -18px;}/** 圖標在下邊 **/.user-ui-btn .ui-btn-icon-bottom .ui-btn-inner { padding-bottom: 50px;}.user-ui-btn .ui-btn-icon-bottom .ui-icon{ bottom:10px; margin-left: -18px;}/** 定義自己的圖標 **/.user-ui-btn .ui-icon-demo1{ background:url('./images/gentleface_full.png') no-repeat -108px 0px;}.user-ui-btn .ui-icon-demo2{ background:url('./images/gentleface_full.png') no-repeat -180px -180px;}.user-ui-btn .ui-icon-demo3{ background:url('./images/gentleface_full.png') no-repeat -252px -360px;}.user-ui-btn .ui-icon-demo4{ background:url('./images/gentleface_full.png') no-repeat -36px -180px;}.user-ui-btn .ui-icon-demo5{ background:url('./images/gentleface_full.png') no-repeat -504px -612px;}<!doctype html><html><head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" type="text/css" href="js/jquery.mobile-1.3.2.css" /> <script src="js/jquery.js"></script> <script src="js/jquery.mobile-1.3.2.js"></script> <link rel="stylesheet" type="text/css" href="js/demo.mobile-1.0.css" /></head><body><div data-role="page" id="page"> <div data-role="header"> <h1>Jquery Mobile自定義按鈕</h1> </div> <div data-role="content"> <h2>原版樣式舉例</h2> <div> <a href="#" data-role="button" data-icon="home" data-inline="true" data-iconpos="left">DEMO</a> <a href="#" data-role="button" data-icon="home" data-inline="true" data-iconpos="top">DEMO</a> <a href="#" data-role="button" data-icon="home" data-inline="true" data-iconpos="right">DEMO</a> <a href="#" data-role="button" data-icon="home" data-inline="true" data-iconpos="bottom">DEMO</a> <a href="#" data-role="button" data-icon="home" data-inline="true" data-iconpos="notext">DEMO</a> </div> <h2>自定義樣式舉例</h2> <h3>1)普通按鈕</h3> <div class="user-ui-btn"> <a class="user-ui-btn" href="#" data-role="button" data-icon="demo1" data-inline="true" data-iconpos="left">DEMO</a> <a class="user-ui-btn" href="#" data-role="button" data-icon="demo2" data-inline="true" data-iconpos="top">DEMO</a> <a class="user-ui-btn" href="#" data-role="button" data-icon="demo3" data-inline="true" data-iconpos="right">DEMO</a> <a class="user-ui-btn" href="#" data-role="button" data-icon="demo4" data-inline="true" data-iconpos="bottom">DEMO</a> <a class="user-ui-btn" href="#" data-role="button" data-icon="demo5" data-inline="true" data-iconpos="notext">DEMO</a> </div> <h3>2)按鈕組</h3> <div class="user-ui-btn" data-role="controlgroup" data-type="horizontal"> <a data-role="button" data-icon="demo1" data-iconpos="top">js</a> <a data-role="button" data-icon="demo2" data-iconpos="top">css</a> <a data-role="button" data-icon="demo3" data-iconpos="top">html</a> <a data-role="button" data-icon="demo4" data-iconpos="top">ps</a> </div> <div class="user-ui-btn" data-role="controlgroup"> <a data-role="button" data-icon="demo1" data-iconpos="top">js</a> <a data-role="button" data-icon="demo2" data-iconpos="top">css</a> <a data-role="button" data-icon="demo3" data-iconpos="top">html</a> <a data-role="button" data-icon="demo4" data-iconpos="top">ps</a> </div> <h3>3)原始icon</h3> <img src="./js/images/gentleface_full.png" alt="原始icon" border=0 width=612 height=648> </div> <div data-role="footer"> <h4>Copyright by lining</h4> </div></div></body></html>以上內容就是本文給大家講解的關于Jquery Mobile 自定義按鈕圖標的實現方法,希望大家喜歡。
新聞熱點
疑難解答