import { Meta, Canvas } from '@storybook/blocks'; import * as ArticleStories from './Article.stories.svelte'; # Article The `Article` component contains all the contents of our story. > 📌 In most cases, **you don't need to mess with the `Article` component** because it's already set up in the Graphics Kit. ```svelte
``` ## Custom column widths The `Article` component also establishes the widths of columns that contain individual sections of the story, such as text, photos, and charts. The default column widths follow a basic class scheme: - `narrower` The narrowest... - `narrow` A bit narrower than the default body text column - `normal` **The default width of the body text column** - `wide` A bit wider - `wider` A bit wider than wide... - `widest` Edge-to-edge, but _excluding_ the left and right padding on `Article` - `fluid` Fully edge-to-edge You can set custom column widths by passing an object to the `columnWidths` prop with pixel values for the `narrower`, `narrow`, `normal`, `wide` and `wider` classes. These can then be used by the `Block` component or other elements housed inside `
`. > **For most Graphics Kit pages, you shouldn't customise the column widths.** Other Reuters tools, like our AI templates, use our default column widths, so customising those widths here has downstream consequences for graphics made outside Graphics Kit. The main exception is SREP stories. ```svelte
``` If you're not using our `Block` component, you can still inherit the column widths from `Article` and create your own custom containers by using [CSS variables](https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_custom_properties) like this: ```svelte
``` ... or you can make your column widths entirely configurable by adding classes and manually specifying widths: ```svelte
``` Here's an example of how custom `columnWidths` can be used to change column widths: