Tag Archives: এলিমেন্ট

সিএসএস ছদ্ম-এলিমেন্ট বাংলায় (CSS Pseudo-elements in Bangla)

Huge Sell on Popular Electronics

ছদ্ম- এলিমেন্টসমূহ কি কি?

একটি CSS এর ছদ্ম-এলিমেন্ট একটি এলিমেন্ট এর সুনির্দিষ্ট অংশের স্টাইল করার জন্য ব্যবহার করা হয়।

উদাহরণস্বরূপ, এটি ব্যবহার করা হতে পারে:

  • একটি এলিমেন্ট এর মধ্যকার প্রথম অক্ষর বা লাইন স্টাইল করার জন্য
  • একটি এলিমেন্ট এর উপাদান এর আগে বা পরে উপাদান প্রবেশ করানোর জন্য

সিনটেক্স


selector::pseudo-element {
     property:value;
 }

 

নোটঃ ডাবল কোলন নোটেশন নোটিশ - প্রথম লাইন: বনাম :: প্রথম লাইনে

এটি pseudo-classes এবং pseudo-elements এর মধ্যে পার্থক্য বোঝাতে W3C এর একটি প্রচেষ্টা।

CSS 2 এবং CSS 1 এ pseudo-classes এবং pseudo-elements উভয় ক্ষেত্রে সিঙ্গেল-কোলন সিনট্যাক্স ব্যবহৃহ হয়।

::first-line ছদ্ম-এলিমেন্ট

::first-line ছদ্ম-এলিমেন্ট কোন লেখার প্রথম লাইন স্টাইল করার জন্য ব্যবহৃত হয়।

নিচের উদাহরণটি লেখার সকল <p> এলিমেন্ট এর প্রথম লাইন ফরমেট করে।


p::first-line {
     color: #ff0000;
     font-variant: small-caps;
 }

 

নোটঃ ::first-line ছদ্ম-এলিমেন্ট শুধুমাত্র block-level এলিমেন্ট এর ক্ষেত্রে ব্যবহার করা যেতে পারে।

::first-line ছদ্ম-এলিমেন্টে নিম্নোক্ত প্রোপার্টিগুলো ব্যবহার করা হয়:

  • font properties
  • color properties
  • background properties
  • word-spacing
  • letter-spacing
  • text-decoration
  • vertical-align
  • text-transform
  • line-height
  • clear

::first-letter ছদ্ম-এলিমেন্ট

::first-letter ছদ্ম-এলিমেন্ট কোন লেখার প্রথম অক্ষর স্টাইল করার জন্য ব্যবহৃত হয়।

নিচের উদাহরণটি লেখার সকল <p> এলিমেন্ট এর প্রথম অক্ষর ফরমেট করে।


p::first-letter {
color: #ff0000;
font-size: xx-large;
}


 

নোটঃ ::first-letter ছদ্ম-এলিমেন্ট শুধুমাত্র block-level এলিমেন্ট এর ক্ষেত্রে ব্যবহার করা যেতে পারে।

::first-letter ছদ্ম-এলিমেন্টে নিম্নোক্ত প্রোপার্টিগুলো ব্যবহার করা হয়:

  • font properties
  • color properties
  • background properties
  • margin properties
  • padding properties
  • border properties
  • text-decoration
  • vertical-align (only if "float" is "none")
  • text-transform
  • line-height
  • float
  • clear

Pseudo-elements এবং CSS Classes

Pseudo-elements, CSS classes এর সাথে একত্রে ব্যবহার করা যেতে পারে:


p.intro::first-letter {
     color: #ff0000;
     font-size:200%;
 }

 

উপরের উদাহরণটি class="intro" এর সাথে প্যারাগ্রাফ এর প্রথম অক্ষর লাল এবং বড় ফন্ট দেখাবে।

একাধিক ছদ্ম-এলিমেন্ট

বেশ কয়েকটি ছদ্ম-এলিমেন্টও একত্রে মিলিত হতে পারে।

নিচের উদাহরণটিতে, প্যারাগ্রাফ এর প্রথম অক্ষর লাল, বেশ বড় ফন্ট এর হবে। প্রথম লাইন এর বাকি অক্ষরগুলি নিল এবং small-caps হবে। প্যারাগ্রাফ এর বাকি অংশটুকু ডিফল্ট ফন্ট ও কালার এর হবে।


p::first-letter {
     color: #ff0000;
     font-size: xx-large;
 }
 
 p::first-line {
     color: #0000ff;
     font-variant: small-caps;
 }

 

সিএসএস - ::before ছদ্ম-এলিমেন্ট

::before ছদ্ম-এলিমেন্ট নির্দিষ্ট এলিমেন্ট এর পূর্বে কিছু উপাদান যোগ করার জন্য ব্যবহৃত হয়।

নিচের উদাহরণটিতে প্রতিটি <h1> এলিমেন্ট এর পূর্বে একটি ইমেজ (স্টিল ছবি) যোগ হবে।


h1::before {
     content: url(smiley.gif);
 }

 

সিএসএস - ::after ছদ্ম-এলিমেন্ট

::before ছদ্ম-এলিমেন্ট নির্দিষ্ট এলিমেন্ট এর পরে কিছু উপাদান যোগ করার জন্য ব্যবহৃত হয়।

নিচের উদাহরণটিতে প্রতিটি <h1> এলিমেন্ট এর পরে একটি ইমেজ (স্টিল ছবি) যোগ হবে।


h1::after {
content: url(smiley.gif);
}


 

সিএসএস - ::selection ছদ্ম-এলিমেন্ট

::selection ছদ্ম-এলিমেন্ট একটি এলিমেন্ট এর ব্যবহারকারী দ্বারা নির্বাচিত অংশটির সাথে মিল করে।

নিম্নোক্ত সিএসএস প্রোপার্টিজ ব্যবহার করা যেতে পারে ::selection: color, background, cursor, এবং outline.

নিম্নোক্ত উদাহরণ নির্বারিচ লেখাকে হলুদ ব্যাকগ্রাউন্ড এর সাথে সাথে লাল করে।


::selection {
     color: red; 
     background: yellow;
 }

 

সকল সি এস এস ছদ্ম-এলিমেন্ট

নির্বাচক উদাহরণ উদাহরণের বর্ণনা
::after p::after <p> এলিমেন্ট এর উপাদান এর পরে কিছু যোগ করার জন্য
::before p::before <p> এলিমেন্ট এর উপাদান এর পূর্বে কিছু যোগ করার জন্য
::first-letter p::first-letter সকল <p> এলিমেন্ট এর প্রথম অক্ষর নির্বাচন করার জন্য
::first-line p::first-line সকল <p> এলিমেন্ট এর প্রথম লাইন নির্বাচন করার জন্য
::selection p::selection ব্যবহারকারী দ্বারা কোন এলিমেন্ট এর উপাদান এর অংশবিশেষ নির্বাচন করার জন্য

সকল সিএসএস Pseudo Classes

