সিএসএস এইচটিএমএল জাভাস্ক্রিপ্ট পিএইচপি এসকিউএল জেকুয়েরি বুটস্ট্রাপ সি প্রোগ্রামিং
ফোরাম
×

সিএসএস টিউটোরিয়াল

হোম-HOME পরিচিতি-Introduction গঠনপ্রণালী-Syntax ব্যবহার পদ্ধতি-Use কালার-Color ব্যাকগ্রাউন্ড-Background বর্ডার-Border মার্জিন-Margin প্যাডিং-Padding উচ্চতা/প্রস্থ-Height/Width বক্সমডেল-BoxModel আউটলাইন-Outline টেক্সট-Text ফন্ট-Font লিংক-Link লিস্ট-List টেবিল-Table প্রদর্শনী-Display সর্বোচ্চ উচ্চতা-Maxwidth পজিশন-Position ওভারফ্লো-Overflow ফ্লট-Float ইনলাইন-ব্লক-Inlineblock এলাইন-Align কম্বিন্যাটর-Combinator সুডো-ক্লাস-PseudoClass সুডো-এলিমেন্ট-PseudoElement প্রোপার্টি-Opacity ন্যাভিগেশনবার-NavigationBar ড্রপডাউন-Dropdown টুলটিপ-Tooltip ইমেজ গ্যালারী-ImageGallery ইমেজ স্প্রাইট-ImageSprite এট্রিবিউট সিলেক্টর-AttrSelector ফর্ম-Form কাউন্টার-Counter

সিএসএস-৩

ভূমিকা-Introduction রাউন্ডেড কর্নার-RoundedCorner বর্ডারইমেজ-Border Image ব্যাকগ্রাউন্ড-Background কালার-Color গ্র্যাডিয়েন্ট-Gradient স্যাডো-Shadow টেক্সট-Text 3ফন্ট-Font 2D ট্রান্সফর্ম-Transform 3D ট্রান্সফর্ম-Transform ট্রানজিশন-Transition এনিমেশন-Animation ইমেজ-Image বাটন-Button পেজিনেশন-Pagination মাল্টি-কলাম-MultColumn ইউজার ইন্টারফেস-UserInterface বক্স সাইজিং-BoxSizing ফ্লেক্সবক্স-Flexbox মিডিয়া কুয়েরি-MediaQuery মিডিয়া কুয়েরি উদাহরণ

সিএসএস রেসপন্সিভ

রেসপন্সিভ পরিচিতি-Introduction রেসপন্সিভ ভিউপোর্ট-Viewport রেসপন্সিভ গ্রাইড ভিউ-Grid View রেসপন্সিভ মিডিয়া কুয়েরি-Media Query রেসপন্সিভ ইমেজ-Image রেসপন্সিভভিডিও-Video ফ্রেমওয়ার্ক-Frameworks

সিএসএস রেফারেন্স

রেফারেন্স-Reference সিলেক্টর-Selector ফাংশন-Function রেফারেন্স আউরাল-ReferenceAural ওয়েব সেফ ফন্ট-WebSafeFont এনিমেটেবল-Animatable ইউনিট-Unit PX-EM কনভার্টার-Converter কালার-Color কালার ভ্যালু-ColorValue ডিফল্ট ভ্যালু-DefaultValue ব্রাউজার সাপোর্ট-BrowserSupport

 

গ্রিড ভিউ - Grid-View


গ্রিড-ভিউ কি?

একটি ওয়েব পেজকে কলামে বিভক্ত করে লে-আউট তৈরি করা যায়, একেই গ্রিড-ভিউ বলা হয়।


ওয়েব পেজ ডিজাইনের সময় গ্রিড ভিউ ব্যবহার করা খুবই গুরুত্বপূর্ণ। এটি ওয়েব পেজের মধ্যে এলিমেন্টকে সঠিক জায়গায় স্থাপন করা সহজ করে তোলে।


রেস্পন্সিভ গ্রিড-ভিউতে অধিকাংশ সময় ১২ টি কলাম থাকে, ১২ টি কলাম মিলে এর মোট প্রস্থ হয় ১০০% এবং আপনি ব্রাউজারের আকার পরিবর্তন করার সাথে সাথে ইহা সংকুচিত ও প্রসারিত হবে।

