虽然为 div 设置相同的高度和宽度并将边框半径设置为 100% 会使 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>
最佳答案
overflow: hidden;
box-sizing: border-box;
padding: 50px;
容器会做这件事 :) 或者如果你可以用 flexbox 做到这一点
overflow: hidden;
box-sizing: border-box;
display: flex;
justify-content: center;
align-items: center;
像评论中建议的那样使用 svg 对象
<svg class="circle" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle fill="#FFF" cx="50" cy="50" r="50"/></svg>
关于javascript - 将div的面积缩小为一个圆圈?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41899058/