2012-03-01 11 views
0

おかげで、私は簡単に行うことができますのみ Jqueryボタンのアイコン:アイコンとテキストの間にスペースはありませんか? jQueryのUIへ

問題はフォントがテキスト+アイコンアイコンが付いたボタンを持つ

  • とテキストと

    • たボタンのみ
    • 持つボタンです大きすぎてこのCSSを追加しました:

      .ui-button .ui-button-text { 
          font-size:60%; 
      } 
      

      今は問題です私は私のアイコンと私のテキストの間にスペースがないのですか?

      デモ(jsFiddle)についてはこちらをご覧ください:http://jsfiddle.net/Rn9tg/71/

      任意の修正はありますか?

      ありがとうございました。

  • +0

    あなたは ' を試してみました'? – j08691

    +0

    はい、それはあまりエレガントではありません:)私は何かが私のCSSに間違っていると思います。>> .ui-button .ui-button-text {font-size:60%; } – Bronzato

    答えて

    0

    [UPDATE]:左余白のルールを使用すると、アイコンボタンのみでは動作しません。私はleft-marginルールをtext-indentルールに置き換えました。これは問題を解決するようです。

    .ui-button-text:nth-child(2) { 
        text-indent: 5px; 
    }​ 
    

    親の第二子であるあらゆる ui-button-textクラスは、5pxのの左マージンを持たなければならない。このよう指示し、次のCSSルールを追加します。この場合、ラベルの前にはアイコンが常に表示されます。

    nth-child疑似セレクタについては、css-tricksをご覧ください。

    [UPDATE] Internet Explorer、特に古いバージョンでは、nth-chil擬似セレクタが正しくサポートされていません。この場合、jqueryを使用してIEに追加のクラスを強制的に使用させる必要があります。

    IE排他的なCSSファイルに以下のクラスを追加します。jQueryを使って

    .button_left_margin_label { 
        text-indent: 5px; 
    } 
    

    を、アイコンを休閑ラベルに上記のクラスを使用するようにIEを強制:

    if IE {$('.ui-button-text:nth-child(2)').addClass('button_left_margin_label');} 
    
    +0

    これは良い解決策に思えますが、残念ながらアイコン専用のボタンでは機能しません。私はIEとChromeで成功せずに試してみます。ここをクリックしてください:http://jsfiddle.net/Rn9tg/96/ – Bronzato

    +0

    私は... "margin-left"を "text-indent"ルールで変更します。それは問題を解決しています:) –

    +0

    これは動作します、あなたの忍耐力に非常に感謝します。 – Bronzato

    2
    <a data-bind="click: greet, jqButton: { icons: { primary: 'ui-icon-gear' }}">&nbsp&nbsp&nbspTest</a> 
    

    テキストとアイコンの間にスペースが入るように、テキストの左余白を追加するだけです。 jsfiddleを確認してください。

    +0

    ご回答ありがとうございますが、私はすでにこの解決策を試しています。 jsFiddleのアイコンでしか見ることができないように、右には余分なスペースがあります。私はすべての異なるボタンが正しくフォーマットされている解決策が欲しいです。 – Bronzato

    0

    テキストの前に改行なしのスペース(または2つ)を追加します。このようにjsFiddle。だから、ちょうど "テスト"の代わりに、"&nbsp;&nbsp;&nbsp;Test"

    +0

    私はこの解決策には同意しますが、テキストの前にスペースを追加するよりもエレガントな解決策があることを願っています... – Bronzato

    0

    私はコードと遊んで、あなたのためのソリューションを得るにリンクしているデモを見てきました。ここには、CSSです

    .ui-button .ui-button-text { 
        font-size:60%; 
        min-height: 13px; 
        margin-left:5px; 
    }​ 
    

    左にテキストに余白を入れれば、スペースが追加されます。

    は私が..私はあなたを助け願ってい

    +0

    Anirvanに返答したので、このソリューションはすべてのボタンが正しくフォーマットされていないため、 :アイコンのあるボタンでは、左側に余分なスペースがあります。 – Bronzato

    関連する問題