রেস্পন্সিভ গ্রিড-ভিউ


গ্রিড-ভিউ তৈরি

প্রথমে সকল এইচটিএমএল এলিমেন্টের box-sizing প্রোপার্টির ভ্যালু border-box সেট করতে হবে। এর কারণ এলিমেন্টের প্যাডিং এবং বর্ডারসহ সম্পূর্ণ প্রস্থ ও উচ্চতা গণনা করা হবে।

আপনার সিএসএস ফাইলে নিম্নলিখিত কোড যুক্ত করুনঃ

* {
box-sizing: border-box;
} 

box-sizing প্রোপার্টি সম্পর্কে আরো জানতে আমাদের সিএসএস(৩) বক্স সাইজিং অধ্যায়টি পড়ুন।

উদাহরণ

<!DOCTYPE html>
<html>
<head>
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <title>এইচটিএমএল উদাহরণ</title>
<style>
* {
    box-sizing: border-box;
}
.header {
    border: 1px solid red;
    padding: 15px;
}
.menu {
    width: 25%;
    float: left;
    padding: 15px;
    border: 1px solid red;
}
.main {
    width: 75%;
    float: left;
    padding: 15px;
    border: 1px solid red;
}
</style>
</head>
<body>

<div class="header">
<h1>ঢাকা</h1>
</div>

<div class="menu">
<ul>
<li>ফ্লাইট</li>
<li>সিটি</li>
<li>হাতিয়া</li>
<li> খাদ্য</li>
</ul>
</div>

<div class="main">
<h1> ঢাকা</h1>
<p>ঢাকা বাংলাদেশের রাজধানী। দেশের কাজ কর্মের সিংহ ভাগই এখানে সম্পুর্ন হয়।
ঢাকাকে মসজিদ ও রিক্সার শহর হিসাবেও ডাকা হয়। জনবহুল শহর হিসাবে  বিশ্বে ২য়। </p>
<p>
 ব্রাউজার উইন্ডোতে মাপ পরিবর্তন করতে কিভাবে সাড়াদেয় তা দেখাতে রেসাইজ ব্যবহার করা হয়। </p>
</div>
</body>
</html>

ফলাফল



ওয়েব পেজ দুই কলাম বিশিষ্ট হলে উপরের উদাহরণটিই যথেষ্ট।

আমরা ওয়েব পেজের উপর আরো বেশি নিয়ন্ত্রণ রাখার জন্য ১২ কলামের একটি রেস্পন্সিভ গ্রিড-ভিউ ব্যবহার করতে পারি।

প্রথমে আমরা একটি কলামের জন্য শতকরা বের করিঃ ১০০% / ১২ কলাম = ৮.৩৩%।

তারপর আমরা ১২ টি কলামের প্রতিটির জন্য একটি করে ক্লাস তৈরি করবো class="col-" এবং প্রতিটি ক্লাসের জন্য কলামের প্রস্থ নির্দিষ্ট করে দিব।

উদাহরণ

<!DOCTYPE html>
<html>
<head>
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <title>এইচটিএমএল উদাহরণ</title>
<style>
* {
    box-sizing: border-box;
}
.header {
    border: 1px solid red;
    padding: 15px;
}
.row::after {
    content: "";
    clear: both;
    display: block;
}
[class*="col-"] {
    float: left;
    padding: 15px;
    border: 1px solid red;
}
.col-1 {width: 8.33%;}
.col-2 {width: 16.66%;}
.col-3 {width: 25%;}
.col-4 {width: 33.33%;}
.col-5 {width: 41.66%;}
.col-6 {width: 50%;}
.col-7 {width: 58.33%;}
.col-8 {width: 66.66%;}
.col-9 {width: 75%;}
.col-10 {width: 83.33%;}
.col-11 {width: 91.66%;}
.col-12 {width: 100%;}
</style>
</head>
<body>

<div class="header">
<h1>ঢাকা</h1>
</div>

