HTML Viewer 365

Run interactive HTML, CSS, and JavaScript directly inside PowerPoint and Excel. Save polished pages with the document so dashboards, 3D models, mockups, and references stay in context.

HTML Viewer 365 app icon

Why teams use HTML Viewer 365

Some Office documents need more than plain text or screenshots. HTML Viewer 365 gives you a focused place to paste a self-contained HTML page and keep the rendered result beside the slide or workbook where the conversation is happening.

The add-in saves the HTML with the document and renders it in a sandboxed iframe, so the page stays portable without injecting your pasted HTML into the parent Office add-in page.

Features

PowerPoint and Excel support

Use the same content add-in in slides and workbooks.

Saved per-document HTML

Reopen the file later and keep the pasted HTML source with the document.

Sandboxed JavaScript

Run pasted scripts in an isolated, sandboxed frame.

Clean editing workflow

Open the editor, paste the source, save, and collapse the toolbar for more room.

Sample

Copy the HTML from the left column, paste it into HTML Viewer 365, and the add-in will render the same page shown on the right. This snippet is self-contained: HTML, CSS, and content in one block.

Slide card HTML

Rendered preview

Tip: Write your HTML to fill the whole frame

Fixed-size HTML can waste space in a large frame and make text collide when the add-in is resized smaller. The two screenshots below show both problems.

Large frames: a centered fixed card leaves unused slide space around the content.
Fixed-size HTML card that does not fill the whole frame
Small frames: fixed text can run into nearby content instead of scaling down.
Fixed-size HTML text collides with footer content in a small frame

Treat the iframe like the slide. Make the outer shell fill the viewport, then reserve a flexible middle row with minmax(0, 1fr) so panels, charts, or tab content do not push into footer content.

body {
  margin: 0;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
}

.slide-card {
  width: 100vw;
  height: 100vh;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
}

Put the important text sizes in CSS variables. Use readable clamp() baselines for normal frames, then reduce only the necessary values in a short-height media query.

:root {
  --title-size: clamp(34px, 8.4vmin, 96px);
  --body-size: clamp(18px, 3.2vmin, 32px);
  --label-size: clamp(14px, 2.4vmin, 20px);
}

@media (max-height: 420px) {
  .slide-card {
    --body-size: 12px;
    --label-size: 11px;
  }
}

Common use cases

Frequently asked questions

Can I use CSS?

Yes. Put the CSS in a style tag inside the pasted HTML so the snippet stays self-contained.

Will JavaScript run?

Yes. HTML Viewer 365 runs pasted scripts inside an isolated, sandboxed frame.

Does the HTML stay with the document?

Yes. The add-in saves the HTML source in document settings so it is available when you reopen the file.

How does HTML Viewer 365 handle my data?

HTML Viewer 365 is designed to minimize data collection and protect your content. We never upload or store your PowerPoint presentation, Excel workbook, or HTML source on our servers. The add-in runs the HTML in a sandboxed frame that does not receive direct access to the add-in’s account session or Office document APIs. JavaScript can contact external services, so only run code you trust. Read our privacy policy for full details. Need more information or have special requirements? Contact support and we'll help.

What should I avoid putting in snippets?

Only paste code you trust. Avoid depending on private resources unless everyone opening the file can access them.

Ready to keep the right HTML in view?

Install HTML Viewer 365 from AppSource, paste a self-contained snippet, and keep the rendered page beside the Office content it supports.