Co powiesz na proste zrobienie tego w ten sposób?
Demo
div {
border: 10px solid #000;
height: 50px;
width: 50px;
border-radius: 50%;
position: relative;
}
div:after {
height: 0;
width: 0;
display: block;
position: absolute;
right: -12px;
content: " ";
border-bottom: 12px solid #fff;
border-right: 12px solid transparent;
transform: rotate(10deg);
}
Objaśnienie: Co tu robimy używa :after
pseudo aby umieścić element absolutną okręgu, używając transform
właściwość, aby obrócić trójkąt.
Demo 2 (z animacją)
div {
border: 10px solid #000;
height: 50px;
width: 50px;
border-radius: 50%;
position: relative;
animation: spin 1s infinite linear;
}
div:after {
height: 0;
width: 0;
display: block;
position: absolute;
right: -12px;
content: " ";
border-bottom: 12px solid #fff;
border-right: 12px solid transparent;
transform: rotate(10deg);
}
@keyframes spin {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}
Moja sugestia: Jak zaktualizowaniu qustion, mówiłeś, że chciał przejrzystego rynny, chciałbym zaproponować wam używać .png
obrazu i obracanie zamiast pisać 100 linii CSS i martwić się kompatybilnością z wieloma przeglądarkami. Ewentualnie, ponieważ udostępniłem link w komentarzach, możesz użyć maskowania CSS.
co dokładnie jest obecnie tak z kątów? Masz na myśli małą lukę w wewnętrznym kręgu? Czy to problem, że zewnętrzny krąg nie jest prawdziwym kręgiem? –
Elementy przed i po nie wyglądają poprawnie. Powinny być w pełni przywiązane do "kręgu". Nie jest wystarczająco podobny do gifa. – Finnnn