<div class="row">
<div class="col-3">
<ul>
<li>ফ্লাইট</li>
<li>সিটি</li>
<li>হাতিয়া</li>
<li>খাদ্য</li>
</ul>
</div>

<div class="col-9">
<h1>সিটি</h1>
<p>ঢাকা বাংলাদেশের রাজধানী। দেশের কাজ কর্মের সিংহ ভাগই এখানে সম্পুর্ন হয়।
ঢাকাকে মসজিদ ও রিক্সার শহর হিসাবেও ডাকা হয়। জনবহুল শহর হিসাবে  বিশ্বে ২য়।</p>
<p> ব্রাউজার উইন্ডোতে মাপ পরিবর্তন করতে কিভাবে সাড়াদেয় তা দেখাতে রেসাইজ ব্যবহার করা হয়।</p>
</div>

</div>
</body>
</html>

ফলাফল



সকল কলাম ব্রাউজারের বাম দিক থেকে শুরু হয়ে ডান দিকে যাবে এবং প্রতিটি কলামে ১৫পিক্সেল করে প্যাডিং ব্যবহার করিঃ

সিএসএসঃ


[class*="col-"] {
     float: left;
     padding: 15px;
     border: 1px solid red;
} 

প্রতিটি সারির জন্য একটি <div> এলিমেন্ট ব্যবহার করতে হবে। প্রতিটি সারির ভিতরে কলাম সর্বোচ্চ ১২ পর্যন্ত যোগ করা যায়ঃ

এইচটিএমএলঃ

<div class="row">
    <div class="col-3">...</div>
    <div class="col-9">...</div>
</div> 

আমরা একে আরো আকর্ষনীয় করার জন্য কিছু স্টাইল এবং কালার যোগ করতে পারিঃ

উদাহরণ

<!DOCTYPE html>
<html>
<head>
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <title>এইচটিএমএল উদাহরণ</title>
 <style>
* {
    box-sizing: border-box;
}
.row::after {
    content: "";
    clear: both;
    display: block;
}
[class*="col-"] {
    float: left;
    padding: 15px;
}
.col-1 {width: 8.33%;}
.col-2 {width: 16.66%;}
.col-3 {width: 25%;}
.col-4 {width: 33.33%;}
.col-5 {width: 41.66%;}
.col-6 {width: 50%;}
.col-7 {width: 58.33%;}
.col-8 {width: 66.66%;}
.col-9 {width: 75%;}
.col-10 {width: 83.33%;}
.col-11 {width: 91.66%;}
.col-12 {width: 100%;}
html {
    font-family: "Lucida Sans", sans-serif;
}
.header {
    background-color: #9933cc;
    color: #ffffff;
    padding: 15px;
}
.menu ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.menu li {
    padding: 8px;
    margin-bottom: 7px;
    background-color :#33b5e5;
    color: #ffffff;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
}
.menu li:hover {
    background-color: #0099cc;
}
 </style>
 </head>
 <body>

 <div class="header">
 <h1>ঢাকা </h1>
 </div>

 <div class="row">

 <div class="col-3 menu">
 <ul>
 <li>ফ্লাইট </li>
 <li>সিটি </li>
 <li>হাতিয়া </li>
 <li>খাদ্য </li>
 </ul>
 </div>

 <div class="col-9">
 <h1> ঢাকা </h1>
 <p>ঢাকা বাংলাদেশের রাজধানী। দেশের কাজ কর্মের সিংহ ভাগই এখানে সম্পুর্ন হয়।
 ঢাকাকে মসজিদ ও রিক্সার শহর হিসাবেও ডাকা হয়। জনবহুল শহর হিসাবে  বিশ্বে ২য়। </p>
 <p>প্রতিক্রিয়া বুঝার জন্য ব্রাউজার স্ক্রিনটি রিসাইজ করুন। </p>
 </div>

 </div>
</body>
</html>

ফলাফল



উপরের উদাহরণে আমরা দেখলাম যে ছোট অবস্থায় ব্রাউজার স্ক্রিনটি ভালো দেখায় না। ছোট স্ক্রিনে লিখাটিকে আরো ভালভাবে দেখানোর জন্য পরবর্তী অধ্যায়ে বিস্তারিত দেখানো হবে।