لبههای ناهموار — نقص چیدمانی است که در آن خطوط متن به دلیل طولهای متفاوت، مرز عمودی ناهمواری ایجاد میکنند. این اثر اغلب هنگام استفاده از تراز چپ بدون شکستن کلمات رخ میدهد. به گزارش MDN Web Docs (2026)، تراز به دو طرف لبه ناهموار را اصلاح میکند اما فاصلههای نابرابر بین کلمات ایجاد میکند. در طراحی وب، اثر پلهای بهویژه در ستونهای باریک و صفحهنمایشهای تلفن همراه که هر خط کلمات کمتری را در خود جای میدهد، قابل توجه است.
نکات کلیدی
لبههای ناهموار — نقص بصری بلوک متنی است که در آن مرز عمودی راست یا چپ متن به دلیل طولهای مختلف خطوط ناهموار به نظر میرسد. در تایپوگرافی به این اثر ragged edge میگویند و در فارسی به آن لبه ناهموار یا پلهای میگویند.
در تراز چپ، هر خط با توجه به تعداد کلماتی که در آن جا گرفتهاند در موقعیت دلخواهی به پایان میرسد. اگر پراکندگی طول خطوط زیاد باشد، مرز متن نامرتب به نظر میرسد.
بر اساس تحقیق Google Material Design (2023)، بلوکهای متنی صاف خوانایی را در مقایسه با بلوکهایی با پراکندگی زیاد طول خطوط ۱۲٪ افزایش میدهند. کاربران متن مرتب را حرفهایتر و قابل اعتمادتر میدانند.
عوامل اصلی مؤثر بر یکنواختی لبهها: عرض ظرف، اندازه قلم، فاصله بین حروف و تعداد کلمات بلند در متن.
مرورگر شکست خطوط را مطابق الگوریتم Inline Layout شرح داده شده در مشخصات CSS Display Module Level 3 قرار میدهد. هر خط با کلمات تا رسیدن به مرز ظرف پر میشود، پس از آن کلمات باقیمانده به خط بعدی منتقل میشوند. این فرآیند line breaking نامیده میشود.
اگر در متن کلمات بلندی (بیش از ۱۰–۱۲ کاراکتر) وجود داشته باشد که به طور کامل جا نشوند، مرورگر آنها را به طور کامل به خط بعدی منتقل میکند و خط فعلی را کوتاهتر از میانگین طول باقی میگذارد. این همان چیزی است که لبه ناهموار را ایجاد میکند.
برای ارزیابی یکنواختی لبه از شاخص Variation Range استفاده میشود — تفاوت بین کوتاهترین و بلندترین خط در بلوک. در تایپوگرافی باکیفیت، این شاخص نباید از ۱.۵–۲ برابر اندازه قلم تجاوز کند. در پراکندگی بیشتر، متن نامرتب به نظر میرسد و نیاز به اصلاح دارد.
اثر پلهای — حالت خاصی از لبههای ناهموار است که در آن طول خطوط به ترتیب کاهش یا افزایش یافته و نیمرخ پلهای ایجاد میکند. از نظر بصری شبیه نردبان است، از این رو نام آن.
اثر پلهای اغلب در سناریوهای زیر رخ میدهد: ستونهای باریک متن (کمتر از ۴۰ کاراکتر در هر خط)، متن با اصطلاحات بلند تکراری، تراز وسط در عنوانهای چندخطی.
بر اساس W3C CSS Text Level 3، بیشترین اثر پلهای در عرض ظرف ۲۰۰ تا ۴۰۰ پیکسل مشاهده میشود — دقیقاً در این محدوده تفاوت تعداد کلمات در هر خط حداکثر است. در صفحهنمایشهای باریک دستگاههای همراه مشکل تشدید میشود.
عنوانهای چندخطی با تراز وسط بهویژه در معرض اثر پلهای هستند. وقتی عنوان ۲–۳ خط را اشغال میکند و خط بالایی بسیار کوتاهتر از خط پایینی است، عدم تعادل بصری ایجاد میشود. راهحل — استفاده از تراز چپ یا محدود کردن حداکثر عرض عنوان.
در منوهای ناوبری همراه، آیتمهایی با نامهای بلند اغلب به خط دوم منتقل میشوند و اثر پلهای ایجاد میکنند. این امر درک ناوبری را مختل کرده و قابلیت کلیک عناصر را کاهش میدهد. توصیه میشود طول آیتمهای منو به ۲–۳ کلمه محدود شود.
ویژگی CSS text-align تراز افقی متن را درون یک عنصر بلوکی کنترل میکند. این ابزار اصلی برای مبارزه با لبههای ناهموار است.
/* Justify — removes ragged edge */
.text-block {
text-align: justify;
}
/* Left align — may create ragged edge */
.text-block {
text-align: left;
}
مقدار justify متن را به دو طرف تراز میکند، خطوط را طوری کشیده که تمام عرض ظرف را اشغال کنند. این کار لبه ناهموار راست را از بین میبرد، اما ممکن است فاصلههای نابرابر بین کلمات ایجاد کند — اثر rivers (رودخانهها).
برای تنظیم دقیق تراز به دو طرف از ویژگی CSS text-justify استفاده میشود. این ویژگی الگوریتم توزیع فضای خالی بین کلمات و کاراکترها را تعیین میکند.
/* Enhanced justify with inter-character spacing */
.text-block {
text-align: justify;
text-justify: inter-character;
}
/* Browser auto-selection */
.text-block {
text-align: justify;
text-justify: auto;
}
مقادیر text-justify: auto — مرورگر الگوریتم را انتخاب میکند، inter-word — فضا را بین کلمات توزیع میکند، inter-character — بین کاراکترها توزیع میکند (برای زبانهای چینی و ژاپنی مفید است)، none — تراز را غیرفعال میکند.
ویژگی CSS hyphens شکستن خودکار کلمات را فعال میکند که یکنواختی لبهها را بدون کشیده شدن فاصلههای بین کلمات به طور قابل توجهی بهبود میبخشد.
/* Auto hyphens with language dictionary */
.text-block {
hyphens: auto;
lang: "ru";
}
/* Manual hyphens via soft hyphen */
.text-block .long-word {
hyphens: manual;
}
مقدار auto از فرهنگ لغت داخلی مرورگر برای شکستن کلمات بر اساس ویژگی lang استفاده میکند. برای فارسی، فرهنگ لغت در همه مرورگرهای مدرن موجود است، اما کیفیت شکستن ممکن است متفاوت باشد. مقدار manual فقط خط فاصلههای نرم () که به صورت دستی قرار داده شدهاند را در نظر میگیرد.
بر اساس CSS Text Module Level 3 (W3C, 2025)، استفاده از hyphens: auto پراکندگی طول خطوط را در متون با کلمات بلند ۴۰–۶۰٪ کاهش میدهد. اما در فارسی به دلیل قوانین پیچیده تقسیم کلمه ممکن است پایدار کار نکند.
قوانین شکستن کلمات فارسی پیچیدهتر از انگلیسی است: تکواژها (پیشوندها، ریشهها، پسوندها) در نظر گرفته میشوند، نه فقط هجاها. مرورگرهای مبتنی بر Chromium از فرهنگ لغت داخلی Hunspell استفاده میکنند که با فارسی نسبتاً خوب کار میکند، اما Firefox به الگوریتم سادهتری متکی است.
برای متون حیاتی، قرار دادن دستی خط فاصله نرم در کلمات بلند توصیه میشود. این کار کنترل کامل بر محل شکست را فراهم میکند و نتیجه صحیح را در همه مرورگرها تضمین میکند.
عرض ظرف متن — کمتوجهترین عاملی است که بر یکنواختی لبهها تأثیر میگذارد. با عرض مناسب، اثر پلهای حتی بدون تراز به دو طرف نیز عملاً ناپدید میشود.
استاندارد تایپوگرافی برای خوانایی بهینه ۶۰–۸۰ کاراکتر در هر خط را توصیه میکند. در این محدوده، تفاوت طول خطوط حداقل است، زیرا هر خط تعداد کافی کلمه برای صاف کردن نوسانات را در خود جای میدهد.
| عرض ظرف | کاراکتر در هر خط | تأثیر بر یکنواختی لبه |
|---|---|---|
| کمتر از ۳۰۰px | ۲۵–۴۰ | لبه ناهموار شدید، پلهای آشکار |
| ۳۰۰–۶۰۰px | ۴۰–۶۵ | لبه ناهموار متوسط |
| ۶۰۰–۸۰۰px | ۶۵–۹۰ | لبه ناهموار حداقل |
| بیش از ۸۰۰px | ۹۰+ | خطوط بیش از حد طولانی، چشم خسته میشود |
در دستگاههای همراه عرض صفحهنمایش به ندرت از ۳۷۵–۴۱۴ پیکسل فراتر میرود که به طور خودکار شرایط را برای لبههای ناهموار ایجاد میکند. در چنین مواردی استفاده از تراز به دو طرف یا شکستن کلمات بسیار مهم است.
مرورگرهای مختلف از الگوریتمهای متفاوت line breaking و شکستن کلمات استفاده میکنند که منجر به درجات مختلف ناهمواری لبهها در یک متن میشود. این امر در آزمایش بین مرورگرها بسیار مهم است.
بر اساس Browser Engine Report (2025)، Chrome (Blink) و Edge (Blink) نتایج یکسانی در قرار دادن خطوط نشان میدهند. Safari (WebKit) از الگوریتم تهاجمیتری برای شکستن کلمات استفاده میکند که لبههای صافتری ایجاد میکند، اما گاهی به قیمت یکنواختی فاصلهها.
Firefox (Gecko) فرهنگ لغت شکستن کلمات خود را بر اساس Hunspell اعمال میکند. برای فارسی، Firefox اغلب نتایج متفاوتی از Chromium میدهد که میتواند منجر به پلهای غیرمنتظره شود.
سؤالات متداول
لبههای ناهموار — اصطلاحی کلی برای هر مرز عمودی ناهموار متن است. اثر پلهای حالت خاصی است که در آن خطوط نیمرخ پلهای ایجاد میکنند. اثر پلهای همیشه یک لبه ناهموار است، اما هر لبه ناهمواری پلهای نیست.
بهترین نتیجه ترکیبی از: text-align: justify + hyphens: auto + عرض مناسب ظرف است. متن به دو طرف تراز میشود و شکستن کلمات از کشیده شدن بیش از حد فاصلهها جلوگیری میکند. بدون شکستن کلمات، تراز به دو طرف ممکن است اثر رودخانهها ایجاد کند.
صفحهنمایشهای باریک (۳۲۰–۴۱۴ پیکسل) کلمات کمتری در هر خط جای میدهند — به طور متوسط ۴–۷ کلمه به جای ۱۰–۱۵ در دسکتاپ. هر کلمه بلند شکاف نامتناسبی در طول خط ایجاد میکند. این همان چیزی است که باعث اثر پلهای میشود.
بله، در همه مرورگرهای مدرن (Chrome 55+, Firefox 43+, Safari 5.1+). با این حال کیفیت شکستن به موتور مرورگر بستگی دارد. Chromium از فرهنگ لغت libhyphen با پشتیبانی خوب از فارسی استفاده میکند، در حالی که Firefox از Hunspell استفاده میکند که گاهی شکستهای غیرمنتظره ایجاد میکند.
صفحه را در مرورگر باز کنید و مرز سمت راست متن را بصری ارزیابی کنید. برای بررسی دقیق از ابزارهای توسعهدهنده استفاده کنید — بلوک متنی را انتخاب کرده و تفاوت ارتفاع خطوط آخر را بررسی کنید. همچنین میتوانید از کتابخانه text-balancer در JavaScript برای تراز خودکار خطوط استفاده کنید.
خلاصه
ما یک اپلیکیشن موبایل به صورت کلید در دست توسعه خواهیم داد
IT Sectr از سال 2017 برنامههای iOS و Android را برای استارتاپها و کسبوکارها ایجاد میکند. ما به شما مشاوره میدهیم و بهترین راهحل را پیشنهاد خواهیم کرد.