Import
import { Subheading } from '@contentful/f36-components';// orimport { Subheading } from '@contentful/f36-typography';
Examples
Basic
I love Forma 36 design system
Margins
By default Subheading
component has a margin bottom of spacingM
(1rem
). You can override the default margin bottom by specifying it explicitly on the component level by marginBottom="none"
or any other value from our spacing options
I love Forma 36 design system.
I love Forma 36 design system.
I love Forma 36 design system.
as
property
By default Subheading
has an h3
tag. But you can change it by providing as
prop with values from h1
to h6
.
I love Forma 36 design system
Truncated text
Sometimes you might have to truncate the text in the Subheading
component, so we provide the prop especially for that. Under the hood, what it does is add overflow: hidden
and set text-overflow
to ellipsis
. Have a look at the example below:
I love Forma 36 design system, I love Forma 36 design system, I love Forma 36 design system
Composition
Content type ID
Use this ID to retrieve everything related to this content type via the API.
Props (API reference)
Open in StorybookName | Type | Default |
---|---|---|
as | HTML Tag or React Component (e.g. div, span, etc) | |
children | ReactNode | |
className | string CSS class to be appended to the root element | |
css | string number false true ComponentSelector Keyframes SerializedStyles ArrayInterpolation<undefined> ObjectInterpolation<undefined> (theme: any) => Interpolation<undefined> | |
fontColor | "blue100" "blue200" "blue300" "blue400" "blue500" "blue600" "blue700" "blue800" "blue900" "gray100" "gray200" "gray300" "gray400" "gray500" "gray600" "gray700" "gray800" "gray900" "green100" "green200" "green300" "green400" "green500" "green600" "green700" "green800" "green900" "orange100" "orange200" "orange300" "orange400" "orange500" "orange600" "orange700" "orange800" "orange900" "purple100" "purple200" "purple300" "purple400" "purple500" "purple600" "purple700" "purple800" "purple900" "red100" "red200" "red300" "red400" "red500" "red600" "red700" "red800" "red900" "colorPrimary" "colorPositive" "colorNegative" "colorWarning" "colorWhite" "yellow100" "yellow200" "yellow300" "yellow400" "yellow500" "yellow600" "yellow700" "yellow800" "yellow900" | |
fontSize | "fontSize4Xl" "fontSize3Xl" "fontSize2Xl" "fontSizeXl" "fontSizeXlHigh" "fontSizeL" "fontSizeLHigh" "fontSizeM" "fontSizeMHigh" "fontSizeS" "fontSizeSHigh" | |
fontStack | "fontStackPrimary" "fontStackMonospace" | |
fontWeight | "fontWeightNormal" "fontWeightMedium" "fontWeightDemiBold" | |
isTruncated | false true | |
isWordBreak | false true | |
letterSpacing | "letterSpacingDefault" "letterSpacingWide" | |
lineHeight | "lineHeightDefault" "lineHeightCondensed" "lineHeight4Xl" "lineHeight3Xl" "lineHeight2Xl" "lineHeightXl" "lineHeightXlHigh" "lineHeightL" "lineHeightLHigh" "lineHeightM" "lineHeightMHigh" "lineHeightS" "lineHeightSHigh" | |
margin | "none" "spacing2Xs" "spacingXs" "spacingS" "spacingM" "spacingL" "spacingXl" "spacing2Xl" "spacing3Xl" "spacing4Xl" sets margin to one of the corresponding spacing tokens | |
marginBottom | "none" "spacing2Xs" "spacingXs" "spacingS" "spacingM" "spacingL" "spacingXl" "spacing2Xl" "spacing3Xl" "spacing4Xl" sets margin-bottom to one of the corresponding spacing tokens | |
marginLeft | "none" "spacing2Xs" "spacingXs" "spacingS" "spacingM" "spacingL" "spacingXl" "spacing2Xl" "spacing3Xl" "spacing4Xl" sets margin-left to one of the corresponding spacing tokens | |
marginRight | "none" "spacing2Xs" "spacingXs" "spacingS" "spacingM" "spacingL" "spacingXl" "spacing2Xl" "spacing3Xl" "spacing4Xl" sets margin-right to one of the corresponding spacing tokens | |
marginTop | "none" "spacing2Xs" "spacingXs" "spacingS" "spacingM" "spacingL" "spacingXl" "spacing2Xl" "spacing3Xl" "spacing4Xl" sets margin-top to one of the corresponding spacing tokens | |
testId | string A [data-test-id] attribute used for testing purposes |
Density support
This component supports multiple densities thanks to the useDensity hook and automatically adjusts its styling for each density (when wrapped with the DensityProvider
).