নির্বাচক উদাহরণ উদাহরণের বর্ণনা
:active a:active সক্রিয় লিঙ্ক নির্বাচন
:checked input:checked প্রতিটি ক্লিক করা <input> এলিমেন্ট নির্বাচন
:disabled input:disabled প্রতিটি নিষ্ক্রিয় <input> এলিমেন্ট নির্বাচন
:empty p:empty প্রতিটি <p> এলিমেন্ট নির্বাচন যার অভ্যন্তরে অন্য কোন এলিমেন্ট নেই।
:enabled input:enabled প্রতিটি সক্রিয় <input> এলিমেন্ট নির্বাচন।
:first-child p:first-child প্রতিটি <p> এলিমেন্ট নির্বাচন যা অন্যকোন এলিমেন্ট এর ভিতরের শেষ এলিমেন্ট
:first-of-type p:first-of-type প্রতিটি <p> এলিমেন্ট নির্বাচন যা অন্য এলিমেন্ট এর ভিতরে প্রথম <p> এলিমেন্ট
:focus input:focus <input> এলিমেন্ট নির্বাচন যার ফোকাস আছে
:hover a:hover কোন লিঙ্ক এর উপরে মাউস পয়েন্টার রাখলে উক্ত লিঙ্ক নির্বাচন
:in-range input:in-range নির্দিষ্ট সীমার মধ্যের মান বিশিষ্ট <input> এলিমেন্ট নির্বাচন
:invalid input:invalid সকল <input> এলিমেন্ট নির্বাচন যাদের ভুল মুল্য আছে
:lang(language) p:lang(it) প্রতিটি <p> এলিমেন্ট নির্বাচন যাদের "it" দিয়ে শুরু একটি Lang অ্যাট্রিবিউট মান আছে
:last-child p:last-child কোন এলিমেন্ট এর অধীন সকল <p> এলিমেন্ট নির্বাচন যা উক্ত এলিমেন্ট এর শেষ এলিমেন্ট
:last-of-type p:last-of-type কোন এলিমেন্ট এর অধীন সকল <p> এলিমেন্ট নির্বাচন যা উক্ত এলিমেন্ট এর শেষ এলিমেন্ট
:link a:link সব অদেখা লিঙ্ক নির্বাচন
:not(selector) :not(p) <p> এলিমেন্ট নয় এমন সকল এলিমেন্ট নির্বাচন
:nth-child(n) p:nth-child(2) কোন এলিমেন্ট এর অধীন সকল <p> এলিমেন্ট নির্বাচন যা উক্ত এলিমেন্ট এর দ্বিতীয় এলিমেন্ট
:nth-last-child(n) p:nth-last-child(2) কোন এলিমেন্ট এর অধীন সকল <p> এলিমেন্ট নির্বাচন যা উক্ত এলিমেন্ট এর দ্বীতিয় শেষের দিক হতে দ্বিতীয় এলিমেন্ট
:nth-last-of-type(n) p:nth-last-of-type(2) কোন এলিমেন্ট এর অধীন সকল <p> এলিমেন্ট নির্বাচন যা উক্ত এলিমেন্ট এর শেষের দিক হতে দ্বিতীয় এলিমেন্ট
:nth-of-type(n) p:nth-of-type(2) কোন এলিমেন্ট এর অধীন সকল <p> এলিমেন্ট নির্বাচন যা উক্ত এলিমেন্ট এর দ্বিতীয় <p> এলিমেন্ট
:only-of-type p:only-of-type কোন এলিমেন্ট এর অধীন সকল <p> এলিমেন্ট নির্বাচন যা উক্ত এলিমেন্ট এর একমাত্র <p> এলিমেন্ট
:only-child p:only-child কোন এলিমেন্ট এর অধীন সকল <p> এলিমেন্ট নির্বাচন যা উক্ত এলিমেন্ট এর একমাত্র এলিমেন্ট
:optional input:optional "required" এট্রিবিউট বিশিষ্ট <input> এলিমেন্ট নির্বাচন
:out-of-range input:out-of-range নির্দিষ্ট মান এর বাহিরের মান বিশিষ্ট <input> এলিমেন্ট নির্বাচন
:read-only input:read-only "readonly" এট্রিবিউট নির্দিষ্ট করা <input> এলিমেন্ট নির্বাচন
:read-write input:read-write "readonly" এট্রিবিউট ব্যতীত <input> এলিমেন্ট নির্বাচন।
:required input:required "required" এট্রিবিউট নির্দিষ্ট করা <input> এলিমেন্ট নির্বাচন
:root root ডকুমেন্ট এর root element নির্বাচন
:target #news:target বর্তমানে সক্রিয় #news এলিমেন্ট নির্বাচন (clicked on a URL containing that anchor name)
:valid input:valid সঠিক মান বিশিষ্ট সকল <input> এলিমেন্ট নির্বাচন
:visited a:visited সকল দেখা লিঙ্ক নির্বাচন

 

 

Call member function for each element in vector

Huge Sell on Popular Electronics

/* The following code example is taken from the book
* "The C++ Standard Library - A Tutorial and Reference"
* by Nicolai M. Josuttis, Addison-Wesley, 1999
*
* (C) Copyright Nicolai M. Josuttis 1999.
* Permission to copy, use, modify, sell and distribute this software
* is granted provided this copyright notice appears in all copies.
* This software is provided "as is" without express or implied
* warranty, and with no claim as to its suitability for any purpose.
*/
//#define mem_fun1 mem_fun
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
#include <functional>
class Person {
private:
   std::string name;
public:
   //...
   void print () const {
       std::cout << name << std::endl;
   }
   void printWithPrefix (std::string prefix) const {
       std::cout << prefix << name << std::endl;
   }
};
void foo (const std::vector<Person>& coll)
{
   using std::for_each;
   using std::bind2nd;
   using std::mem_fun_ref;
   // call member function print() for each element
   for_each (coll.begin(), coll.end(), mem_fun_ref(&Person::print));
   // call member function printWithPrefix() for each element
   // - "person: " is passed as an argument to the member function
   for_each (coll.begin(), coll.end(),bind2nd(mem_fun_ref(&Person::printWithPrefix),"person: "));
}

void ptrfoo (const std::vector<Person*>& coll)
                                   // ^^^ pointer !
{
   using std::for_each;
   using std::bind2nd;
   using std::mem_fun;
   // call member function print() for each referred object
   for_each (coll.begin(), coll.end(),
             mem_fun(&Person::print));
   // call member function printWithPrefix() for each referred object
   // - "person: " is passed as an argument to the member function
   for_each (coll.begin(), coll.end(),bind2nd(mem_fun(&Person::printWithPrefix),"person: "));
} 
 
int main()
{
   std::vector<Person> coll(5);
   foo(coll); 
   std::vector<Person*> coll2;
   coll2.push_back(new Person);
   ptrfoo(coll2);
} 
/*
person:
person:
person:
person:
person:
person: 

*/


	

এইচটিএমএল ও এক্সএইচটিএমএল (HTML and XHTML)

Huge Sell on Popular Electronics

XHTML কি

XHTML এর পূর্নরুপ হল EXtensible HyperText Markup Language। এটি অবিকল HTML এর মত তবে কিছুটা কঠোর। XHTML সব বড় বড় ব্রাউজারে সাপোর্ট করে।

 

কেন XHTML ব্যবহার করবো?

HTML কোডিং এ কোন ভুল থাকলেও অনেক সময় বিভিন্ন ব্রাউজ়ারে তা ধরা পড়েনা এবং ব্রাউজারে সুন্দর ভাবেই দেখা যায়। কিন্ত বর্তমানে বাজারে অনেক নতুন ব্রাউজার এসেছে। অনেকেই কম্পিউটার ছাড়াও মোবাইলে সাইট ভিজিট করছে। অনেক মোবাইল ব্রাউজার HTML এর ভুলগুলো সঠিকভাবে দেখাতে পারেনা। XHTML এ যেহেতু কোডিং সঠিকভাবে করতে হয় তাই XHTML ব্যবহার করাই শ্রেয়।

ডকুমেন্ট এর গঠন (Document Structure)

  • XHTML DOCTYPE আবশ্যক XHTML কোডিং এর ক্ষেত্রে।
  • এর মধ্যে xmlns attribute ও আবশ্যক।
  • <html>, <head>, <title>, <body> ও আবশ্যক।

 

নিম্নে একটি XHTML ডেমো কোড দেয়া হলঃ<


DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

xmlns="http://www.w3.org/1999/xhtml">

<head>
<title>Title of document</title>
</head>

<body>
some content
</body>

</html>


 

এক্সএইচটিএমএল এলিমেন্ট XHTML Elements

XHTML elements গুলো সঠিকভাবে বিন্যাস করতে হবে।
ভুলঃ <b><i>This text is bold and italic</b></i>

সঠিকঃ <b><i>This text is bold and italic</i></b>

  • XHTML elements গুলো অবশ্যই সঠিকভাবে শেষ করতে হবে।

ভুলঃ <p>This is a paragraph
<p>This is another paragraph

 

সঠিকঃ
<p>This is a paragraph</p>
<p>This is another paragraph</p>

 

  • XHTML elements গুলো lowercase বা ছোটহাতের হতে হবে।

 

