If my advice seems confusing, it is because it is 🙂 Let me try and sum it up.
1. First check if there is a semantic html tag that could be used in stead. (semantic tags are always preferable)
2. If the element is a div or span you can change the tag if you like, but be aware that there are some potential issues, if you e.g. load a web-component with the same tag name.