2012-04-28 6 views
0
var $imageicon = $('<image/>'); 
$imageicon.attr('src', '../../Content/images/ReplyIcon.png'); 
$imageicon.addClass('replyIcon'); 
var $table = $('<table/>').addClass('replyContent'); 
$table.attr('id', 'replyArea'); 

$table.append(
         $('<tr>').append($('<td>').append($imageicon).addClass('replyIcontd'), $('<td>').text('hii')) 
    ); 
$("#container").append(
       $('<div/>') 
        .attr('id', 'replytopost') 
        .append($table) 
      ); 

CSSテーブルTDは、そのCSSを取っていない

.replyIcontd 
{ 
    width:5%; 

} 

テーブルが現れているが、私は、5%の幅を縮小しようとしていますHIIと画像の間のスペースを小さくするwaentけどやることができませんそれ 私は画像HIIは1つのTDで、.Iが並んで来て、それらの両方を望ん1つのTD okです

enter image description here

+0

あなたはイメージを持つテーブルセルより小さくなるように、または2つのセル間のスペースが小さくなりたいですか? – j08691

+0

(Firebugやブラウザの組み込みDOMインスペクタを使用して)要素を検査するとき、 'TD'はそのクラスを持っていますか?もしそうなら、問題はあなたのクラスを割り当てる能力ではなく、DOMがあなたのCSSを扱うことにあります。 – Marc

+0

はいそれはtdへのクラスを示しています – coder25

答えて

0

あなたが動的に作成した要素の終了を/に忘れてしまった。

$('<tr />').append($('<td />').append($imageicon).addClass('replyIcontd'), $('<td />').text('hii')); 

更新 私はこれを行うための適切な方法で、あなたのスクリプトのいくつかの非常に大きな変更を加えました。

var $imageicon = $('<img />', { 
    'src' : '../../Content/images/ReplyIcon.png', 
    'class' : 'replyIcon' 
}); 

var $table = $('<table/>', { 
    "class" : "replyContent", 
    "id" : "replayArea", 
    'html' : $('<tr />', { 
       'html' : $('<td />', { 
        'class': 'replyIcontd', 
        'html' : $imageicon 
       }).html()+$("<td />", { 
        'text' : 'hii' 
       }).html()      
       }) 

}); 

Demo

+0

エフェクトが作成されていない..... /要素が閉じている – coder25

+0

@prerna、フィドルを作成できますか? :) – Starx

+0

http://jsfiddle.net/g75Y4/ここでは動作していますが、なぜ私のコードではありません。 – coder25

0

私は多分あなたと思います問題は、固定幅の代わりにパーセントを使用することです。自分のコンピュータで試してみましたが、このスタイルはテーブルのデータに適用されていました。

あなたのCSSを拡張しようとすることができます:

.replyIcontd 
{ 
    width: 200px; 
    background: red; 
} 

また、これはあなたのために働くかもしれない、とあなたはちょうどその200pxより適切な値を使用する必要があります。 5%の幅はテーブルの幅を基準にしていることに注意することが重要です。

関連する問題