2

私はこのjqueryを作成しました:

ホルダーdivを定義します。

var cimHolder = componentWrapper.find('.cim_holder');

タイトルが存在する場合、データはタイトルと同じです。

    if(data.attr('title') != undefined && !isEmpty(data.attr('title'))){
                cimData = data.attr('title');
                cimExist = true;

        }

タイトルが存在する場合は、divに表示します。

        if(cimExist){
            cimHolder.css('width', 'auto');//reset
            cimHolder.html(cimData);

文字の長さでdivwidhtを設定します。

            var hossz = cimData.length*6.5;
            //console.log(cimData);
            if(parseInt(cimHolder.css('width'), 10)>200){
                cimHolder.css('width', hossz+'px');
            }
            }

ただし、このように、ワイド文字を多く取得するとdivは小さくなりますが、幅の狭い文字を多く取得すると長くなります。これを修正する方法は?

編集:div autoまたは100%を設定した場合、テキストに収まりません。画面内のすべてのスペースを使用してください。

4

3 に答える 3

2

spanや-tags(display: inline;)などのインライン要素は、そのコンテンツと同じ幅しかありません。div()のようなブロック要素がある場合display: block;、幅はデフォルトで100%です。したがって、ブロック要素が必要ない場合は、display:inline;を使用できます。

の値をログに記録しましたparseInt(cimHolder.css('width'), 10)か?「px」単位を正しく解析できない可能性があります。

ご挨拶

于 2012-11-06T08:01:45.833 に答える
0

これらの2つのcssプロパティを使用できます。

max-width: 100px;
min-width: 50px;
于 2012-11-06T07:51:33.993 に答える
0

使ってみませんか

overflow:visible;

そうすれば、どんなに長くても、それは常に含まれているテキストの幅と一致しなければなりません。

于 2012-11-06T07:52:16.610 に答える