توضیح رفتار تابع Mod() در CSS هنگام تغییر اندازه پنجره مرورگر

understanding css mod function behavior when resizing browser window
20 آبان 1403

CSS یکی از زبان‌های استایل‌دهی محبوب برای وب است که به شما امکان می‌دهد زیبایی و سبک وب‌سایت خود را کنترل کنید. با قابلیت‌های مختلف CSS، می‌توانید با یک قیاس مناسب، مانند یک نقاش، به طراحی صفحات وب بپردازید. در میان امکانات متعدد این زبان، تابع mod() می‌تواند بسیار مفید باشد، به خصوص زمانی که به خواصی همچون اندازه و مکان عناصر در صفحه بستگی دارد.

درک کارکرد تابع mod() نیازمند بررسی چگونگی رفتار آن در زمان‌های مختلف، مثلا هنگام تغییر اندازه پنجره مرورگر است. این تابع در محاسبات ریاضی مورد استفاده قرار می‌گیرد و به شما اجازه می‌دهد مقادیر مختلف را کنترل کنید و نتایج مناسبی از آن‌ها بگیرید. شاید ابتدا این مسئله پیچیده به نظر برسد، اما با کمی تمرین می‌توانید آن را به خوبی درک کنید.

هنگامی که از تابع mod() در استایل‌های CSS خود استفاده می‌کنید، ممکن است متوجه شوید که رفتار این تابع هنگام تغییر اندازه مرورگر چطور تغییر می‌کند. این رفتار می‌تواند برای طراحی‌های واقع‌گرایانه و پاسخگو (responsive) بسیار مفید باشد. در ادامه مثالی را بررسی خواهیم کرد که تغییرات این تابع را به وضوح نشان می‌دهد.

مثال عملی برای فهم تابع Mod()

به عنوان یک مثال ساده می‌توانید از تابع mod() برای تعیین عرض یا ارتفاع یک عنصر به روشی نسبی استفاده کنید. بیایید نگاهی به این مثال بیاندازیم:


<style>
    .box {
        width: calc(100px + (50px * (100vw % 3)));
        height: 100px;
        background-color: #f90;
        transition: width 0.5s ease;
    }
</style>
<div class="box"></div>

توضیح خط به خط کد

<style>: این تگ استایل، استایل‌دهی محلی برای صفحه را تعریف می‌کند.
.box: این کلاس به عنصر جعبه اضافه شده و استایل‌های آن را تنظیم می‌کند.
width: calc(100px + (50px * (100vw % 3)));: عرض عنصر جعبه با استفاده از یک محاسبه که شامل تابع mod() است تنظیم می‌شود. عرض جعبه براساس عرض مشاهده‌گر تغییر می‌کند و یک اثر دینامیک ایجاد می‌کند.
height: 100px;: ارتفاع ثابت برای جعبه تنظیم شده است.
background-color: #f90;: رنگ پس‌زمینه جعبه به نارنجی تنظیم می‌شود.
transition: width 0.5s ease;: افزودن یک انیمیشن آرام برای تغییر عرض جعبه هنگام تغییر اندازه پنجره مرورگر.
</style>: پایان تگ استایل.
<div class="box"></div>: یک عنصر div با کلاس box ایجاد می‌کند که تابع mod() به آن اعمال می‌شود.

سوالات متداول

؟

چرا تابع mod() در CSS مفید است؟

؟

آیا تغییر اندازه پنجره مرورگر بر تابع mod() تأثیر می‌گذارد؟

؟

چگونه می‌توان انیمیشن را هنگام تغییر اندازه مرورگر اعمال کرد؟