رفتن به مطلب

تاپیک جامع آموزش تکنولوژی Less


پست های پیشنهاد شده

با سلام خدمت شما دوستان عزیز . تقریبا 1 ماهی هستش که قصد داشتم یک سری آموزشی در مورد Less بدم که مشغله کاری اصلا اجازه نمیداد ! اما الان با یک آموزش کامل در این مورد در خدمتتون هستم . تقریبا هر طراح وبی دوست داره که توی کدنویسی بهترین عملکرد و سریعترین سرعت رو داشته باشه معمولا زبان استایل نویسی CSS یکی از بزرگترین مشکلاتی که داره بیش از حد بودن تعداد تکرار هستش ! بله تکرار ! به طوری که ممکنه سر یک پروژه طراحی شما چندین عنصر رو چندین هزار بار توی پروژه خودتون تکرار کنید ! مطمعن باشید با پایان این آموزش شما 1 نه 100 دل عاشق Less خواهید شد :D

less-css-cover.jpg

معمولا طراح های حرفه ایی وردپرس و تیم های طراحی اروپایی اصلا از CSS برای طراحی قالب استفاده نمیکنن !! شاید تعجب کنید ولی همینطوره ! به جای اون میان از Less یا Sass استفاده میکنن و بعد از پایان پروژه اون رو به CSS کامپایل میکنن ! حالا چرا ما باید از Less استفاده کنیم و Less در کل چیه ؟

در واقع less یک pre-processor هستش که متغیر های حرفه ایی برای کدنویسی داره . مثلا شما توی css مثل سایر زبان های برنامه نویسی نمیتونید بیاید یک شرت کات تایین کنید ! و این شرت کات رو در تمامی پروژه ها استفاده کنید . شما توی css اصلا روی عناصر هیچ کنترلی ندارید فقط یک سری عنصر های از پیش تایین شده رو وارد میکنید ! اگر شما یک طراح وب هستید و میخواهید که حرفه ایی باشید پس وقتشه همین امروز css رو کنار بگذارید و به جاش از less استفاده کنید .

برای استفاده از Less اول باید کتابخانه اون رو از مرجع اصلی اون یعنی Lesscss دانلود کنید و به قالبتون اضافه کنید . چون مرورگر ها نمیتونن Less رو کامپایل کنند پس ما با استفاده از یک کتابخانه جاوا اسکریپت به صورت خودکار فایل less خودمون رو برای مرورگر ها کامپایل میکنیم .

یا اینکه از لینک CDN هم میتونید استفاده کنید :


<script src="//cdnjs.cloudflare.com/ajax/libs/less.js/1.7.3/less.min.js"></script>

البته من پیشنهاد میکنم سورس اصلی اون رو دانلود و از فایل JS اون به جای CDN استفاده کنید .

خوب تقریبا کارمون تموم شد حالا باید یک فایل به اسم style.less بسازیم و به این صورت به قالب خودمون متصل کنیم :


<link rel="stylesheet/less" type="text/css" href="styles.less">


اگر میخواهید سرعت پردازش کامپایل کدهای Less بالاتر بره و بهینه تر باشه حتمی node.js رو روی سیستم عامل خودتون نصب کنید .

حالا باید شروع کنیم به کد نویسی . ! من یکسری مثال هایی رو از Less براتون میگم که میتونه باعث بشه خیلی بهتر درک کنید . مثلا من یک div دارم که کلاس post رو داره . میخوام این کلاس استایل هایی مثل بک گراند سفید رنگ و حاشیه های خاکستری داشته باشه .


.post {

background: #fff;
border:1px solid #f0f0f0;
display: block;

}

حالا اگه بخوام این استایل رو برای تمامی باکس های داخل سایتم تعریف کنم مجبورم بیام به صورت تک تک برای تمامی استایل ها این عناصر رو اضافه کنم که واقعا کاری خسته کننده و غیر حرفه ایی هستش ! اما توی Less دیگه نیازی به این کار نیست بجای اینکه من بیام دوباره این عنصر ها رو کپی کنم و توی کلاس مورد نظر خودم قرار بدم میام با استفاده از شرت کات اون رو توی کلاس خودم فراخوانی میکنم .

به این صورت :


.home-post {

width:500px;
height:300px;

.post;

}

با این شیوه دیگه برای تغییر بک گراند و حاشیه باکس نیازی نداریم که بریم تک تک سراغ کلاس ها و رنگ عنصر ها رو تغییر بدیم فقط کافیه که متغییر اصلی رو تغیر بدیم تا تمامی باکس ها استایلشون تغییر کنه ! جالبه نه ؟ :) تازه متغیر های Less فقط همین یکی نیست چون که Less که چیزی فراتر از اینها هستش که یکی از امکانات خیلی خیلی کوچیکش این بود !