ভুলঃ

<BODY>
<P>This is a paragraph</P>
</BODY>

 

সঠিকঃ
<body>
<p>This is a paragraph</p>
</body>

  • XHTML documents এর অন্তত একটা root element থাকতে হবে।

 

এক্সএইচটিএমএল এট্রিবিউট XHTML Attributes

  • Attribute names গুলো lowercase বা ছোটহাতের হতে হবে।

ভুলঃ <table WIDTH="100%">

সঠিকঃ <table width="100%">

  • Attribute values গুলোও quoted করা থাকতে হবে।

ভুলঃ <table width=100%>

সঠিকঃ <table width="100%">

  • Attribute সংক্ষিপ্ত করা যাবেনা।

ভুলঃ
<input type="checkbox" name="vehicle" value="car" checked />

<input type="text" name="lastname" disabled />

 

সঠিকঃ

<input type="checkbox" name="vehicle" value="car" checked="checked" />

<input type="text" name="lastname" disabled="disabled" />

 

কিভাবে HTML থেকে XHTML রুপান্তর করবো?

১। প্রতিটি পেজ এর প্রথম লাইনে XHTML <!DOCTYPE> যুক্ত করতে হবে।

২। প্রতিটি পেজ এর HTML elements এর মধ্যে xmlns attribute যুক্ত করতে হবে।

৩। প্রতিটি elements গুলো lowercase বা ছোটহাতের করতে হবে।

৪। প্রতিটি elements সঠিকভাবে বন্ধ করতে হবে।

৫। Attribute names গুলো lowercase বা ছোটহাতের করতে হবে।

৬। attribute values গুলো সঠিকভাবে Quote করতে হবে।

 

jQuery এ এইচটিএমএল এলিমেন্টস দূর করা

Huge Sell on Popular Electronics

লেখকঃ মোস্তাফিজুর ফিরোজ ।

জেকোয়েরিতে খুব সহজে আগে থেকে থাকা এইচটিএমএল এলিমেন্টস দূর করা যায় ।

 

এলিমেন্টস বা উপাদান দূর করা

এলিমেন্টস বা উপাদান দূর করার জন্য দুই ধরণের জেকোয়েরি মেথডস আছে ।

  1. remove() : এটি এর সাব ক্যাটাগরি সহ সকল সিলেক্ট করা এলিমেন্টস দূর করে ।
  2. empty() : সাব ক্যাটাগরি এর সকল উপাদানকে দূর করে ।

 

jQuery remove() Method

jQuery remove() Method এর সাব ক্যাটাগরি সহ সকল সিলেক্ট করা এলিমেন্টস দূর করে ।


$("#div1").remove();


ফলাফল : remove()

 

jQuery empty() Method

jQuery empty() Method এর সাব ক্যাটাগরি এর সকল উপাদানকে দূর করে ।


$("#div1").empty();


ফলাফল : empty()

 

দূরকৃত এলিমেন্টস এর ফিল্টার করা

jQuery remove() method একটি প্যারামিটার সাপোর্ট করে তাই এটি দূরকৃত এলিমেন্টস এর ফিল্টার করতে পারে ।

এই প্যারামিটার টি যেকোন জেকোয়েরি সিলেক্টর হবে ।

নিচের উদাহরণ class="italic": ক্লাসের সকল <p> উপাদানগুলোকে দূর করবে ।


$("p").remove(".italic");


ফলাফল : দূরকৃত এলিমেন্টস এর ফিল্টার

 

জেকোয়েরি এইচটিএমএল রেফারেন্স

এছাড়া জেকোয়েরি এর সকল এইচটিএমএল কে উপরের পদ্ধতিতে দূর করতে পারবেন । এজন্য আপনি পূর্বে পোস্ট করা আমাদের সকল এইচটিএমএল রেফারেন্স গুলো দেখতে পারেন ।

এভাবে আপনি খুব সহজে জেকোয়েরিতে এইচটিএমএল এলিমেন্টস গুলো দূর করতে পারবেন

জে কুয়েরি ইভেন্ট । jQuery Events

Huge Sell on Popular Electronics

আরিফ

আজ আমি আপনাদের সামনে web page এর একটি বিশেষ element "event" নিয়ে আলোচনা করবো। প্রথমে জেনে নেই ইভেন্ট কি??? সহজ কথায় এটা যেকোন কিছু যা আপনি একটি ওয়েব পেজ এ করে থাকেন। যেমন ধরুন ফেসবুকে মাউসের পয়েন্টার আপনার সেরা সেলিব্রিটির নামের উপর রাখলেন, সাথে সাথে দেখতে পাবেন একটি পপ- আপ বক্স আপনার সামনে আসবে যেখানে সেই সেলিব্রিটির info দেখাবে। তারপর ধরুন আপনি একটি অনলাইন রেডিও স্টেশন এ গান শুনছেন, আপনার মনে হরো ভলিউম বাড়ানো দরকার, আপনি vol+ বাটনে ক্লিক করলেন এক্ষেত্রে ক্লিকটাই event. অর্থাৎ মাউস বলেন কিবোর্ড বলেন যেকোন কি এর জন্য যেকোন এক্টিভিটিই হলো ইভেন্ট। এখন এই যে ইভেন্ট এবং তার এক্টিভিটি কাজ করানোর জন্য আপনার সাংকেতিক চিহ্ন এর প্রয়োজন হবে। আপনার একটি ওয়েব পেজ বানানোর জন্য। সর্বাধিক ব্যবহৃত সংকেত টি হলো


$("p").click();

 

এবার চলুন আমরা কয়েকটি ইভেন্ট নিয়ে আলোচনা করি:
click:
একটি পাতা সব অনুচ্ছেদ (প্যারা) এর জন্য একটি ক্লিক ইভেন্ট ব্যবহার করার জন্য:


$("p").click();


 

পরবর্তী ধাপে ক্লিক করার ফলে কি ঘটবে তা নির্ধারণ করা হয়। এর জন্য অবশ্যই একটি ফাংশন ব্যবহার করা আবশ্যক:


$("p").click(function(){
  // action goes here!!
});

 

এখানে কিছু DOM ইভেন্ট দেয়া হলো:

মাউস ইভেন্ট কীবোর্ড ইভেন্ট ফরম ইভেন্ট ডকুমেন্ট/উইন্ডো ইভেন্ট
click keypress submit load
dblclick keydown change resize
mouseenter keyup focus scroll
mouseleave blur unload

 

সাধারণভাবে ব্যবহৃত jQuery Event Methods

click():
click() method একটি ইভেন্ট হ্যান্ডেলার ফাংশন কে একটি HTML element এর সাথে যুক্ত করে।

এই ফাংশনটি কাজ করবে যখন ইউজার HTML element টিতে ক্লিক করবেন।

এখানে একটি উদাহরন দেখুন। এই p এর উপর ক্লিক করলে p উধাও হয়ে যাবে:


$("p").click(function(){
$(this).hide();
});


 

এখান থেকে উদাহরন দেখুন:


<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("p").click(function(){
        $(this).hide();
    });
});
</script>
</head>
<body>

<p>If you click on me, I will disappear.</p>
<p>Click me away!</p>
<p>Click me too!</p>

</body>
</html>

 

dblclick():

dblclick() method একটি ইভেন্ট হ্যান্ডেলার ফাংশন কে একটি HTML element এর সাথে যুক্ত করে।

এই ফাংশনটি কাজ করবে যখন ইউজার HTML element টিতে ডাবল ক্লিক করবেন।


$("p").dblclick(function(){
    $(this).hide();
});

 

এখান থেকে উদাহরনটি দেখুন:


<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("p").dblclick(function(){
        $(this).hide();
    });
});
</script>
</head>
<body>

<p>If you double-click on me, I will disappear.</p>
<p>Click me away!</p>
<p>Click me too!</p>

</body>
</html>

 

mouseenter():

mouseenter() method একটি ইভেন্ট হ্যান্ডেলার ফাংশন কে একটি HTML element এর সাথে যুক্ত করে।

