Set Custom HTML in code?

What would be the best way to create a system (either a single form, or using hash routing, or a series of forms) that consists of a screen with some navigation buttons (forward, back, etc) which do not change, but display various HTML files depending on the button pressed?

For example, I have 5 HTML files and associated CSS files uploaded into my Assets folder, and I’d like to have a “Navigation” system consisting of a few Anvil Components, and when some of those components are pressed (buttons), the HTML file displayed changes? I know we can change the entire Form’s HTML, but how can we keep a small Nav overlay with Anvil components on it, and only change an inner frame’s HTML? Is it necessary to use an Iframe?