You can have WYSIWYG with HTML. You just have to use pixel values for everything and assume some fixed pixel width of your application. Flash can rescale also, but it runs into the same layout/rescaling problems as you do with HTML.
Yes, browsers do have different layout engines available, but they all go through buggy and inconsistent JavaScript and CSS in the end: the chain is as strong as the weakest link.