Parent এবং Child Selectors এর ব্যবহারের নিয়ম

Nesting এবং Inheritance - সাস (Sass) - Web Development

359

সাস (Sass) কী?

Sass (Syntactically Awesome Stylesheets) একটি CSS প্রিপ্রোসেসর যা CSS লেখার প্রক্রিয়াকে আরও কার্যকরী এবং শক্তিশালী করে তোলে। এটি CSS এর উপর অতিরিক্ত ফিচার যোগ করে, যেমন variables, nested rules, mixins, inheritance, এবং আরও অনেক কিছু। Sass আপনাকে সহজে এবং দ্রুত উন্নত স্টাইলশিট তৈরি করতে সহায়তা করে।

Sass-এ parent এবং child selectors ব্যবহার করতে কিছু বিশেষ নিয়ম রয়েছে যা CSS এর লেখার স্টাইলকে আরও সুসংগঠিত এবং রিডেবেল করে তোলে। এখানে আমরা সেই নিয়মগুলো নিয়ে আলোচনা করব।


Parent এবং Child Selectors এর ব্যাখ্যা

  1. Parent Selector: Sass-এ, & (Ampersand) চিহ্নটি parent selector হিসেবে ব্যবহৃত হয়। এটি সিলেক্টরের "parent" অংশকে রেফারেন্স করে, যা আপনাকে পূর্ববর্তী সিলেক্টরের সঙ্গে সম্পর্কিত নতুন স্টাইল যোগ করার সুবিধা দেয়।
  2. Child Selector: সাধারণভাবে, child selector CSS-এ একটি সিলেক্টর যা কোন একটি এলিমেন্টের সরাসরি চাইল্ড বা উপ-এলিমেন্ট নির্বাচন করে। Sass-এ এটি nested selector ব্যবহার করে সহজে করা যায়।

১. Parent Selector (&)

Sass-এ, & চিহ্নটি খুবই গুরুত্বপূর্ণ এবং এটি একটি প্যারেন্ট সিলেক্টরের জন্য ব্যবহৃত হয়, যা নেস্টেড সিলেক্টরের মধ্যে অবস্থিত সিলেক্টরকে সংজ্ঞায়িত করে। এটি একটি parent সিলেক্টরকে রেফারেন্স করে এবং তার স্টাইলিং পরিবর্তন করতে সাহায্য করে।

উদাহরণ:

.button {
  background-color: blue;

  &:hover {
    background-color: darkblue; // Parent `.button` এর সাথে হোভার ইফেক্ট যোগ করা
  }

  &.active {
    background-color: green; // `.button.active` সিলেক্টরটি ব্যবহার করা
  }
}

এখানে, &:hover এবং &.active ব্যবহার করে, আমরা .button সিলেক্টরের parent অংশের সাথেই হোভার এবং অ্যাকটিভ স্টাইল যুক্ত করেছি। এটি সাধারণ CSS এর চেয়ে আরো সোজা এবং পরিষ্কারভাবে লেখা যায়।


২. Child Selectors (Nesting)

Sass-এ child selectors তৈরি করার জন্য আপনি nesting ব্যবহার করতে পারেন। Nesting এর মাধ্যমে আপনি সহজেই parent এবং child সিলেক্টরের মধ্যে সম্পর্ক তৈরি করতে পারবেন। এর মাধ্যমে কোড কমপ্যাক্ট এবং রিডেবল হয়।

উদাহরণ:

.navbar {
  background-color: #333;
  
  .menu {
    list-style-type: none;

    li {
      display: inline-block;
      margin-right: 15px;
      
      a {
        color: white;
        text-decoration: none;
        
        &:hover {
          color: yellow;
        }
      }
    }
  }
}

এখানে, .navbar সিলেক্টরের মধ্যে .menu, li, এবং a সিলেক্টরগুলো nesting করে তৈরি করা হয়েছে, যার ফলে কোডের মধ্যে একটি সহজ সম্পর্ক তৈরি হয়েছে।

  • .navbar এর ভিতরে .menu, তারপর li, তারপর a সিলেক্টর গুলোর মধ্যে সম্পর্ক হয়েছে।
  • a সিলেক্টরের জন্য &:hover ব্যবহার করা হয়েছে, যাতে hover স্টাইলটা শুধুমাত্র a এর জন্য কার্যকর হয়।

এটি একাধিক স্তরের চাইল্ড সিলেক্টর ব্যবহারের ক্ষেত্রে খুবই কার্যকর।


Parent এবং Child Selectors এর অন্যান্য উদাহরণ

1. Parent Selector (Multiple Classes)

.button {
  color: white;

  &.primary {
    background-color: blue;
  }

  &.secondary {
    background-color: gray;
  }
}

এখানে, .button.primary এবং .button.secondary সিলেক্টরগুলোর জন্য আলাদা স্টাইল তৈরি করা হয়েছে, যেখানে & চিহ্নের মাধ্যমে parent ক্লাসের সাথে সম্পর্কযুক্ত স্টাইল তৈরি করা হয়েছে।

2. Child Selectors with >

.container {
  .content {
    padding: 20px;

    > p {
      margin-top: 10px;
    }
  }
}

এখানে, .content ক্লাসের direct child (যেমন p ট্যাগ) কে নির্বাচিত করা হয়েছে, যা > চিহ্ন দিয়ে স্পষ্টভাবে নির্দেশিত হয়েছে।


Best Practices

  1. Nest only to 2 or 3 levels: Nesting অনেক গভীর না হওয়া উচিত, কারণ এটি কোডকে জটিল করে তোলে এবং পারফরম্যান্সেও প্রভাব ফেলতে পারে। সাধারণত, 2 বা 3 স্তরের বেশি নেস্টিং করা উচিত নয়।
  2. Use parent selectors wisely: & ব্যবহার করে শুধু তখনই parent সিলেক্টরের স্টাইল পরিবর্তন করুন যখন এটি প্রাসঙ্গিক এবং প্রয়োজনীয়। অতিরিক্ত ব্যবহার কোডকে অস্বচ্ছ এবং অগোছালো করে ফেলতে পারে।
  3. Avoid deep nesting: অনেক গভীর nesting করার পরিবর্তে, প্রয়োজনে সেলেক্টরের নাম স্পষ্টভাবে লিখুন। এটি কোডকে আরও পরিষ্কার এবং বুঝতে সহজ করে তোলে।
  4. Keep your styles organized: আপনার সাস ফাইলগুলি ভালভাবে সংগঠিত রাখুন, যেমন কম্পোনেন্ট ভিত্তিক ফাইল, যাতে maintenance সহজ হয়।

সারাংশ

Sass-এ parent এবং child selectors ব্যবহারের মাধ্যমে কোডের রিডেবিলিটি এবং মেইনটেনেবলিটি বৃদ্ধি পায়। Parent selectors যেমন & ব্যবহার করে, আপনি parent সিলেক্টরের সাথে সম্পর্কিত স্টাইল খুব সহজেই যোগ করতে পারেন, আর child selectors এর জন্য nesting ব্যবহার করে সম্পর্কিত এলিমেন্টগুলোকে সঠিকভাবে স্টাইল করা যায়। এই দুটি বৈশিষ্ট্য ব্যবহারের মাধ্যমে সাস কোড লেখার প্রক্রিয়া আরও শক্তিশালী, কার্যকরী এবং রিডেবল হয়ে ওঠে।

Content added By
Promotion

Are you sure to start over?

Loading...