বিভিন্ন ওয়েব সাইটে টেবিল ভিত্তিক ডেটা দেখেছেন নিশ্চয়ই। বিশেষ করে খেলাধুলার সাইটের খেলোয়ারদের স্কোর, প্রোফাইল, সময়সূচি, শেয়ার বাজারের হিসাব ইত্যাদি কাজে টেবিল লাগে। টেবিলভিত্তিক ডেটা দেখানোর জন্য এইচটিএমএল এর বেশকিছু ট্যাগ আছে যেগুলি দিয়ে নানন ধরনের টেবিল তৈরী করা যায়। একটা টেবিল তৈরীতে প্রাথমিকভাবে ৩টি ট্যাগ লাগে
১. <table></table>
২. <tr></tr> (tr তে table row)
৩. <td></td> (td তে table data)
এই ৩টি ট্যাগ দিয়ে একটা টেবিল বানাতে পারবেন। পুরো grid সিস্টেম বানানো যাবে। row এবং column দিয়ে
tr দিয়ে row বা সারি এবং td দিয়ে column বা স্তম্ভ বানানো হয়। একটা সাধারন টেবিল
<
table
>
<
tr
>
<
td
>HTML</
td
>
<
td
>JS</
td
>
<
td
>SQL</
td
>
</
tr
>
<
tr
>
<
td
>CSS</
td
>
<
td
>PHP</
td
>
<
td
>MySQL</
td
>
</
tr
>
</
table
>
প্রদর্শন:
HTML | JS | SQL |
CSS | PHP | MySQL |
আমি দুটি row এবং ৩টি করে কলাম ব্যবহার করেছি আপনি ইচ্ছে মত row ব্যবহার করতে পারবেন।
টেবিল শিরোনাম
<th> নামে একটা ট্যাগ আছে এটা দেয়া টেবিলের হেডার বানানো যায় যেমন
<
table
>
<
tr
>
<
th
>Markup</
th
>
<
th
>Programming</
th
>
<
th
>Database</
th
>
</
tr
>
<
tr
>
<
td
>HTML</
td
>
<
td
>JS</
td
>
<
td
>SQL</
td
>
</
tr
>
<
tr
>
<
td
>CSS</
td
>
<
td
>PHP</
td
>
<
td
>MySQL</
td
>
</
tr
>
</
table
>
প্রদর্শন
Markup | Programming | Database |
---|---|---|
HTML | JS | SQL |
CSS | PHP | MySQL |
দেখুন th এলিমেন্টের লেখাগুলি হেডিং আকারে দেখাচ্ছে।
তবে টেবিল দেয়ার উপযুক্ত নিয়ম হচ্ছে টেবিলের হেডার, বডি এবং ফুটার সহ দেয়া। এজন্য কিছু ট্যাগ আছে এগুলি ব্যবহার করলে গ্রামাটিকালি টেবিলটি সঠিক হয় এরুপ একটি উদাহরন
<
table
>
<
thead
>
<
tr
>
<
th
>Markup</
th
>
<
th
>Programming</
th
>
<
th
>Database</
th
>
</
tr
>
</
thead
>
<
tfoot
>
<
tr
>
<
td
>Easy</
td
>
<
td
>Tough</
td
>
<
td
>Tough</
td
>
</
tr
>
</
tfoot
>
<
tbody
>
<
tr
>
<
td
>HTML</
td
>
<
td
>JS</
td
>
<
td
>SQL</
td
>
</
tr
>
<
tr
>
<
td
>CSS</
td
>
<
td
>PHP</
td
>
<
td
>MySQL</
td
>
</
tr
>
</
tbody
>
</
table
>
প্রদর্শন (টেবিল C)
Markup | Programming | Database |
---|---|---|
Easy | Tough | Tough |
HTML | JS | SQL |
CSS | PHP | MySQL |
<tfoot> ট্যাগ <tbody> এর আগে দেয়া হয়েছে, আর এভাবেই ব্রাউজার সঠিকভাবে দেখাতে পারে।(দেখুন tfoot এর ডেটা নিচেই দেখাচ্ছে)
উপরের টেবিলগুলিতে বর্ডার না দেয়াতে ভাল দেখাচ্ছে না এজন্য <table> এলিমেন্টে বেশ কয়েকটি এট্রিবিউট আছে যেগলি দিয়ে টেবিল সুন্দর সাজানো যায়। যেমন টেবিলে বর্ডার দিতে চাইলে <table border=”1″> এভাবে দিবেন ফলে টেবিলটি কিছুটা সুন্দর লাগবে আবার আছে cellpadding এবং cellspacing এদুটি দিয়ে cell বা অংশগুলির মধ্যে যথাক্রমে প্যাডিং (কনটেন্ট থেকে বর্ডারের দুরত্ব) এবং দুরত্ব বাড়ানো যায় যেমন উপরের টেবিলে <table border=”1″ cellpadding=”10″> এটা যোগ করে আমাদের অনলাইন এডিটরে রান করিয়ে দেখাতে পারেন।
rowspan এবং colspan
td, th এ rowspan এবং colspan এট্রিবিউট দুটি ব্যবহার করে জটিল ধরনের টেবিল বানানো যায়্। rowspan এর সংখ্যাত্নক মান দিয়ে ঠিক করা যায় cell টি কতটি row এর সমান হবে যেমন
<
table
border
=
"1"
>
<
tr
>
<
th
rowspan
=
"2"
>Web Language</
th
>
<
td
>HTML</
td
>
<
td
>CSS</
td
>
</
tr
>
<
tr
>
<
td
>PHP</
td
>
<
td
>JS</
td
>
</
tr
>
<
tr
>
<
th
>Framework</
th
>
<
td
>CI</
td
>
<
td
>Bootstrap</
td
>
</
tr
>
</
table
>
প্রদর্শন:
Web Language | HTML | CSS |
---|---|---|
PHP | JS | |
Framework | CI | Bootstrap |
কোথায় th, td ইত্যাদি দিয়েছি ভালভাবে লক্ষ্য করুন নাহলে কিছুই বুঝবেননা। দেখুন দুটি row এর জায়গা কিভাবে একটি cell th(Web Language) দিয়ে দখল করা হয়েছে, rowspan দিয়ে।
colspan দিয়ে কলাম দখল করা যায় যেমন উপরের টেবিল C দেখুন সেখানে Tough দুটি কলামে রাখা হয়েছে যেটা অপ্রয়োজনীয়, ইচ্ছে করলে colspan ব্যবহার করে একটি কলামকেই দুটির সমান করে দিতে পারি। যেমন ঐ উদাহরনটির ১৩ এবং ১৪ নম্বর লাইনদুটি বাদদিয়ে নিচের লাইনটি দিন
ব্যাস এবার রান করিয়ে দেখুন একটি কলামেই কাজ হয়ে গেছে।
** একটা cell এর ভিতর (td এর ভিতর) যেকোন এইচটিএমএল এলিমেন্ট রাখতে পারেন। img, p বা যেকোন কিছু।
** গুরত্বপূর্ন এট্রিবিউটগুলিই শুধু আলোচনা করা হচ্ছে, এগুলি ছাড়াও align, bgcolor ইত্যাদি কমন এট্রিবিউটগুলি ব্যবহার করা যাবে।