0

これは私の正確なコードではありませんが、関連する部分は次のとおりです。

<div id="myDiv" class="class1 class2" style="">
   ... other elements ...
</div>

要素のクローンを作成し、最終的に元の要素をクローンに置き換える jQuery コード:

clonedDiv = $('#myDiv').clone(true);
... some other code ...
$('#myDiv').replaceWith(clonedDiv);

これは正しく動作します - 唯一の問題は、複製された div が何らかの形でオリジナルにはなかったスタイル属性を取得することです:

<div id="myDiv" class="class1 class2" 
     style="overflow: hidden; height: 1px; padding-top: 0px; margin-top: 0px; padding-bottom: 0px; margin-bottom: 0px;">
   ... other elements ...
</div>

これはどこから来ているの...?それを防ぐ方法はありますか?(私は現在「ハッキング」しており、明示的に空の文字列に戻しています。)

4

2 に答える 2

1

それは somejavascriptまたはjQuery.

スタイル属性を削除する場合は、次のようにします。

clonedDiv = $('#myDiv').removeAttr('style').clone(true);
//---------------------^^^^^^^^^^^^^^^^^^^---------remove the attr then clone it.
于 2013-01-22T10:50:24.093 に答える
0

これらのスタイルは、ブラウザーによって追加された既定のスタイルである可能性があります。ほら、すべての値が0pxです。これらのスタイルが複製された要素でどのように問題を引き起こすかわかりません。

関連する投稿を確認できます:

ブラウザのデフォルト CSS スタイルシート

于 2013-01-22T10:47:21.067 に答える