Style Rendered Markdown with Tailwind Typography
هذا المحتوى لا يتوفر بلغتك بعد.
You can use Tailwind’s Typography plugin to style rendered Markdown from sources such as Astro’s content collections.
This recipe will teach you how to create a reusable Astro component to style your Markdown content using Tailwind’s utility classes.
Prerequisites
An Astro project that:
- has Astro’s Tailwind integration installed.
- uses Astro’s content collections.
Setting Up @tailwindcss/typography
First, install @tailwindcss/typography
using your preferred package manager.
Then, add the package as a plugin in your Tailwind configuration file.
Recipe
-
Create a
<Prose />
component to provide a wrapping<div>
with a<slot />
for your rendered Markdown. Add the style classprose
alongside any desired Tailwind element modifiers in the parent element.The
@tailwindcss/typography
plugin uses element modifiers to style child components of a container with theprose
class.These modifiers follow the following general syntax:
For example,
prose-h1:font-bold
gives all<h1>
tags thefont-bold
Tailwind class. -
Query your collection entry on the page you want to render your Markdown. Pass the
<Content />
component fromawait entry.render()
to<Prose />
as a child to wrap your Markdown content in Tailwind styles.