0

ui-state-highlightonを使用してdivを強調表示し、マウスイベントmouseoverでインデントします。clickインデントされていない場合、divは完全にハイライトされますが、インデントされた後でも、ハイライトはdivの前の位置に従います。強調表示/インデントされたdivはSortable要素です。私はこれがおそらくCSSと関係があることを理解していますが、それは初心者です!

コード;

<style>
      .ui-state-highlight {border: 4px solid #ffffa1;}
      .indent { margin: 0; padding-left: 10px; }
</style>

マウスクリックで;

if ($('#'+(parseInt(pushpin._text))).prop('class') == "indent ui-state-highlight" || $('#'+(parseInt(pushpin._text))).prop('class') == "ui-state-highlight indent"){  
    $('#'+(parseInt(pushpin._text))).removeClass("indent"); 
}
else{
    $('#'+(parseInt(pushpin._text))).addClass("indent");
}

マウスオーバーについて

$('#'+(parseInt(pushpin._text))).addClass("ui-state-highlight")
4

2 に答える 2

3

margin-leftの代わりに試してみてくださいpadding-left

パディングは、要素のコンテンツと境界線の間のスペースです。必要なのは、要素を右に「移動」することです。

于 2012-12-04T14:16:13.330 に答える
0

CSS を次のように変更するだけです。

.ui-state-highlight, .ui-state-highlight.indent {border: 4px solid #ffffa1;}
.indent { margin: 0; padding-left: 10px; }

特異性の問題であるべきです。

于 2012-12-04T14:14:34.197 に答える