এই ফাংশনটি কাজ করবে যখন মাউস পয়েন্টার HTML element এর ভিতরে প্রবেশ করবে।


$("#p1").mouseenter(function(){
    alert("You entered p1!");
});

 

এখান থেকে উদাহরনটি দেখুন:

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("#p1").mouseenter(function(){
        alert("You entered p1!");
    });
});
</script>
</head>
<body>

<p id="p1">Enter this paragraph.</p>

</body>
</html>

 

mouseleave():

mouseleave() method একটি ইভেন্ট হ্যান্ডেলার ফাংশন কে একটি HTML element এর সাথে যুক্ত করে।

এই ফাংশনটি কাজ করবে যখন মাউস পয়েন্টার HTML element এর ভিতরে থেকে বের হয়ে যায়।


$("#p1").mouseleave(function(){
    alert("Bye! You now leave p1!");
});

 

এখান থেকে উদাহরনটি দেখুন:


<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("#p1").mouseleave(function(){
        alert("Bye! You now leave p1!");
    });
});
</script>
</head>
<body>

<p id="p1">This is a paragraph.</p>

</body>
</html>

 

mousedown():

mousedown() method একটি ইভেন্ট হ্যান্ডেলার ফাংশন কে একটি HTML element এর সাথে যুক্ত করে।

এই ফাংশনটি কাজ করবে যখন মাউস পয়েন্টারটি এলিমেন্টটির উপরে থাকবে এবং HTML element এর উপর বাম, ডান বা মিডেল ক্লিক করা হবে,


$("#p1").mousedown(function(){
     alert("Mouse down over p1!");
 });

 

এখান থেকে উদাহরনটি দেখুন:


<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("#p1").mousedown(function(){
        alert("Mouse down over p1!");
    });
});
</script>
</head>
<body>

<p id="p1">This is a paragraph.</p>

</body>
</html>

 

mouseup():

mouseup() method একটি ইভেন্ট হ্যান্ডেলার ফাংশন কে একটি HTML element এর সাথে যুক্ত করে।

এই ফাংশনটি কাজ করবে যখন মাউস পয়েন্টারটি এলিমেন্টটির উপরে থাকবে এবং HTML element এর উপর বাম, ডান বা মিডেল ক্লিক ছেড়ে দেয়া হবে,


$("#p1").mouseup(function(){
     alert("Mouse up over p1!");
 });

 

এখান থেকে উদাহরনটি দেখুন:


<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("#p1").mouseup(function(){
        alert("Mouse up over p1!");
    });
});
</script>
</head>
<body>

<p id="p1">This is a paragraph.</p>

</body>
</html>

 

hover():

hover() method  দুইটি ইভেন্ট হ্যান্ডেলার ফাংশন mouseenter() এবং mouseleave() এর সমন্নয়ে HTML element এর সাথে যুক্ত করে।

প্রথম ফাংশনটি কাজ করবে যখন মাউস পয়েন্টারটি এলিমেন্টটির ভিতরে প্রবেশ করবে এবং প্রথম ফাংশনটি কাজ করবে যখন  মাউস পয়েন্টারটি এলিমেন্টটির ভিতর থেকে বাহিরে যাবে,


$("#p1").hover(function(){
    alert("You entered p1!");
},
function(){
    alert("Bye! You now leave p1!");
});

 

এখান থেকে উদাহরনটি দেখুন:


<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("#p1").hover(function(){
        alert("You entered p1!");
    },
    function(){
        alert("Bye! You now leave p1!");
    }); 
});
</script>
</head>
<body>

<p id="p1">This is a paragraph.</p>

</body>
</html>

 

focus():

focus() method একটি ইভেন্ট হ্যান্ডেলার ফাংশন কে একটি HTML ফর্ম ফিল্ড এর সাথে যুক্ত করে।

এই ফাংশনটি কাজ করবে যখন ফিল্ডটিকে ফোকাস করা হবে,


$("input").focus(function(){
    $(this).css("background-color", "#cccccc");
});

 

এখান থেকে উদাহরনটি দেখুন:

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("input").focus(function(){
        $(this).css("background-color", "#cccccc");
    });
    $("input").blur(function(){
        $(this).css("background-color", "#ffffff");
    });
});
</script>
</head>
<body>

Name: <input type="text" name="fullname"><br>
Email: <input type="text" name="email">

</body>
</html>

 

blur():

blur() method একটি ইভেন্ট হ্যান্ডেলার ফাংশন কে একটি HTML ফর্ম ফিল্ড এর সাথে যুক্ত করে।

এই ফাংশনটি কাজ করবে যখন ফিল্ডটি থেকে ফোকাস সরিয়ে নেয়া হবে,


$("input").blur(function(){
    $(this).css("background-color", "#ffffff");
});


এখান থেকে উদাহরনটি দেখুন:

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("input").focus(function(){
        $(this).css("background-color", "#cccccc");
    });
    $("input").blur(function(){
        $(this).css("background-color", "#ffffff");
    });
});
</script>
</head>
<body>

Name: <input type="text" name="fullname"><br>
Email: <input type="text" name="email">

</body>
</html>

 

on():

on() method একটি ইভেন্ট হ্যান্ডেলার ফাংশন কে একটি HTML ফর্ম ফিল্ড এর সাথে যুক্ত করে।


$("p").on("click", function(){
    $(this).hide();
});

এখান থেকে উদাহরনটি দেখুন:


<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("p").on("click", function(){
        $(this).hide();
    });
});
</script>
</head>
<body>

<p>If you click on me, I will disappear.</p>
<p>Click me away!</p>
<p>Click me too!</p>

</body>
</html>

 

 

<p> এলিমেন্ট এ একাধিক ইভেন্ট হ্যান্ডেলার ফাংশন যোগ করার উদাহরণ,


$("p").on({
    mouseenter: function(){
        $(this).css("background-color", "lightgray");
    },
    mouseleave: function(){
        $(this).css("background-color", "lightblue");
    },
    click: function(){
        $(this).css("background-color", "yellow");
    }
});

 

এখান থেকে উদাহরনটি দেখুন:


<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("p").on({
        mouseenter: function(){
            $(this).css("background-color", "lightgray");
        },  
        mouseleave: function(){
            $(this).css("background-color", "lightblue");
        }, 
        click: function(){
            $(this).css("background-color", "yellow");
        }  
    });
});
</script>
</head>
<body>

<p>Click or move the mouse pointer over this paragraph.</p>

</body>
</html>

 

 

এইচটি এম এল ইমেজ (HTML Image)

Huge Sell on Popular Electronics

এইচটি এম এল ইমেজ (HTML Images)

মোঃ রফিকুল ইসলাম

 

উদাহরণঃ


DOCTYPE html>
<html>
<body>

<h2>Spectacular Mountains</h2>
<img src="pic_mountain.jpg" alt="Mountain View" style="width:304px;height:228px">

</body>
</html>


 

 

ফলাফলঃ


Spectacular Mountains

pic_mountain


অবশ্যই ইমেজ (ছবির) উচ্চতা এবং প্রসস্থতা উল্লেখ করে দিতে হবে। যদি উচ্চতা এবং প্রসস্থতা নির্দিষ্ট করে না দেয়া হয়ে তাহলে পেজে ইমেজ লোড হওয়ার সময় ইমেজটি ফ্লিক (পেজের সাথে ছবিটি সামঞ্জস্য হওয়ার সময় ছবিটি লাফালাফি) করবে।

 

এইচটিএমএল ইমেজ সিনট্যাক্স

এইচটিএমএল এ ইমেজকে <img> ট্যাগ দ্বারা সংজ্ঞায়িত করা হয়।

<img> ট্যাগ এর ভিতরে শুধুমাত্র্ অ্যাট্রিবিউট থাকে এবং এর কোন ক্লোজিং ট্যাগ থাকে না।

src অ্যাট্রিবিউটম ইমেজ এর ইউআরএল (ওয়েব ঠিকানা বা ইমেজ এর অবস্থান এর ঠিকানা) কে সংজ্ঞায়িত করে।


<img src="url" alt="some_text">


 

 

Alt অ্যাট্রিবিউট

