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

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

হোম-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

 

সিএসএস ইমেজ স্প্রাইট(Sprite)


ইমেজ স্প্রাইট(Sprite)

ইমেজ স্প্রাইট(Sprite) হলো একটি ছবির মধ্যে একগুচ্ছ ছবি সংগ্রহ করে রাখা।

অসংখ্য ছবি যুক্ত একটি ওয়েবপেজ লোড হতে অনেক সময় নিতে পারে এবং অসংখ্য সার্ভার রিকুয়েস্ট তৈরি করতে পারে।

ইমেজ স্প্রাইটের (Sprite) ব্যবহার সার্ভার রিকুয়েস্টের সংখ্যা কমিয়ে আনে এবং ব্যান্ডউইথ বাচিয়ে দেয়।


ইমেজ স্প্রাইট(Sprite) - সাধারণ উদাহরণ

তিনটি আলাদা ছবি ব্যবহার করার চেয়ে আমরা একটি ছবিতে তিনটি ছবি ব্যবহার করতে পারঃ("icon.gif")

spriteimage

সিএসএস এর সাহায্যে আমরা একটি ছবির যতটুকু প্রদর্শন করে দেখানোর দরকার ততটুকুই দেখাতে পারি।

নিচের উদাহরণে, "icon.gif" ইমেজের কোন অংশটুকু প্রদর্শিত হবে তা সিএসএস দিয়ে নির্ধারণ করে দেয়া হয়েছেঃ

উদাহরণ

<!DOCTYPE html>
<html>
<head>
   <title>image sprite</title>
<style>
#homepage {
    width: 46px;
    height: 44px;
    background: url(..//css_examples/icon.gif) 0 0;
}
#nextpage {
    width: 43px;
    height: 44px;
    background: url(..//css_examples/icon.gif) -91px 0;
}
</style>
</head>
<body>

<img id="homepage" src="..//css_examples/icondot.gif"><br><br>
<img id="nextpage" src="..//css_examples/icondot.gif">				

</body>
</html>

ফলাফল



উদাহরণের ব্যাখ্যা

  • <img id="" src="icondot.gif"> - একটি ছোট ট্রান্সপারেন্ট ইমেজকে নির্দেশ করে কারণ src এট্রিবিউট খালি রাখা যায় না। সিএসএসের মাধ্যমে নির্ধারিত ইমেজটি ব্যাকগ্রাউন্ড ইমেজ হিসাবে প্রদর্শিত হবে।
  • width: 46px; height: 44px; - ইমেজের যে অংশটি আমরা ব্যবহার করতে চাই সেই অংশটিকে নির্দিষ্ট করে।
  • background: url(icon.gif) 0 0; - ব্যাকগ্রাউন্ড ইমেজ এবং এর অবস্থান নির্ধারণ করে ( এখানে left এর ভ্যালু 0px এবং top এর ভ্যালু 0px )।

ইমেজ স্প্রাইট(Sprite) ব্যবহারের এটাই সবচেয়ে সহজ উপায়। নিচে আমরা স্প্রাইট ইমেজে লিঙ্ক ও হোভার ইফেক্টের ব্যবহার দেখাবোঃ


ইমেজ স্প্রাইট(Sprite) এর মাধ্যমে নেভিগেশন লিস্ট তৈরি

নেভিগেশন লিস্ট তৈরির জন্য আমরা "icon.gif" স্প্রাইট(Sprite) ইমেজটি ব্যবহার করবো।

আমরা এখানে এইচটিএমএল লিস্ট ব্যবহার করবো, কারণ ইহা একই সাথে লিংক ও ব্যাকগ্রাউন্ড ইমেজ সাপোর্ট করে

উদাহরণ

<!DOCTYPE html>
<html>
<head>
<style>
#listitem {
    position: relative;
}
#listitem li {
    margin: 0;
    padding: 0;
    list-style: none;
    position: absolute;
    top: 0;
}
#listitem li, #listitem a {
    height: 44px;
    display: block;
}
#homepage {
    left: 0px;
    width: 46px;
    background: url('..//css_examples/icon.gif') 0 0;
}
#backpage {
    left: 63px;
    width: 43px;
    background: url('..//css_examples/icon.gif') -48px 0;
}
#nextpage {
    left: 129px;
    width: 43px;
    background: url('..//css_examples/icon.gif') -92px 0;
}
</style>
</head>
<body>

<ul id="listitem">
  <li id="homepage"><a href="www.sattacademy.com"></a></li>
  <li id="backpage"><a href="www.sattacademy.com/css"></a></li>
  <li id="nextpage"><a href="www.sattacademy.com/html"></a></li>
</ul>
		

</body>
</html>

ফলাফল



