On the client side, <iframe> is the only practical option. You can scroll it, but it may not work in the long run, because it is technically close to a clickjacking attack.
There is also a cross-site XHR, but you need to abandon the destination, and today it works only in the last few browsers.
Getting server-side HTML is very simple (every decent web platform has the ability to load a page and parse HTML, and you can use XPath / XSLT or DOM to extract the bit you want).
Getting styles will be tricky - CSS rules may not work with HTML snippets taken out of context. You will need to parse the CSS, extract and transform the rules, or use a browser and read the currentStyle each node.
Obviously, you need to strongly filter the HTML that you extract to avoid XSS. This is harder than it sounds.
If you don't need to automate this, a good HTML + CSS WYSIWYG editor can extract a piece of content with styles.
source share