Alt অ্যাট্রিবিউট দ্বারা ওয়েব এ যদি কোন কারনে ইমেজ লোড না হতে পারে তাহলে উক্ত ইমেজ এর বিকল্প হিসেবে কি Text প্রদর্শিত হবে তা নির্ধারণ করে।

Alt অ্যাট্রিবিউট এর ভেলু (মান) হবে আপনি যে Text টি ইমেজ লোড না হলে প্রদর্শন করতে চান সেই Text.


<img src="html5.gif" alt="The official HTML5 Icon">


 

ফলাফল


The official HTML5 Icon


 

Alt অ্যাট্রিবিউট অবশ্যই প্রদান করত হবে। এটি ছাড়া একটি ওয়েব পেজ সঠিকভাবে যাচাই করা যায় না।

 

এইচটিএমএল স্ক্রিন রিডার

স্ক্রিণ রিডার সফটওয়্যারগুলো পর্দায় কি প্রদর্শিত সকলকিছু পড়তে পারে।

ওয়েব এ ব্যবহৃত এইচটিএমএল কোড Text থেকে বক্তৃতা, শব্দের আইকন বা যেকোন প্রতীকি আউটপুট পুনরুদ্ধার করতে পারে।

স্ক্রিণ রিডার সাধারণত যারা অন্ধ, দৃষ্টিপ্রতিবন্ধি, অশিক্ষিতদের জন্য ব্যবহৃত হয়।

নোট: স্ক্রিন রিডার Alt অ্যাট্রিবিউট পড়তে পারে।

 

ছবির আকার - প্রস্থ এবং উচ্চতা

ইমেজ (ছবির) width (প্রস্থ) এবং height (উচ্চতা) নির্ধারণের জন্য আপনি style অ্যাট্রিবিউট ব্যবহার করতে পারেন।

এর মান পিক্সেল দ্বারা নির্ধারণ করা হয় (মান এর পরে px লিখতে হয়):


<img src="Mountain.jpg" alt="Mountain View" style="width:128px;height:128px">


 

ফলাফল:


pic_mountain


 

 

বিকল্প হিসেবে আপনি width এবং height অ্যাট্রিবিউট ব্যবহার করতে পারেন।

এর মান পিক্সেল দ্বারা নির্ধারণ করা হয় (মান এর পরে px লিখতে হয়):


<img src="html5.gif" alt="HTML5 Icon" width="128" height="128">


 

 

Width এবং Height বা Style?

উভয় width, height, এবং style অ্যাট্রিবিউট লেটেস্ট HTML5 সাপর্ট করে।

আমরা আপনাকে style অ্যাট্রিবিউট ব্যবহারের পরামর্শ দেব। এটি স্টাইল শীটকে ইমেজ এর ডিফল্ট আকার পরিবর্তন করতে বাধা দেয়।

উদাহরণঃ


<!DOCTYPE html>
<html>
<head>
<style>
img {
width:100%;
}
</style>
</head>
<body><img src="html5.gif" alt="HTML5 Icon" style="width:128px;height:128px">
<img src="html5.gif" alt="HTML5 Icon" width="128" height="128"></body>
</html>



অন্য ফোল্ডার এর ছবি যদি উল্লেখ করে দেয়া না হয় তাহলে ব্রাউজার ছবি খুঁজে পেতে ওয়েব পেজ এর একই ফোল্ডার এ খোঁজ করে। ওয়েব পেজ এ এটিই সাধারণ, যদি আপনি কোন সাব ফোল্ডার এ ইমেজটি রাখেন তাহলে এভাবে তা উল্লেখ করে দিতে হবে:


<img src="/images/html5.gif" alt="HTML5 Icon" style="width:128px;height:128px">


ব্রাউজার যদি ইমেজটি খুঁজে না পায় তাহলে সে একটি ব্রোকেন লিঙ্ক আইকন প্রদশণ করবে। উদাহরণ


<img src="wrongname.gif" alt="HTML5 Icon" style="width:128px;height:128px">


ফলাফল


HTML5 Icon


 

অন্য সার্ভারের ছবি

কিছু ওয়েব সাইট তাদের ইমেজগুলো ইমেজ সার্ভারে লোড করে রাখে, আসলে আপনি বিশ্বের যে কোনো ওয়েব ঠিকানার ইমেজ এ প্রবেশ করতে পারেন:


<img src="http://www.rasta.edu.pk/images/EducationTraining1.jpg">


ফলাফল



 

অ্যানিমেটেড ছবি

GIF ফরমেট অ্যানিমেটেড ইমেজ সমর্থন করে।


<img src="Tree.gif" alt="Rain Tree" style="width:240px;height:320px">


ফলাফল


Stormy-island-cell-phone-wallpaper-animated-240x320


নোট: অ্যানিমেটেড ইমেজ ও ননঅ্যানিমেটেড ইমেজ এর সিনটেক্স এ কোন পার্থক্য নেই।

লিঙ্ক হিসেবে ইমেজ ব্যবহার

ইমেজকে লিঙ্ক হিসেবে ব্যবহার করা খুবই সাধারণ ব্যাপার



   <img src="smiley.gif" alt="HTML tutorial" style="width:42px;height:42px;border:0">
 


ইমেজ ম্যাপ

একটি ইজেজ এর জন্য আপনি ক্লিক করা যায় এমনভাবে ইমেজ ম্যাপ তৈরি করতে পারেন।

উদাহরণ


usemap="#planetmap" style="width:145px;height:126px">

<map name="Bangladesh">
<area shape="rect" coords="0,0,82,126" alt="Sun" href="sun.htm">
<area shape="circle" coords="90,58,3" alt="Mercury" href="mercur.htm">
<area shape="circle" coords="124,58,8" alt="Venus" href="venus.htm">
</map>


 

 

ফলাফল


Planets


 

Sun Mercury Venus

 

ইমেজ ফ্লোটিং

আপনি ইজেমকে প্যারাগ্রাফ এর বাম বা ডানে ভাসমান অবস্থায় রাখতে পারেন

উদাহরণ


<p>
60px;height:40px">
A paragraph with an image. The image floats to the left of the text.
</p>


 

 

ফলাফল:


Bangladesh Flag
A paragraph with an image. The image floats to the left of the text.

 


 

 অধ্যায় সারসংক্ষেপ

  • এইচটিএমএল এ <img> এলিমেন্ট ইমেজকে সংজ্ঞায়িত করে।
  • এইচটিএমএল এ src অ্যাট্রিবিউট ইমেজ এর ফাইল নেমকে সংজ্ঞায়িত করে।
  • এইচটিএমএল এ alt অ্যাট্রিবিউট ইমেজ এর বিকল্প টেক্সকে সংজ্ঞায়িত করে।
  • এইচটিএমএল এ width এবং height অ্যাট্রিবিউট ইমেজ এর আকারকে সংজ্ঞায়িত করে।
  • সিএসএস এ width and height প্রোপার্টি ইমেজ এর আকারকে সংজ্ঞায়িত করে (বিকল্পভাবে)।
  • সিএসএস এ float প্রোপার্টি ইমেজকে ফ্লোট করতে সহায়তা করে।
  • এইচটিএমএল এ usemap অ্যাট্রিবিউট ইমেজ ম্যাপ তৈরি করতে ব্যবহৃত হয়।
  • এইচটিএমএল এ <map> এলিমেন্ট ইমেজ ম্যাপকে সংজ্ঞায়িত করতে ব্যবহৃত হয়।
  • এইচটিএমএল এ <area> এলিমেন্ট ইমেজ ম্যাপ এর কোন এরিয়া ব্যবহার করতে তা সংজ্ঞায়িত করে।

এইচটি এম এল এর উপাদান সমূহ (HTML Elements)

Huge Sell on Popular Electronics

এইচটি এম এল এর উপাদান সমূহ (HTML Elements)

Md. Atik Hasan

Webpage Design & Developer

 

এইচটিএমএএল এলিমেন্ট (HTML Element):

এইচটিএমএএল এলিমেন্ট (Element) দ্বারাই HTML Document বর্ণনা করা হয়। একটি HTML Document – এর চারটি মৌলিক Element থাকে। যথাঃ html, head, title, body।

