divに同じ高さと幅を与え、ボーダー半径を100%に設定すると、divのような「ルック」が円のようになりますが、現実にはまだ変わった四角形です。 divを「本当の」サークルにするにはどうすればよいですか?私の目的のために、私は作成したサークル内でのみアイテムをドロップ可能にしたい。 divを円のように見えるようにすると、アイテムはエッジの円の外側ではまだドロップ可能です。コンテナのdivの範囲を円に縮小しますか?
$(".circle").droppable();
$(".drop").draggable({
containment: "parent"
});
.circle
{
width: 200px;
height: 200px;
border: 1px solid black;
border-radius: 100%;
display: inline-block;
}
.drop
{
border: 1px solid black;
display: inline-block;
}
.drop:hover
{
cursor: pointer;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>
<div class="circle">
<div class="drop">
Drop Me<br>
Outside
</div>
</div>
サークル形式のSVGを使用する必要があります。 CSS-Tricksには良いチュートリアルがあります: SVGでは、各ノードとラインは、擬似的ではなくターゲット設定、位置付け、相互作用が可能な要素です境界線を丸めた四角形の円の円。 – Korgrue
上記のコメントは正しいです。 CSSを使うと、要素を円にクリップするのに 'clip-path'を使うだけですが、サンプルを試してみましたが、クリップパスでも問題と同じ動作をします。おそらくサークルの半径を使って円周に沿ってポイントを見つけ、ドロップ可能なボックスが持つポイントを見てそれに応じて行動する計算をしなければならないでしょう。 – Harry
あなたは答えを読んだことがありますか? –