To be fair, HTML started as an SGML application, meaning, as a declarative language. In this aspect, it's not so much about static vs dynamic, but about two cultures of programming. However, there's a place for both approaches – and probably it's about the right mix.