Skip to main content
Layouts are the templates slides are built on. Each slide references one layout, and that layout’s shapes appear on the slide inside an inherited block. Editing a layout changes every slide that uses it, which is how titles, footers, bullets and brand furniture are restyled across a deck in one edit. A layout’s body is the same HTML as a slide’s. Only the root differs: it carries the slide-layout class, plus the layout’s identity in data-layout-* attributes.

Inherited shapes and placeholders

Two classes carry special meaning. Everything else, such as logos, rules and background images, is plain HTML. inherited shapes come from the layout. They can’t be modified or deleted on a slide, and reappear if you try, but they’re fully editable in the layout’s own HTML. Only the layout’s own inherited block, holding master shapes, is fixed everywhere. ph shapes are placeholders: the slots slides bind to for position, styling and content. Their data-ph-idx is that binding, so dropping it, or removing the placeholder, orphans the slide shapes attached to it. Other data-ph-* attributes (sz, orient, has-prompt) are PowerPoint metadata, round-tripped as-is.

Placeholder types

Pair ph with an explicit type class. A bare class="ph" defaults to a text slot, so an object or media slot has to say so. Title and text Furniture Object and media drop zones These stay empty in the layout, carrying only position and any empty-state styling:

Setting inherited styles

Text inside a layout placeholder is sample text. It previews how slides will look but never appears on a slide, since slides supply their own text. Styling it is how you set the defaults slides inherit: what you see in the layout is what slides get. Body placeholders show one sample line per outline level. The first line at each level defines that level’s style across every slide using the layout.
A line left unstyled inherits the theme’s own style for that level.

Root attributes