jQuery Mobile框架包括一组选定的图标移动应用程序通常需要。尽量减少下载大小,jQuery Mobile包含一个单一的白色图标的精灵,和自动添加一个半透明的黑圈背后的图标来确保它有任何背景颜色对比度好。
一个图标,可以通过添加一个对锚杆指定要显示的图标数据图标属性添加到一个按钮。例如,下面的标记:
<a href="index.html" data-role="button" data-icon="delete">Delete</a>
jQuery Mobile 自带很多按钮小图标,如下图所示:
左箭头:data-icon="arrow-l"
右箭头:data-icon="arrow-r"
上箭头:data-icon="arrow-u"
下箭头:data-icon="arrow-d"
删除:data-icon="delete"
添加:data-icon="Plus"
减少:data-icon="minus"
检查:data-icon="Check"
齿轮:data-icon="gear"
前进:data-icon="Forward"
后退:data-icon="Back"
网格:data-icon="Grid"
五角:data-icon="Star"
警告:data-icon="Alert"
信息:data-icon="info"
首页:data-icon="home"
搜索:data-icon="Search"
默认情况下,所有的图标都放在按钮的按钮文本左。此默认可以覆盖使用 data-iconpos 属性来设置图标的右上方(top)、底部(bottom)、右侧(right)、左侧(left)的文本。例如,标记:
font color=#0000ff><a href="index.html" data-role="button" data-icon="delete" data-iconpos="right">Delete</a>
你也可以创建一个图标按钮,设置 data-iconpos="notext"。按钮插件将隐藏的文字在屏幕上,但把它作为给屏幕阅读器和设备支持工具提示上下文链接标题属性。例如,data-iconpos="right",data-iconpos="notext":
<a href="index.html" data-role="button" data-icon="delete" data-iconpos="notext">Delete</a>
迷你和内联属性可以被添加到产生更紧凑的按钮
使用自定义图标,需要指定 data-icon 值。Jquery Mobile的button插件会将生成一个CSS类,它的前缀是ui-icon- ,后面的是data-icon值。假如:有一个按钮 data-icon 属性的值为 myapp-email,即 data-icon=“ myapp-email”。那么生产的CSS类是:ui-icon-myapp-email。
然后你可以在你的样式表写一个CSS规则来定义 ui-icon-myapp-email。然后在css中指定这个类的背景图片地址。为了保持与其他图标的视觉上的一致性,请创建一个白色18x18像素的PNG-8图标,并且保存为Alpha透明度。
.ui-icon-myapp-email { background-image: url( "app-icon-email.png" ); }
这将创建标准分辨率的图标,但许多设备都有非常高的分辨率的显示器,就像iPhone 4的视网膜显示器。添加一个高清图标,创建一个图标,36X36像素(18像素大小完全相同的两倍),并添加第二个规则使用WebKit分钟装置像素比 例:2。媒体查询到目标的规则只有以高分辨率显示器。指定背景图片高清图标文件和设置背景像素大小18x18将安装36个像素图标到同一个18像素的空 间。传媒查询块可以用多个图标规则:
@media only screen and (-webkit-min-device-pixel-ratio: 2) { .ui-icon-myapp-email { background-image: url( "app-icon-email-highres.png" ); background-size: 18px 18px; } ...more HD icon rules go here... }
本信息来源:http://www.lampweb.org/jquerymobile/8/22.html
讨论数量:2
jQuery Mobile 自带很多按钮小图标,如下图所示:
有时候这些图标无法满足你的要求的时候,jQuery Mobile 允许你进行自定义图标。
一般我们在 jQuery Mobile 中定义个按钮的方法如下:
1 |
< a href = "/" data-role = "button" data-icon = "home" >返回首页</ a > |
data-icon 的值是 jQuery Mobile 预设好的,完整的列表请看这里。
如果我们想使用自己的图标,那么可以指定一个其他的 data-icon 的值,例如
1 |
data-icon="send-msg" |
然后我们可直接在 CSS 定义:
1 |
.ui-icon-send-msg { background : url ( '/images/mail2_16x16.gif' ) no-repeat 0 0 ;} |
相当于 ui-icon- 加上你指定的 data-icon 就是对应的 css 的 class 值。