উদাহরণের ব্যাখ্যা

  • #listitem {position:relative;} - এর মধ্যে Absolute পজিশন সাপোর্ট করানোর জন্য পজিশন এর ভ্যালু Relative সেট করা হয়েছে।
  • #listitem li {margin:0;padding:0;list-style:none;position:absolute;top:0;} - দ্বারা মার্জিন ও প্যাডিং "0" সেট করা হয়েছে, লিস্ট স্টাইল বাদ দেওয়া হয়েছে, এবং সকল লিস্ট আইটেমের পজিশন Absolute করা হয়েছে।
  • #listitem li, #listitem a {height:44px;display:block;} - দ্বারা সকল ইমেজের উচ্চতা ৪৪px সেট করা হয়েছে।

তারপরে ইমেজের প্রত্যেক অংশের জন্য অবস্থান এবং স্টাইল সেট করা হয়েছেঃ

  • # {left:0px; width:46px;} - সবার বামে নিয়ে আসে এবং ইমেজের প্রস্থ 46px সেট করে।
  • # {background:url(icon.gif) 0 0;} - ব্যাকগ্রাউন্ড ইমেজ এবং এর অবস্থান নির্দেশ করে।(left এ 0px এবং top এ 0px)
  • #backpage {left:63px; width:43px;} - 63px ডানদিকে অবস্থান করে (# এর প্রস্থ 46px + আইটেমগুলোর মাঝের অতিরিক্ত ফাকা অংশ), এবং 43px প্রস্থ।
  • #backpage {background:url('icon.gif') -47px 0;} - ব্যাকগ্রাউন্ড ইমেজটি 47px ডানে থাকবে (# এর প্রস্থ 46px + 1px লাইন ডিভাইডার)
  • #nextpage {left:129px;width:43px;}- 129px ডানে অবস্থান করে(#backpage এর শুরু 63px + #backpage এর প্রস্থ 43px + অতিরিক্ত জায়গা), এবং এর প্রস্থ হবে 43px।
  • #nextpage {background:url('icon.gif') -91px 0;} - ব্যাকগ্রাউন্ড ইমেজ 91px ডানে থাকবে (# এর প্রস্থ 46px + 1px লাইন ডিভাইডার + #backpage এর প্রস্থ 43px + 1px লাইন ডিভাইডার)

ইমেজ স্প্রাইট(Sprite) - হোভার ইফেক্ট

এখন আমরা নেভিগেশন লিস্টে হোভার ইফেক্ট যোগ করবো।

টিপসঃ :hover সিলেক্টরটি শুধুমাত্র লিংকে নয়, বরং সকল এলিমেন্টেই ব্যবহার করা যায়।

আমাদের নতুন ইমেজটিতে ("iconbg.gif")নেভিগেশনের জন্য তিনটি ইমেজ রয়েছে এবং তিনটি ইমেজ রয়েছে হোভার ইফেক্টের জন্য।

ImgSpite

ইহা একটি সিংগেল ইমেজ অর্থাৎ ছয়টি আলাদা ইমেজ না হওয়ায় ব্যবহারকারী যখন ইমেজের উপর হোভার করবে তখন লোডিংয়ের জন্য সময় নষ্ট হবে না,

হোভার ইফেক্ট যুক্ত করার জন্য আমরা শুধুমাত্র তিন লাইনের কোড যোগ করেছিঃ

উদাহরণ

<!DOCTYPE html>
<html>
<head>
   <title></title>
<style>
#listitem {
    position: relative;
}
#listitem li {
    margin: 0;
    padding: 0;
    list-style: none;
    position: absolute;
    top: 0;
}
#listitem li, #listitem a {
    height: 44px;
    display: block;
}
#homepage {
    left: 0px;
    width: 46px;
    background: url('..//css_examples/icon.gif') 0 0;
}
#backpage {
    left: 63px;
    width: 43px;
    background: url('..//css_examples/iconbg.gif') -47px 0;
}
#nextpage {
    left: 129px;
    width: 43px;
    background: url('..//css_examples/iconbg.gif.gif') -91px 0;
}
#homepage a:hover {
    background: url('..//css_examples/iconbg.gif.gif') 0 -45px;
}
# a:hover {
    background: url('..//css_examples/iconbg.gif') -47px -45px;
}
#nextpage a:hover {
    background: url('..//css_examples/iconbg.gif') -91px -45px;
}
</style>
</head>
<body>

<ul id="listitem">
  <li id="homepage"><a href="www.sattacademy.com"></a></li>
  <li id="backpage"><a href="www.sattacademy.com/css"></a></li>
  <li id="nextpage"><a href="www.sattacademy.com/html"></a></li>
</ul>

</body>
</html>

ফলাফল



উদাহরণের ব্যাখ্যাঃ

  • # a:hover {background: transparent url('iconbg.gif') 0 -45px;} - তিনটি হোভার ইমেজের জন্য আমরা একই ব্যাকগ্রাউন্ড পজিশন সেট করেছি, শুধুমাত্র 45px আরো নিচে।