I'm trying to draw nice shapes in javascript, but all these libraries are really confusing. Not in terms of use, but in terms of how they operate in the background. I'm trying to understand, when I declare a shape on the JS side, is that converted to an HTML div, and styled with CSS? (excluding WebGL here) how are shapes rendered behind the scenes?