I’ve updated your code so the pure HTML/CSS approach should work. I’ve added all changes to app.js, meaning the query for the annotation element and the updateScreenPosition() function.
Not sure you really need the sprite approach. In any event, because you are using three.js in version r71, it’s not yet possible to use THREE.CanvasTexture. However, you can replace it with the following code:
const texture = new THREE.Texture( canvas );
texture.needsUpdate = true;