And that's the same reason HTML/CSS are so complex. Everyone is contributing to standards, which is already hard to do, and many of the contributing parties have competing platforms. It's in their best interest to, if not sabotage, at least make the web platform super complex and clunky to discourage or slow down development.
Having spent years on this crap, I can only conclude that it is such a dire, revolting mess for one reason and one reason only: vendor lockin.
You're not going to be taking that UI code anywhere else. And that's the point, imho.