مهارتهای لازم:
- آشنایی با
CSS
در این سوال قصد داریم ستونهای واکنشگرا طراحی کنیم. با تغییر اندازهی عرض این صفحه، اندازه این ستونها با توجه به کلاس و اندازه صفحه تغییر میکند.
پروژه اولیه
پروژه اولیه را از اینجا دانلود کنید. ساختار فایلهای این پروژه به صورت زیر است.
responsive-column
├── index.html
└── styles.css
جزئیات
کلاسهای زیر را با توجه به توضیحات گفته شده پیاده سازی نمائید.
- کلاس
row
: یک ردیف در صفحه ایجاد میکند.در هر ردیف حداکثر ۶ ستون و حداقل ۱ ستون قرار میگیرد. - کلاس
col
: همواره ستونهایی با عرض یکسان ایجاد میکند. به عبارتی اگر در داخل یک تگdiv
با کلاسrow
چند تگdiv
با کلاسcol
وجود داشته باشد، عرض همه تگهایdiv
با کلاسcol
یکسان است. - کلاس
col-n
: عرض عنصر را به میزان $n$ واحد از عرض عنصرparent
تنظیم میکند. - کلاس
col-sm-n
: همانند کلاسcol-n
، با فرق اینکه این کلاس هنگامی که عرض صفحه از576px
بزرگتر باشد روی عنصر اعمال میشود. - کلاس
col-md-n
: همانند کلاسcol-n
، با فرق اینکه این کلاس هنگامی که عرض صفحه از768px
بزرگتر باشد روی عنصر اعمال میشود. - کلاس
col-lg-n
: همانند کلاسcol-n
، با فرق اینکه این کلاس هنگامی که عرض صفحه بزرگتر از992px
باشد روی عنصر اعمال میشود.
نکات
- توجه کنید که اولویت اعمال همیشه برای کلاسهایی است که در
media-query
بالاتر قرار دارند. - همچنین در صورتی که عرض صفحه خارج از محدودهی یک کلاس قرار بگیرد، عرض المانی که دارای آن کلاس است
100%
میشود. به عبارتی اگر یک المان دارای کلاسcol-lg-n
باشد در صفحه با عرض کمتر از992px
، در صورتی که این المان دارای کلاس دیگری نباشد، عرض آن100%
میشود. - توجه کنید که داوری خودکار بر مبنای نام کلاسها انجام میشود.
- پروژه را با ساختار زیر ارسال کنید.
[your-zip-file-name].zip
└── styles.css
توضیحات تست نمونه
برای این سوال تستهایی با استفاده از زبان پایتون و با کمک selenium
نوشته شده است. یک نمونه از این تستها در اختیار شما قرار دارد و شما میتوانید آن را با کمک دستور زیر اجرا کنید. تستهای نمونه این سوال را میتوانید از اینجا دانلود کنید.
python3 -m unittest sample_test.py
ارسال پاسخ برای این سؤال