پیش نیاز این جلسه، مقاله زیباسازی Typography پست، بدون ذرهای استفاده از کلاسهای Tailwind لطفا مطالعه کنید .
افزونه Tailwind CSS Typography یک ابزار است که به شما کمک میکند تا به راحتی استایلهای زیبا و خوانا را به متون خود اضافه کنید. این افزونه به ویژه برای مواقعی مفید است که شما بر روی HTMLهای ساده کار میکنید که کنترل چندانی بر روی آنها ندارید، مثلاً HTMLهایی که از Markdown تولید شدهاند یا از یک سیستم مدیریت محتوا (CMS) دریافت میشوند.
فرض کنید شما یک مقالهای دارید که با استفاده از Markdown نوشته شده است. برای اینکه این مقاله به شکلی زیبا نمایش داده شود، میتوانید از کلاسهای این افزونه استفاده کنید. مثلاً:
<article class="prose lg:prose-xl">{{ markdown }}</article>
این خط کد به مرورگر میگوید که متن داخل این تگ با استایلهای خاصی نمایش داده شود که افزونه ارائه میدهد. برای دیدن نمونه کارکرد این افزونه، میتوانید به دموی زنده در Tailwind Play مراجعه کنید.
npm install -D @tailwindcss/typography
سپس باید افزونه را به فایل تنظیمات Tailwind خود اضافه کنید:
// tailwind.config.js
module.exports = {
theme: {
// ...
},
plugins: [
require('@tailwindcss/typography'),
// ...
],
}
prose استفاده کنید. مثلا:
<article class="prose lg:prose-xl">
<h1>عنوان مقاله</h1>
<p>متن مقاله...</p>
</article>
با این کد، متن داخل تگ <article></article>
به صورت زیبا و خوانا نمایش داده میشود.
تنظیم رنگ متن: میتوانید از رنگهای مختلف خاکستری برای افزایش جذابیت و خوانایی متن خود استفاده کنید. مثلا:
<article class="prose prose-slate">{{ markdown }}</article>
در اینجا، متن به رنگ خاکستری سربی نمایش داده میشود.
تنظیم اندازه متن: اندازه متنها را میتوان تغییر داد. مثلا:
<article class="prose prose-xl">{{ markdown }}</article>
این کد سایز تمام تگ های متن را بزرگتر از حالت عادی نشان میدهد.
prose-gray خاکستری (پیشفرض)prose-slate سربیprose-zinc رویprose-neutral خنثیprose-stone سنگیprose-sm کوچکprose-base عادی (پیشفرض)prose-lg بزرگprose-xl خیلی بزرگprose-2xl فوقالعاده بزرگ<article class="prose dark:prose-invert">{{ markdown }}</article>
این کد میگوید که وقتی حالت تاریک فعال است، از استایل prose-invert استفاده کن.
<article class="prose prose-img:rounded-xl prose-headings:underline prose-a:text-blue-600">{{ markdown }}</article>
در این مثال:
prose-img:rounded-xl باعث میشود تصاویر لبههای گرد داشته باشند.prose-headings:underline باعث میشود سرعنوانها (مثل h1، h2) زیرخط دار شوند.prose-a:text-blue-600 لینکها را به رنگ آبی در میآورد.| تغییردهنده(Modifier) | هدف(Target) |
prose-headings:{utility} |
h1، h2، h3، h4، h5, h6 ,th |
prose-lead:{utility} |
[class~="lead"] برای نمایش دادن تگ متمایز از دیگر تگ های مثل اون در متن باید lead رو به آن اضافه کنید.مثل مهمترین پاراگراف بین پاراگراف ها |
prose-h1:{utility} |
h1 |
prose-h2:{utility} |
h2 |
prose-h3:{utility} |
h3 |
prose-h4:{utility} |
h4 |
prose-h5:{utility} |
h5 |
prose-h6:{utility} |
h6 |
prose-p:{utility} |
p |
prose-a:{utility} |
a |
prose-blockquote:{utility} |
blockquote |
prose-figure:{utility} |
figure |
prose-figcaption:{utility} |
figcaption |
prose-strong:{utility} |
strong |
prose-em:{utility} |
em |
prose-kbd:{utility} |
kbd |
prose-code:{utility} |
code |
prose-pre:{utility} |
pre |
prose-ol:{utility} |
ol |
prose-ul:{utility} |
ul |
prose-li:{utility} |
li |
prose-table:{utility} |
table |
prose-thead:{utility} |
thead |
prose-tr:{utility} |
tr |
prose-th:{utility} |
th |
prose-td:{utility} |
td |
prose-img:{utility} |
img |
prose-video:{utility} |
video |
prose-hr:{utility} |
hr |
<div class="grid grid-cols-4">
<div class="col-span-1">
<!-- ... -->
</div>
<div class="col-span-3">
<article class="prose max-w-none">{{ markdown }}</article>
</div>
</div>
این کد میگوید که متن داخل article حداکثر عرض نداشته باشد و تمام عرض موجود را پر کند.
<article class="prose md:prose-lg lg:prose-xl">{{ markdown }}</article>
در این مثال، با استفاده از تغییر دهنده های md:prose-lg و lg:prose-xl، اندازه فونت متن در اندازه های مختلف صفحات تغییر خواهد کرد.
aاین متن را در وقتی که روی آن ها هاور می کنیم تغییر دهیم. برای این کار، از تغییر دهندهها(Modifiers) hover و prose-a استفاده می کنیم. به کلاس prose که قبلا اضافه کردیم، تغییر دهنده مورد نظر را اضافه می کنیم:
<article class="prose hover:prose-a:text-xl">{{ markdown }}</article>
در این مثال، با استفاده از تغییر دهنده hover:prose-a:text-xl، وقتی روی تگ a متن ها هاور می کنیم، اندازه فونت آنها به text-xl تغییر خواهد کرد.
prose همراه با تغییر دهندهها(Modifiers) استفاده کنید.ممنون دنبال کردید.
نظرات