এছাড়াও আরও অনেক Element রয়েছে।

HTML Element শুরু হয় Opening tag (<html>) দিয়ে এবং শেষ হয় closing tag (</html>) দিয়ে।

Opening tag এবং closing tag এর মাঝখানে যা থাকে তাই হচ্ছে Element।

যেমনঃ

 


<p>This is Element</p>

<h1>This is also an Element<h1>

<title>This is an element too</title>


 

 ফলাফল


This is Element

This is also an Element

This is an element too


 

Nested HTML Element:

Nested HTML Element হল একটি এলিমেন্ট এর আন্ডারে আরও এলিমেন্ট থাকা।

যথাঃ


<html>

<body>
<h1>My First Heading</h1>
<p>My first paragraph.</p>
</body>

</html>


 

 

ফলাফল


My First Heading

My first paragraph.


 

এই উদাহরণে দেখা যাচ্ছে যে html এলিমেন্টের মাঝে body এলেমেন্ট রয়েছে।

<body>
<h1>My First Heading</h1>
<p>My first paragraph.</p>
</body>

এবং body এলিমেন্টের এর মাঝে আরও দুইটি এলেমেন্ট p এবং h1 রয়েছে।

<h1>My First Heading</h1>
<p>My first paragraph.</p>

 

Empty HTML Element:

যে সকল এলেমেন্টের কোন কন্টেন্ট থাকে না তাদেরকে Empty element বলা হয়।

<br> হচ্ছে একটি empty element যার কোন closing tag নাই।

 

HTML Element- এর বৈশিষ্ট্যঃ

  • Start/Opening tag দিয়ে শুরু হয়।
  • End/Closing tag দিয়ে শেষ হয়।
  • Start tag এবং End tag এর মাঝে Element থাকে।
  • কিছু ক্ষেত্রে Element Content নাও থাকতে পারে।
  • কিছু Element এর End/closing ট্যাগ নাও থাকতে পারে।
  • Empty Element start ট্যাগের মাঝে শেষ করা হয়।

 

সিএসএস কম্বিনেটরস (CSS Combinators)

Huge Sell on Popular Electronics

শেখ মাহফুজুর রহমান

সিএসএস কম্বিনেটর সিলেক্টরগুলোর মধ্যে সম্পর্ক নির্দেশ করে। একটি সিএসএস সিলেক্টর একাধিক সিম্পল সিলেক্টর ধারণ করতে পারে। এই সিম্পল সিলেক্টরগুলোর মধ্যে আমরা একটি কম্বিনেটর যোগ করতে পারি। সিএসএস-থ্রি'তে চার প্রকার কম্বিনেটর রয়েছেঃ

  • ডিসেন্ডেন্ট সিলেক্টর
  • চাইল্ড সিলেক্টর
  • অ্যাডজাসেন্ট সিবলিং সিলেক্টর
  • জেনেরাল সিবলিং সিলেক্টর

 

ডিসেন্ডেন্ট সিলেক্টর

ডিসেন্ডেন্ট সিলেক্টর একটি নির্দিষ্ট এলিমেন্টের সবগুলো ডিসেন্ডেন্ট এলিমেন্টকে ম্যাচ বা সিলেক্ট করে। নিচের উদাহরণে <div> এলিমেন্টের ভিতরের সবগুলো <p> এলিমেন্টকে সিলেক্ট করা হয়েছেঃ


div p {
background-color: yellow;
}


 

চাইল্ড সিলেক্টর

চাইল্ড সিলেক্টর একটি নির্দিষ্ট এলিমেন্টের ঠিক ভিতরের চাইল্ড এলিমেন্টগুলোকে সিলেক্ট করে। নিচের উদাহরণে <div> এলিমেন্টের ঠিক ভিতরের অর্থাৎ এর ইমিডিয়েট সন্তান <p> (এখানে p ভিতর অন্য কোন p থাকলে সিলেক্ট হবেনা) এলিমেন্টগুলোকে সিলেক্ট করা হয়েছেঃ


div > p {
      background-color: yellow;
}

 

অ্যাডজাসেন্ট সিবলিং সিলেক্টর

অ্যাডজাসেন্ট সিবলিং সিলেক্টর একটি নির্দিষ্ট এলিমেন্টের অ্যাডজাসেন্ট সিবলিং ( যেমন <div> এর পর <p> এলিমেনটি থাকলে <p> হলো <div> এর সিবলিং বা সহোদর) এলিমেন্টগুলোকে সিলেক্ট করে। সিবলিং এলিমেন্টগুলোর অবশ্যই একই প্যারেন্ট থাকতে হবে অর্থাৎ সেগুলোকে একই এলিমেন্টের ভিতরে অন্তঃভূর্ক্ত হতে হবে এবং অ্যাডজাসেন্টের মানে হলো ঠিক পরে এসেছে। নিচের উদাহরণে <div> এলিমেন্টের ঠিক পরের সবগুলো <p> এলিমেন্টগুলোকে সিলেক্ট করা হয়েছেঃ


div + p {
background-color: yellow;
}


 

জেনারেল সিবলিং সিলেক্টর

জেনারেল সিবলিং সিলেক্টর একটি নির্দিষ্ট এলিমেন্টের সবগুলো সিবলিংকে সিলেক্ট করে। নিচের উদাহরণে

এলিমেন্টের সবগুলোএলিমেন্টকে সিলেক্ট করা হয়েছেঃ


div ~ p {
background-color: yellow;
}


সিএসএস ফ্লোট (CSS Float)

Huge Sell on Popular Electronics

শেখ মাহফুজুর রহমান

 

সিএসএস ফ্লোট কি?

ফ্লোটের বাংলা হলো ভাসা। সিএসএস ফ্লোটের মাধ্যমে একটি এলিমেন্টকে ব্রাউজার স্ক্রিনের বাম অথবা ডান দিকে ঠেলে বা ভাসিয়ে দেয়া যায়। এতে ডকুমেন্টের অন্যান্য এলিমেন্টগুলো এর চারপাশ ঘিরে অবস্থান করে যা রেপ (wrap) নামে পরিচিত। ইমেজ নিয়ে কাজ করার ক্ষেত্রে সাধারণত ফ্লোট ব্যবহার করা হয় কিন্তু এর মূল ব্যবহার হয় পেজের লেআউট নিয়ে কাজ করার সময়।

 

কিভাবে একটি এলিমেন্ট ভাসে

এলিমেন্টগুলো হরাইজন্টালি ফ্লোট করে, এর মানে হলো একটি শুধু ডানে বা বামে ফ্লোট হতে পারে; উপরে বা নিচের দিকে নয়। একটি ফ্লোট এলিমেন্ট ডানে অথবা বামে যতদূর যাওয়া সম্ভব যেতে পারে। সাধারণত ফ্লোটিং এলিমেন্টটি যে এলিমেন্টের ভিতরে থাকে তার ডান বা বামের শেষ সীমা পর্যন্ত ফ্লোটেড হয়ে থাকে। ফ্লোটেড এলিমেন্টের পরের এলিমেন্টগুলো এর চারপাশে ফ্লো করবে বা ভাসবে। ফ্লোটেড এলিমেন্টের আগের এলিমেন্টগুলোর উপর এর কোন প্রভাব পড়বেনা। যদি কোন ছবি ডান দিকে ফ্লোট করে এর পরের টেক্সটগুলো এর চারপাশ ঘিরে অবস্থান করে যা রেপিং নামে পরিচিতঃ


img {
      float: right;
}

 

পাশাপাশি থাকা ফ্লোটিং এলিমেন্ট

আপনি যদি কিছু সংখ্যক ফ্লোটিং এলিমেন্টকে একটির পর আরেকটিকে রাখেন তাহলে তারা জায়গা থাকার সাপেক্ষে একটি অপরটির পাশে ফ্লোট করবে। নিচে ফ্লোট প্রপার্টি ব্যবহার করে একটি ইমেজ গ্যালারি বানানো হয়েছেঃ


