感谢jQuery UI,我可以轻松地:
问题是字体太大所以我添加了这个css:
.ui-button .ui-button-text {
font-size:60%;
}
但现在问题是我的图标和文字之间没有任何空格。
请参阅此处获取演示(jsFiddle):http://jsfiddle.net/Rn9tg/71/
有没有修复?
感谢。
答案 0 :(得分:2)
<a data-bind="click: greet, jqButton: { icons: { primary: 'ui-icon-gear' }}">   Test</a>
您只需为文本添加左边距,以便文本和图标之间有空格。查看jsfiddle。
答案 1 :(得分:0)
在文字前添加一个不间断的空格(或两个)。像这样 jsFiddle 。因此,不要只是“测试”,而是使用" Test"
答案 2 :(得分:0)
我已经看过您链接的演示,我使用了代码并为您获取解决方案。这是CSS
.ui-button .ui-button-text {
font-size:60%;
min-height: 13px;
margin-left:5px;
}
给左边的文本留出边距,你会看到空格被添加。
我希望我帮助过你..
答案 3 :(得分:0)
[更新] :使用左边距规则不适用于仅图标按钮。我将left-margin
规则替换为似乎可以解决问题的text-indent
规则。
添加以下CSS规则
.ui-button-text:nth-child(2) {
text-indent: 5px;
}
这表明任何ui-button-text
类(父母的第二个孩子)的左边距应为5px。在这种情况下,标签始终是第二个子项,前面是图标。
在css-tricks了解有关nth-child伪选择器的更多信息。
[UPDATE] Internet Explorer(特别是旧版本)不能正确支持nth-chil伪选择器。在这种情况下,您应该使用jquery强制IE使用其他类。
在IE独占CSS文件中添加以下类:
.button_left_margin_label {
text-indent: 5px;
}
使用jQuery,强制IE将上面的类用于允许图标的标签:
if IE {$('.ui-button-text:nth-child(2)').addClass('button_left_margin_label');}