← Back to context

Comment by Animats

2 years ago

It shouldn't have had inheritance by default. It was designed at the height of object-oriented programming, and so it had to have inheritance. This results in blocks of CSS turning off stuff in case some outer CSS turned it on.

It really should have been a constraint system. Layout should be something that says that X is to the right of Y, Y is below Z, A and B have the same height, etc. But people didn't really know how to do those back then. See the 2D sketching system in Autodesk Inventor/Fusion to see this done right. That can do more than boxes (it understands curves) but web layout should probably just be boxes.

Maybe it shouldn't be textual at all. Maybe layout should be designed entirely in graphical tools.

Cannot put text on top of text. Boxes must be disjoint. If you want another layer, OK, but layers should work like windows.