Nexus,
В векторе такая же фигня.
<!DOCTYPE html>
<html>
<head>
<title>SVG dashed circle</title>
</head>
<body>
<svg width="640" height="640">
<circle cx="320" cy="320" r="290" fill="none" stroke="#ffbb00" stroke-width="60" />
<circle cx="320" cy="320" r="290" fill="none" stroke="#000000" stroke-width="60" stroke-dasharray="1 4" />
</svg>
</body>
</html>
Кстати, в растре также можно.
<!DOCTYPE html>
<html>
<head>
<title>Canvas dashed circle</title>
</head>
<body>
<canvas width="640" height="640"></canvas>
<script>
var ctx = document.querySelector('canvas').getContext('2d');
ctx.translate(320, 320);
ctx.arc(0, 0, 290, 0, 2 * Math.PI);
ctx.lineWidth = 60;
ctx.strokeStyle = "#ffbb00";
ctx.stroke();
ctx.setLineDash([1, 4]);
ctx.strokeStyle = "#000000";
ctx.stroke();
</script>
</body>
</html>
UPD: А если масштабировать страницу, артефакты то исчезают, то приобретают другие формы, видимо сглаживание в браузере так устроено, странно только почему вектор также искажается как растр.