Чтобы реализовать некоторые причудливые раундовые индикаторы хода, я использовал элемент с радиусом границы и переполнением: скрытый. Все выглядит отлично, кроме одного: все браузеры отображают тонкую линию, где заканчивается переполнение.Тонкая линия при переполнении рендера: скрыта с граничным радиусом
вот несколько простых сниппет, который воспроизводит эту ошибку во всех основных браузерах:
function setMarginLeft(value){
\t var element = document.querySelector(".overflowing");
element.style.marginLeft = value+"px";
}
function setMarginTop(value){
\t var element = document.querySelector(".overflowing");
element.style.marginTop = value+"px";
}
.backdrop {
background-color: white;
padding: 10px;
width:100px;
height:100px;
}
.circle {
background-color: red;
width:100px;
height:100px;
border-radius: 100px;
overflow:hidden;
}
.overflowing {
width:200px;
height:200px;
margin-top: -1px;
margin-left:1px;
background-color:#fff;
}
input {
margin-top:10px;
}
<div class="backdrop">
<div class="circle">
<div class="overflowing"></div>
</div>
</div>
<em>Feel free to play around with these values:</em><br />
Top margin: <input type="number" id="cngMargin" oninput="setMarginTop(this.value)" value="-1"><br />
Left margin: <input type="number" id="cngMargin" oninput="setMarginLeft(this.value)" value="1">
, так как расположение не так легко, как выше фрагмент кода, я не могу изменить расположение много. Я предполагаю, что основная проблема заключается в антиалиасинге браузера, который, по моему мнению, не изменен css, или это так?
Я погубил себя глупо в этом вопросе и не могу придумать действительно полезный ресурс. я думаю, если ничего не будет работать, мне придется делать это заново в SVG или на холсте -.-
Почему вы должны 'маржинального-top' и' маржинального-left' на '.overflowing' элемента? Без этого я не вижу кровотечения. – Harry