حتما برای شما هم اتفاق افتاده که یک متن رو درون یک شی قرار می دید و نمی دونید طولش چقدره و به دردسر می خورید ، با css میتوانیم هنگامی که متن طولانی میشود و میخواهد کادری که شما مشخص کرده اید را بهم زند و نامرتب شود بصورت خودکار در انتهای آن ” … ” ( سه نقطه ) قرار دهیم. (مثل تصویر زیر)
برای مثال در تصویر بالا میبینید که نام آهنگ طولانی بوده و میخواسته کادری رو که طراحی کردیم رو بهم بزنه و با این قابلیت css متن رو محدود کرده و … گذاشته.
یکی از خاصیت هایی که در CSS از طرف توسعه دهندگان نادیده گرفته شده است خاصیت text-overflow است. توسط این خاصیت میتوان مشخص کرد که در صورتی متن overflow شود چه کاری باید انجام شود.
این خاصیت یک مقدار به نام ellipsis میگیرد که باعث بوجود آمده سه نقطه در متن های طولانی میشود, که انتهای آنها دیده نمیشود. اما استفاده تنها از این خاصیت کارساز نیست.
علاوه بر خاصیت گفته شده در بالا باید از دو خاصیت دیگر هم استفاده کرد. overflow و white-space
با استفاده از مشخصه white-space مشخص میکنیم که متن نباید به دو خط شکسته شود. و همچنین با استفاده از مشخصه overflow ادامه متن های طولانی که نمایش داده نمیشود را پنهان میکنیم.
در صورتی که برای زبان پارسی میخواهید استفاده کنید باید direction: rlt ; را هم به مشخصه های بالا اضافه کنید تا سه نقطه در سمت چپ نمایش داده شود.
خب بنظرم توضیحات کافیست به سراغ کد ها برویم. برای مثال یک div ایجاد کرده ایم که درون آن نیز متن قرار دارد.
1 2 3 |
<div class="text-fullkade"> <h2>آموزش ایجاد ... در انتهای متن های طولانی با css با ما همراه باشید</h2> </div> |
و کد css هم بصورت زیر
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
.text-fullkade { \\ مقداری که متن از آن طولانی تر شود تبدیل به سه نقطه میشود و یا همان اندازه طول کادرمان width: 100px; } .text-fullkade h2 { \\ مخفی کردن ادامه متن که تبدیل به ... شده overflow: hidden; \\ ایجاد سه نقطه text-overflow: ellipsis; \\ یعنی متن شکسته نشده و به خط بعد نرود white-space: nowrap; \\ برای نوشته های زبان فارسی direction: rlt ; } |
توضیحات لازم داده شده ، اگر سوالی داشتید در قسمت نظرات بپرسید.
دمت گرم بمولا
زنده باشید
سلام.
بعد از مخفی شدن برای نمایش کامل متن باید از چه روشی استفاده کنیم
درود بر شما چطوری میشه وقتی کاربر روی 3 نقطه کلیک کرد بقیه متن بیاد؟