.thumbnail {
     float: left;
     width: 110px;
     height: 90px;
     margin: 5px;
 }

 

ক্লিয়ার ব্যবহার করে ফ্লোট বন্ধ করা

ফ্লোটিং এলিমেন্টের পরের এলিমেন্টগুল এর চারপাশে ফ্লো বা ভেসে বেড়াবে। ক্লিয়ার প্রপার্টি কোন এলিমেন্টের কোন দিকে (ডান অথবা বাম) অন্য ফ্লোটিং এলিমেন্ট থাকতে পারবেনা তা বলে দেয়। নিচের উদাহরণে ইমেজ গ্যালারিতে টেক্সট লাইনের সাথে ক্লিয়ার প্রপার্টি ব্যবহার করা হয়েছেঃ


.text_line {
       clear: both;
 }

 

 

আরও কিছু উদাহরণঃ নিজে করুন

  • বর্ডার ও মার্জিনসহ একটি ইমেজ যা একটি প্যারাগ্রাফের ডানে ফ্লোট করেঃ একটি ইমেজকে প্যারাগ্রাফের ডানদিকে ভাসিয়ে দিন এবং ইমেজটিতে বর্ডার ও মার্জিন যোগ করুন।
  • ক্যাপশনসহ একটি ইমেজ যা ডানদিকে ফ্লোট করেঃ ক্যাপশনসহ একটি ইমেজকে ডানদিকে ফ্লোট করুন
  • একটি প্যারাগ্রাফের প্রথম অক্ষরকে বাম দিকে ফ্লোট করাঃ একটি প্যারাগ্রাফের প্রথম অক্ষরকে বাম দিকে ফ্লোট করে তাতে স্টাইল যোগ করুন।
  • হরাইজন্টাল মেন্যু তৈরি করাঃ একটি হরাইজন্টাল মেন্যু তৈরি করতে হাইপার লিংকের একটি লিস্টে ফ্লোট যোগ করুন।
  • টেবল ব্যবহার না করে হোমপেজ তৈরি করাঃ হেডার, ফুটার, লেফট কন্টেন্ট এবং মেইন কন্টেন্টসহ ফ্লোট ব্যবহার করে একটি হোমপেজ তৈরি করুন।

 

সবগুলো সিএসএস ফ্লোট প্রপার্টি

clear - ফ্লোটিং এলিমেন্টের কোন দিকে (ডান অথবা বাম) অন্যান্য এলিমেন্ট থাকতে পারবেনা তা ঠিক করে দেয়। এর ভ্যালুগুলো হলো-

left
right
both
none
inherit

 

float - একটি বক্স অর্থাৎ এলিমেন্ট ফ্লোট করবে কি করবেনা তা ঠিক করে। এর ভ্যালুগুলো হলো-

left
right
none
inherit

সিএসএস ডিসপ্লে এন্ড ভিজিবিলিটি (CSS Display and Visibility)

Huge Sell on Popular Electronics

display প্রোপার্টিজ দিয়ে ব্লক লেভেল এলিমেন্টকে ইনলাইন আবার ইনলাইন এলিমেন্ট কে ব্লক লেভেল বানানো যায়। এছাড়া এই প্রোপার্টিজ দিয়ে এলিমেন্ট অদৃশ্য করে রাখা যায়। মূলত এর ৩/৪ টি মান খুব ব্যবহার হয় বাকি মানগুলি দিয়েও অনেক কাজ হয় তবে কম ব্যবহৃত হয়ে থাকে।


navigation a {
    display: block;
    margin-left: 0.5em;
    padding: 5px;
    border: 1px solid #000;
    color: #000;
    text-decoration: none;
}

 

display:inline; দিয়ে দেখুন সব a বা এনকর ট্যাগ একলাইনে দেখাবে। এনকর হচ্ছে (<a></a>) ইনলাইন এলিমেন্ট। display:block; দেয়াতে ব্লক লেভেল এলিমেন্টের মত কাজ করেছে। এরুপ <span>, <em> ইত্যাদি ইনলাইন এলিমেন্ট বা যেকোন ইনলাইন এলিমেন্টে কে প্রয়োজনে ব্লক লেভেল করা যায় এই প্রোপার্টিজ দিয়ে।

আবার <p>, <li> ইত্যাদি ব্লক লেভেল এলিমেন্ট যেগুলি ব্রাউজারের সম্পূর্ন width নিয়ে থাকে এবং আগে পিছে লাইন ব্রেক দেয়া থাকে এসবকে ইনলাইন এর মত কাজ করাতে display:inline; করে দিতে হয়। যেমনঃ

 


li {
    display: inline;
}

 

দেখুন p কিভাবে ইনলাইন এলিমেন্টের মত কাজ করছে। display এর আরেকটা মান আছে যথা "none", এটা দিলে ঐ এলিমেন্টকে লুকিয়ে ফেলবে এবং কোন স্পেসও ধরে রাখবেনা।

জেকোয়েরি দিয়ে কাজ ফর্ম ভেলিডেশন ইত্যাদি কাজে এভাবে এলিমেন্ট অদৃশ্য করে রাখার প্রয়োজন হয়।

উপরের উদাহরনে display:inline; এর জায়গায় display:none; দিয়ে দেখুন অার কিছু দেখাবেনা।

inline-block (display:inline-block) একটা মান আছে এটা দিলে ইনলাইনের মতই কাজ করবে শুধু পার্থক্য হচ্ছে height এবং width এখন এলিমেন্ট টির জন্য কাজ করবে।

সাধারনভাবে ইনলাইন এলিমেন্টের height, width কাজ করেনা।

display:table; দিলে এলিমেন্টটি টেবিলের (<table></table>) মত আচরন করবে।

display:table-cell; দিলে এলিমেন্ট টি <td></td> এর মত কাজ করবে।

table-row দিলে <tr></tr> মত কাজ হবে।

এরুপ আরো আছে, প্রয়োগ করে দেখতে পারেন।

  1. display:inline-table;
  2. display:list-item;
  3. display:table-caption;
  4. display:table-column-group;
  5. display:table-header-group;
  6. display:table-footer-group;
  7. display:table-row-group;
  8. display:table-column;
  9. display:run-in;
  10. display:flex;

 

সি এস এস সিলেক্টর (CSS Selectors)

Huge Sell on Popular Electronics

এইচটিএমএল এর সব element গুলোকে manipulate করার জন্য সিএসএস এর বিভিন্ন selector ব্যবহার করা হয়।

id , class, type, attribute ইত্যাদির উপর ভিত্তি করে এইচটিএমএল এলিমেন্টগুলো খোঁজা বা নির্বাচন করার জন্য সিএসএস সিলেক্টর ব্যবহার করা হয়।

এলিমেন্ট সিলেক্টর

এলিমেন্ট সিলেক্টর এলিমেন্টের নামের উপর ভিত্তি করে উপাদান নির্বাচন করে।

আমরা সকল <p> এলিমেন্টগুলোকে সিলেক্ট করতে পারি এইভাবে


P {
   text-align: center;
   color: red;
 }

ID Selector

কোন ইউনিক element এর জন্য আমরা id ব্যবহার করে থাকি। একটি পেজ এর মধ্যে ID ইউনিক হওয়া উচিত। কোন element এর নির্দিষ্ট কোন ID কে কল করতে গেলে আমাদের হেস operator ব্যবহার করতে হয়।

যেসকল এইচটিএমএল এর এলিমেন্ট id="para1" তাদের সিলেন্ট করতে হয় এভোবে


#para1 {
    text-align: center;
    color: red;
}

নোটঃ আইডি এর নাম সংখ্যা দিয়ে শুরু করবেন না।

ক্লাস সিলেক্টর

class selector নির্দিষ্ট ক্লাস এট্রিবিউ এর এলিমেন্টগুলি সিলেক্ট করে।

নির্দিষ্ট ক্লাস এর এট্রিবিউটগুলো নির্বাচন করতে class selector কে ডট চিহ্ন দিয়ে সুরু করতে হয়, পরে ক্লাসের নাম উল্লেখ করতে হয়।

