Are there any words for the design model implemented by HTML + CSS + JavaScript, either for that specific set of technologies or any abstract pattern that they follow?
One term which applies is Separation of Concerns — the idea that parts of a program serving different purposes should be separated into pieces which can be designed, tested, and debugged separately, possibly by different people.
In an idealized web page, the HTML deals only with the semantic structure of the content of the page, the CSS deals only with the appearance of the page, and the JavaScript deals only with the behavior of the page. These three things can be in different files authored by different teams with different skill sets, and each might be reused independently of the others.
Of course, in the real world, this ideal is rarely met — we adjust the semantic structure of our web page to make it easier to get the behavior or appearance we want, use JavaScript to deliver content to a page or adjust its appearance, and sneak CSS into the page itself. Knowing the ideal, however, can help us do a better job of design even when we break the rules.
It’s hard to say. I think it depends on the context in which the technologies are applied, e.g. They could be used in a MVC pattern.
Really, they are separate technologies with different purposes. Together they provide structure, function and aesthetics to data across the web.
This particular set – with Flash optionally thrown in – is generally called browser-side or client-side (although the latter can be used in different contexts too).
The whole application is implemented browser-side. The webserver just provides static content.
In case you add dynamically generated data from the server – static HTML, CSS, JS and dynamic data in JSON or XML – it’s called AJAX.