iFrames were never a correct solution, for anything. They’re a microsoft invention, and no browser but IE ever supported them the way Microsoft intended them to be. I have no idea what you mean by “like to be as semantic as possible”, as the word ‘semantic’ doesn’t fit, so I don’t know what word you actually meant. Creating a separate <div> and formatting for style and layout with CSS is the correct solution.