নিচের উদারণটি সকল এইচটিএমএল  এলিমেন্ট যেগুলোতে class="center" আছে সেগুলো সিলেক্ট করবে।


.center {
    text-align: center;
    color: red;
}

 

ক্লাস দ্বারা আপনি শুধুমাত্র নির্দিষ্ট এইচটিএমএল এলিমেন্ট প্রভাবিত হবে এভাবেও নির্দিষ্ট করে দিতে পারেন।

নিচের উদারণটি সকল এইচটিএমএল <p> এলিমেন্ট যেগুলোতে class="center" আছে সেগুলো সিলেক্ট করবে।


p.center {
    text-align: center;
    color: red;
}

নোটঃ আইডি এর নাম সংখ্যা দিয়ে শুরু করবেন না।

Grouping selector

অনেক সময় দেখা যায় অনেকগুলো element এর স্টাইল প্রায় এক রকম থাকে। যেমন
 h1 {
    text-align: center;
    color: red;
}

h2 {
    text-align: center;
    color: red;
}

p {
    text-align: center;
    color: red;
}

কোড ছোট রাখতে আপনি সিলেক্টরগুলোর গ্রুপ তৈরি করতে পারেন। 
গ্রুপ তৈরি করতে প্রতিটি সিলেক্টরকে কমা (,) দ্বারা পৃথক করতে হয়।
উদাহরণঃ

h1, h2, p {
    text-align: center;
    color: red;
}

 

 

নিজে নিজে চেষ্টা করো

 

অনুশীলন ০১ঃ

সকল <p> এলিমেন্ট এর রঙ লাল এ পরিবর্তন কর


<!DOCTYPE html>
<html>
<head>
<style>

</style>
</head>
<body>

<h1>This is a Heading</h1>
<p>This is a paragraph.</p>
<p>This is another paragraph.</p>

</body>
</html>

 

অনুশীলন ০২ঃ

যে এলিমেন্টগুলোর id="para1" সেগুলোর রঙ লাল এ পরিবর্তন কর


<!DOCTYPE html>
<html>
<head>
<style>

</style>
</head>
<body>

<h1>This is a Heading</h1>
<p id="para1">This is a paragraph.</p>
<p>This is another paragraph.</p>

</body>
</html>

 

অনুশীলন ০৩ঃ

যেসকল এলিমেন্ট এর ক্লাস "colortext" সেগুলোর রঙ লাল এ পরিবর্তন কর


<!DOCTYPE html>
<html>
<head>
<style>

</style>
</head>
<body>

<h1>This is a Heading</h1>
<p>This is a paragraph.</p>
<p class="colortext">This is another paragraph.</p>
<p class="colortext">This is also a paragraph.</p>

</body>
</html>

 

অনুশীলন ০৪ঃ

সকল <p> এবং <h1> এলিমেন্ট এর রঙ লাল এ পরিবর্তন কর। কোড ছোট রাখতে এলিমেন্টগুলোর গ্রুপ তৈরি কর।


<!DOCTYPE html>
<html>
<head>
<style>

</style>
</head>
<body>

<h1>This is a heading</h1>
<h2>This is a smaller heading</h2>
<p>This is a paragraph.</p>
<p>This is another paragraph.</p>

</body>
</html>

 

jQuery নির্বাচক (Selectors)

Huge Sell on Popular Electronics

jQuery নির্বাচক jQuery লাইব্রেরির সবচেয়ে গুরুত্বপূর্ণ অংশ।

 

jQuery নির্বাচক

jQuery নির্বাচক আপনাকে এইচটিএমএল উপাদান (গুলি) নির্বাচন এবং নিপূণভাবে ব্যবহার করার অনুমতি দেয়। HTML উপাদান আইডি, ক্লাস, টাইপ, এট্রিবিউট, এট্রিবিউট এর মান সহ আরও অনেক কিছুর উপর ভিত্তি করে "খুঁজতে" (বা নির্বাচন করতে) jQuery নির্বাচক ব্যবহৃত হয়। এটা বিদ্যমান সিএসএস সিলেক্টর এর উপর নির্ভর করে এবং এ ছাড়াও, এটার কিছু নিজস্ব সিলেক্টর আছে।

JQuery মধ্যে সকল নির্বাচক ডলার চিহ্ন এবং বন্ধনী দিয়ে শুরু হয়: $ ()।

 

এলিমেন্ট নির্বাচক

JQuery এলিমেন্ট নির্বাচক এলিমেন্ট এর নাম অনুসারে নির্বাচন করে।
আপনি একটি পেজ এর সকল <p> এলিমেন্ট নির্বাচন করতে পারেন:


$ ("p")


 

উদাহরণ:
যখন একজন ব্যবহারকারী একটি বাটন ক্লিক করবে, তখন সকল <p> এলিমেন্ট অদৃশ্য হয়ে যাবে:


$(document).ready(function(){
    $("button").click(function(){
        $("p").hide();
    });
});

 

#id নির্বাচক

JQuery এর #id নির্বাচক একটি HTML ট্যাগ এর আইডি অ্যাট্রিবিউট ব্যবহার করে নির্দিষ্ট এলিমেন্ট খোজে।

একটি পেজ এর মধ্যে আইডি অনন্য হতে হবে,যাতে নির্দিষ্ট এলিমেন্ট খুঁজে বের করার জন্য আপনি #id নির্বাচক ব্যবহার করতে পারেন।

নির্দষ্ট আইডি বিশিষ্ট কোন এলিমেন্ট খুঁজে বের করার জন্য উক্ত আইডি এর পূর্বে # (হ্যাস) ব্যবহার করুন।


$ ("#test")


 

 

উদাহরণ
একজন ব্যবহারকারী যখন একটি বাটন ক্লিক করে, id="test" এলিমেন্ট অদৃশ্য হয়ে যাবে:


$(document).ready(function(){
    $("button").click(function(){
        $("#test").hide();
    });
});

 

JQuery নির্বাচক এর আরো উদাহরণ

 

সিনটেক্স বর্ণনা
$("*") সকল এলিমেন্ট নির্বাচন করে
$(this) বর্তমান এইচটিএমএল এলিমেন্ট নির্বাচন করে
$("p.intro") class="intro" বিশিষ্ট সকল <p> এলিমেন্ট নির্বাচন করে
$("p:first") প্রথম <p> এলিমেন্ট নির্বাচন করে
$("ul li:first") প্রথম <ul> এলিমেন্ট এর প্রথম <li> এলিমেন্ট নির্বাচন করে
$("ul li:first-child") প্রতিটি <ul> এলিমেন্ট এর প্রথম <li> এলিমেন্ট নির্বাচন করে
$("[href]") href এট্রিবিউট বিশিষ্ট সকল এলিমেন্ট নির্বাচন করে
$("a[target='_blank']") টার্গেন এট্রিবিউট মান "_blank" বিশিষ্ট সকল <a> এলিমেন্ট নির্বাচন করে
$("a[target!='_blank']") টার্গেন এট্রিবিউট মান NOT সমান "_blank" বিশিষ্ট সকল <a> এলিমেন্ট নির্বাচন করে
$(":button") type="button" এর সকল <button> এবং <input> এলিমেন্ট নির্বাচন করে
$("tr:even") সকল জোড় <tr> এলিমেন্ট নির্বাচন করে
$("tr:odd") সকল বেজোড় <tr> এলিমেন্ট নির্বাচন করে

 

একটি পৃথক ফাইলে jQuery ফাংশান রাখা

যদি আপনার ওয়েব সাইটে প্রচুর সংখ্যক পেজ থাকে এবং jQuery ফাংশন সহজে ব্যবহার করতে চান তাহলে jQuery ফাংশনগুলোকে একটি আলাদা ফাইলে রাখতে পারেন, যার এক্সটেনশন হবে .js

আমাদের টিউটোরিয়াল এর উদাহরণগুলোতে jQuery ফাংশন হেড সেকশন এর ভিতরে রাখা হয়েছে। কিছু কিছু ক্ষেত্রে নিচের মতো করে আলাদা ফাইল এও রাখা হয়েছে:


<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js">
</script>
<script src="my_jquery_functions.js"></script>
</head>