You can easily generate 2D coordinates from 3D coordinates to position your label on screen with HTML/CSS.
Have a look at this thread Check if a point is in front or behind the mesh and PG https://playground.babylonjs.com/#CUH660#3. In this PG, I draw in CSS two squares, given two 3D positions.
If you need that the “i” icons be transparent when they are behind something (which was the purpose of the thread), don’t do it as I did, copying the zbuffer is taxing to do each frame.
Do it as @Makc3d did in this thread How to create Sketchfab like annotations with Three.js? - Questions - three.js forum - it’s a 3js thread, but the technic is not specific.
To sum it up, use two “i” icons, one normal and one with transparency on + depth test false. Both will be drawn on each other. Where parts of the normal icon are not drawn (because behind something), the same part of the transparent one will still be drawn because the depth test is disabled.