3

問題は、動的テキストの長さが不明なさまざまな言語がサイトに多数存在することです。すべてを中央に配置する必要がありますが、このようなすべての領域に手動で右マージンを追加する必要はありません。なんらかのタイプの jQuery 計算を実行して、毎回このように見えるようにすることができれば素晴らしいことですが、自動的に実行されます: ここをクリックして私の CSS の例を確認してください。

私が見つけたこのjQueryスクリプトを変更しようとしましたが、ここでわかるように失敗しました jsfiddle.net/UTaSg/86/
これは、最後の子に追加の幅を追加しない場合に機能する可能性があります (「タイプ:オールソロバンドグループ」)。

これを行う方法がわかりません。どんな助けでも大歓迎です。助けてくれてありがとう!可能であれば、例を使用してください。

990px​​ コンテナーには常にこれら 4 つのフィルターがあり、すべての異なる言語で両端に 25px のスペースを確保したいと考えています。したがって、それらのテキストの長さはわずかに変化し、3 つのフィルター スペースの間のスペースを等しくしたいと考えています。

4

3 に答える 3

0

これはあなたが望んでいたことではないかもしれませんが、各列のフィルターの幅や量が本当にわからない場合は、他の可能な設計を検討する必要があると思います。

これは、フィルターのドロップダウンリストの最有力候補です。ええ、それはそれほどクールではありませんが、それは機能的です。

別のオプションは、各列に固定幅を設定してから、を使用text-overflow: ellipsis;してテキストオーバーフローを処理することです。これにより、訪問者は利用可能なフィルターが他にもあることを理解でき、クリックするとスライドして追加のフィルターが表示される小さな矢印のグラフィックで取引を封印できます。このようなもの:

ここに画像の説明を入力してください

あなたがハンマーを求めていて、バナナをあげたのは知っているので、これは役に立たないことをお詫びします。

于 2012-08-17T03:29:28.320 に答える
0

全体を中央に配置したい場合width: 100%; margin: 0 auto;は、フィルターのコンテナーで使用する必要があります。同じパディングが必要な場合は、必要ありません.leftpositive, .leftnegative, .spacingforlanguage1。あなたは簡単に行うことができます

.filter { padding-right: 2%; }
.filter:last-child { padding-right: 0; }

そうすれば、残っているスペースの量に比例し、間隔は比較的等しくなります。また、グリッドを作成し、特定のフィルターのいずれかがコンテナー内に収まる最大幅を設定することもできます (たとえば、最初のフィルターの幅は 33%、2 番目のフィルターの幅は 25% など)。これは、特にブラウザーの幅やデバイスが異なる場合に、物事を均等に保つための最良の方法です。

于 2012-08-17T04:54:05.593 に答える
0

各テキストの幅を単純に合計して全体の幅から差し引き、3 でダイビングして、最後の要素を除く各要素の右マージンとして配置することができます。

ジェネリック プラグインを作成できます。これは、任意の数の項目が長さのある jQuery オブジェクト内にある場合に機能し、parent() を使用してコンテナーを取得できるためです。

これを試すことができます:http://jsfiddle.net/UTaSg/104/

于 2012-09-27T03:09:24.717 に答える