<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>نوشته های Elham kiyani</title><link>https://virgool.ir/feed/@elham.kiyani</link><description>Former Industrial Engineer, Current Frontend developer, the future? who knows...</description><language>fa</language><pubDate>2026-11-11 08:46:44</pubDate><image><url>https://files.virgool.ir/upload/users/73882/avatar/D2bQRj.png</url><title>Elham kiyani</title><link>https://virgool.ir/@elham.kiyani</link></image><item><title>BEM concept</title><link>https://virgool.ir/@elham.kiyani/bem-consept-yyglzymerush</link><description>روشی برای نام گذاری کلاس ها در cssخب این بار میخام راجع به مفهومی به اسم BEM حرف بزنم. تعریف BEM:مخفف ‌Block, Element, Modifier . ی روشه که به ما یاد میده چطوری کلاس بندی کنیم و چه اسمی روی کلاس هامون بزاریم. فایده اش اینه که خیلی راحتتر میتونیم UI (رابط کاربری) رو به قسمت های مستقل از هم تقسیم کنیم اینجوری دولوپ کردن رابط کاربری بزرگ و پیچیده  هم آسونتر میشه، استانداردتر کد نوشتیم و همچنین کد شما خوانا تر و قابل فهم تر برای دولوپرهای دیگه هست.حالا این  ‌Block, Element, Modifier اجزای تشکیل دهنده اسم کلاسمونه.&lt;div class=&#34;block-name__element-name--modifier-name&#34;&gt;&lt;/div&gt;الان ی مثال میزنم و کدشو به کمک این روش مینویسیم.اول باید تشخیص بدیم Block یا Block ها کدومان. بلاک یعنی المنت مادر و تعریف کننده اون المنت هست ( دکمه هست یا پاراگراف). نکته ای که باید بدونیم اینه که بلاک ها میتونن توی هم باشن (nested).مدل نوشتن:&lt;div class=&#34;block-name&#34;&gt;&lt;/div&gt;اینجا ۳ تا بلاک داریم(البته که میشه کلش رو ی بلاک در نظر گرفت ولی فعلن بیخیال میشم).&lt;div class=&#34;time&#34;&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;place&#34;&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;btn&#34;&gt;&lt;/div&gt;دوم المنت هامون  رو مشخص میکینم. المنت یعنی بچه. به بلاک وابستگی داره و نشون دهنده هدف بلاکی هست که توش قرار داره و با دو تا underscore شروع میشه. مدل نوشتن المنت:&lt;div class=&#34;block-name__element-name&#34;&gt;&lt;/div&gt;&lt;div class=&#34;time&#34;&gt;&#xA;&lt;div class=&#34;time__date&#34;&gt;20&lt;/div&gt;&#xA;&lt;div class=&#34;time__day-time&#34;&gt;&#xA;&lt;div class=&#34;time__day-time&#34;&gt;Mon&lt;/div&gt;&#xA;&lt;div class=&#34;time__day-time&#34;&gt;Nov&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;در آخر نوبت مشخص کردن modifier هست. همینجور که از اسمش مشخصه کارش مدیفای کردنه المنت هست. مثلن متن ما بزرگه یا کوچیک قرمزه یا سبز.  با دو تا hyphen شروع میشه. مدل نوشتن:&lt;div class=&#34;block-name__element-name--modifier-name&#34;&gt;&lt;/div&gt;&lt;div class=&#34;time&#34;&gt;&#xA;&lt;div class=&#34;time__date time__date--big&#34;&gt;20&lt;/div&gt;&#xA;&lt;div class=&#34;time__day-time&#34;&gt;&#xA;&lt;div class=&#34;time__day-time--small time__day-time--grey&#34;&gt;Mon&lt;/div&gt;&#xA;&lt;div class=&#34;time__day-time--small&#34;&gt;Nov&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;شاید اولش براتون سخت باشه و بگید این که کد ما رو طولانی تر کرد! اما کم کم متوجه موهبت های زیادی که بهتون میده میشید :) خلاصه چیز خوبیه که این همه دارن میگن :Dاینم از کد کامل شدس:&lt;div class=&#34;row&#34;&gt;&#xA;&lt;div class=&#34;col-2&#34;&gt;&#xA;&lt;div class=&#34;time&#34;&gt;&#xA;&lt;div class=&#34;time__date time__date--big&#34;&gt;20&lt;/div&gt;&#xA;&lt;div class=&#34;time__day-time&#34;&gt;&#xA;&lt;div class=&#34;time__day-time--small time__day-time--grey&#34;&gt;Mon&lt;/div&gt;&#xA;&lt;div class=&#34;time__day-time--small&#34;&gt;Nov&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;col-6&#34;&gt;&#xA;&lt;div class=&#34;place&#34;&gt;&#xA;&lt;h4&gt;Mi Pan Zoo Zoo zoo Mi Pan Yum yum /&lt;/h4&gt;&#xA;&lt;span class=&#34;place--thin-text&#34;&gt;Kerman&lt;/span&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;col-2&#34;&gt;&#xA;&lt;button class=&#34;btn btn--big btn--red&#34;&gt;Book&lt;/button&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;col-2&#34;&gt;&#xA;&lt;button class=&#34;btn btn--big btn--white&#34;&gt;Register&lt;/button&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&#xA;//Styles&#xA;.time {&#xA;display: flex;&#xA;&amp;__date {&#xA;font-size: 3rem;&#xA;}&#xA;&amp;__day-time {&#xA;padding: 0.7rem;&#xA;&amp;--grey {&#xA;color: $color-grey-dark-2;&#xA;}&#xA;}&#xA;}&#xA;.place {&#xA;padding-top: 1rem;&#xA;&amp; h4 {&#xA;display: inline;&#xA;}&#xA;}&#xA;.btn {&#xA;&amp;--big {&#xA;padding: 1rem 3rem;&#xA;border-radius: 8px;&#xA;}&#xA;&amp;--red {&#xA;background-color: #c84869;&#xA;border: 1px solid $color-grey-dark-2;&#xA;float: right;&#xA;color: $color-white;&#xA;}&#xA;&amp;--white {&#xA;border: 1px solid #c84869;&#xA;color: #c84869;&#xA;}&#xA;}</description><category>Elham kiyani</category><author>Elham kiyani</author><pubDate>Fri, 02 Oct 2020 18:06:05 +0330</pubDate></item><item><title>کلاس های reusable در css</title><link>https://virgool.ir/@elham.kiyani/کلاس-های-reusable-در-css-ocokn6b5dg2c</link><description>خب این اولین پست من توی ویرگوله  کم و کاستی هاشو به بزرگی خودتون ببخشید.این موضوع حتمن برای خیلیاتون ساده است ولی کاربردیه و میبینم که خیلی ها این کارو انجام نمیدن.( تو این مقاله نمیخوام حرفی راجع به فریم ورک ها و ابزار ها بزنم pure css! )کمتر بنویسیم بیشتر بهره ببریمهمه وبسایت هایی که میبینیم از المنت هایی تشکیل شدن مثل دکمه عنوان پاراگراف و …وقتی ی طرح از ظاهر وبسایت بهم میدن اولین بار که نگاهش میکنم به این فکر میکنم که چطوری باید جداشون کنم چند تا کامپوننت باید داشته باشم grid من به چه شکل باید باشه و …هر چی میرم جلو تعداد المنت ها و کلاس ها بیشتر میشه و ممکنه یادم نیاد که فلان دکمه چه اندازه ای دادم فونت سایزش چی بود... هی باید توی فایل هام دنبال استایل هایی که قبلن نوشتم بگردم!حیرووون شدم!حالا برگردیم به عقب بیایید همونجا که داشتیم grid ها رو تشخیص میدادیم ی کار دیگه هم کنیم. هر چیزی که قراره زیاد تکرار بشه رو جدا کنیم مثلن همون دکمه ها…. بالاخره هر وبسایتی ی الگو خاص داره دیگهخب حالا هر چی دارید رو بریزید رو میز. دسته بندیشون کنید و مثل ی کامپوننت باهاشون رفتار کنید.مثلنخب حالا این استایل ها رو تو ی فایل جداگونه ذخیره کنید و بعدش توی فایل اصلی style.css import کنید و هر جا خواستید استفاده کنید کافیه به المنتتون اسم کلاس رو بدید. تامااامچطوره برای حالت ریسپانسیوش هم کد بنویسیم ؟(من حال نداشتم بنویسم خودتون بنویسید)خیلی بهتر شد :)حالا همین کارو میتونیم برای همه تگ های h1, h2,.... لینک ها اینپوت ها و هر چی که داریم انجام بدیمدر واقع این روش همون کاریه که Bootstrap داره انجام میده. اینجوری کد کمتری نوشتیم استایلامون با هم همخوانی داره و از همه مهمتر فردا پس فردا خواستیم عوضشون کنیم اشکمون در نمیاد :D</description><category>Elham kiyani</category><author>Elham kiyani</author><pubDate>Fri, 28 Aug 2020 20:40:33 +0430</pubDate></item></channel></rss>