اگر پوسته های پریمیوم وردپرس رو دیده باشید همشون دارای استایل با رنگ بندی مختلف هستند مثلا آبی یا ارغوانی یا قرمز ! در واقع میشه گفت این پوسته ها همشون از این شیوه استفاده میکنند . وگرنه آجر توی مغز طراحشون نخورده که توی سال 2014 بیان تک تک استایل کلاس ها رو تغییر بدن ! با وجود تکنولوژی Less اون شیوه قدیمی دیگه برای همیشه به تاریخ پیوست !

منتظر قسمت بعدی آموزش باشید ;)

لینک به ارسال

سلام ! در قسمت قبل مقدمه ایی رو بر Less داشتیم و توضیح دادیم که چطور میشه با این زبان سرعت کد نویسی رو بالاتر برد حالا در این آموزش به معرفی متغیر ها و دستورات این زبان میپردازم . نگران نباشید آموزش کاملا روان و ساده هستش و هیچ جای مبهمی نخواهد بود .

متغیر های رنگ :

در Less برای وارد کردن کد رنگ میتونیم از یک کد مرجع استفاده کنیم مثلا ما توی CSS باید برای هر متنی که دلمون میخواست یک کد رنگ انتخاب میکردیم اما توی less میتونیم از baseColor استفاده کنیم و با استفاده از این متغیر بر روی تمامی عناصری که این کد رنگ رو دارند کنترل کامل داشته باشیم ! بدون نیاز به این که بخواهیم برای تغییر تمام رنگ هایی که مثلا با کد رنگ #fff (رنگ سفید) هستند به صورت تک تک تغییرات رو انجام بدیم .


@baseColor : #fff;

.box

color: @baseColor;

}

برای وارد کردن متغیر در Less باید از @ استفاده کنیم . البته در اینجا baseColor یک شناسه یا variable هستش که میتونید به هر چیزی تغییر بدید . میبینید که ما در اینجا یک کد مانند شرت کات ساختیم . حالا اینطوری دیگه نیازی به تغیر تک تک رنگ عناصر نیست به راحتی میتونید با تغییر کد رنگ متغیر اصلی رنگ تمامی عناصر رو عوض کنیم خوب این سرعت در کد نویسی رو خیلی خیلی بالا میبره و باعث میشه شما کنترل کامل بر روی تمامی عناصر در CSS داشته باشید .

اضافه کردن استایل داینامیک :

بهترین عنوانی که برای این مورد میتونستم انتخاب کنم همین بود . بله استایل داینامیک ! مثلا من یک باکسی میخوام که بک گراند آبی رنگ و حاشیه هایی با همون رنگ ولی کمی تیره تر داشته باشه ! در CSS برای این کار باید میرفتید کد رنگ بک گراند رو پیدا میکردید و قرار میداید و دوباره برای حاشیه ها یک رنگ تیره تر از رنگ قبلی انتخاب میکردید ! ولی در Less شما میتونید این کار رو به صورت داینامیک انجام بدید .


@colorBox : #fff;

.box {

background:@colorBox;
border: 1px solid darken(@colorBox, 20%);

}

در اینجا ما یک variable به اسم colorBox درست کردم و رنگ اون سفید قرار دادم حالا برای بک گراند باکسمون میام متغیر colorbox رو وارد میکنم که رنگ سفید هستش حالا برای اینکه بیام یک رنگ تیره تر برای حاشیه ها به صورت داینامیک انتخاب کنم از عبارت darken به معنی تاریک تر استفاده میکنم و متغیر colorbox رو داخلش قرار میدم .حالا یک کاما میذارم و میرم سراغ درصد تیرگی رنگمون که من 50 درصد انتخاب کردم یعنی 50 درصد رنگ سفیدمون رو برامون تیره تر کن !

میبینید که با Less چقدر کد نویسی ما حرفه ایی تر و به قول معروف باحال تر و سریعتر میشه . در قسمت بعدی متغیر های کاربردی تری رو توضیح خواهم داد پس حتمی منتظر قسمت بعدی باشید که بهترین قسمت ما هستش چون متغیر هایی رو توضیح خواهم داد که میتونه کلید نجاتتون برای فرار از تکرار در کد نویسی باشه .

موفق باشید ;)

ویرایش شده توسط Alireza Xn
لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...