CSS দিয়ে একটি HTML টেবিলের চেহারা অনেক ভালো করা যায়:
| কোম্পানি | যোগাযোগ | দেশ |
|---|---|---|
| Alfreds Futterkiste | Maria Anders | Germany |
| Berglunds snabbköp | Christina Berglund | Sweden |
| Centro comercial Moctezuma | Francisco Chang | Mexico |
| Ernst Handel | Roland Mendel | Austria |
| Island Trading | Helen Bennett | UK |
| Königlich Essen | Philip Cramer | Germany |
| Laughing Bacchus Winecellars | Yoshi Tannamuri | Canada |
| Magazzini Alimentari Riuniti | Giovanni Rovelli | Italy |
CSS-এ টেবিলের বর্ডার নির্দিষ্ট করতে border প্রপার্টি ব্যবহার করুন।
নিচের উদাহরণে <table>, <th>, এবং <td> এলিমেন্টের জন্য একটি কালো বর্ডার নির্দিষ্ট করা হয়েছে:
| প্রথম নাম | পদবি |
|---|---|
| Peter | Griffin |
| Lois | Griffin |
table, th, td {
border: 1px solid black;
}লক্ষ্য করুন যে উপরের উদাহরণে টেবিলটির ডাবল বর্ডার আছে। কারণ টেবিল এবং <th>/<td> এলিমেন্টের নিজস্ব আলাদা বর্ডার আছে।
border-collapse প্রপার্টি ঠিক করে টেবিলের বর্ডারগুলো একটিমাত্র বর্ডারে একত্রিত হবে কিনা:
| প্রথম নাম | পদবি |
|---|---|
| Peter | Griffin |
| Lois | Griffin |
table {
border-collapse: collapse;
}
table, th, td {
border: 1px solid black;
}শুধু টেবিলের চারপাশে একটি বর্ডার চাইলে, শুধু <table>-এর জন্য border প্রপার্টি নির্দিষ্ট করুন:
| প্রথম নাম | পদবি |
|---|---|
| Peter | Griffin |
| Lois | Griffin |
table {
border: 1px solid black;
}একটি টেবিলের প্রস্থ ও উচ্চতা নির্ধারণ করা হয় width এবং height প্রপার্টি দিয়ে।
নিচের উদাহরণে টেবিলের প্রস্থ 100% এবং <th> এলিমেন্টের উচ্চতা 50px নির্ধারণ করা হয়েছে:
| প্রথম নাম | পদবি | সঞ্চয় |
|---|---|---|
| Peter | Griffin | $100 |
| Lois | Griffin | $150 |
| Joe | Swanson | $300 |
table {
width: 100%;
}
th {
height: 50px;
}text-align প্রপার্টি <th> বা <td>-এর কনটেন্টের অনুভূমিক অ্যালাইনমেন্ট (যেমন left, right, বা center) নির্ধারণ করে।
ডিফল্টভাবে, <th> এলিমেন্টের কনটেন্ট মাঝ বরাবর এবং <td> এলিমেন্টের কনটেন্ট বামদিকে অ্যালাইন করা থাকে।
নিচের উদাহরণে <th> এলিমেন্টের টেক্সট বামদিকে অ্যালাইন করা হয়েছে:
| প্রথম নাম | পদবি | সঞ্চয় |
|---|---|---|
| Peter | Griffin | $100 |
| Lois | Griffin | $150 |
| Joe | Swanson | $300 |
th {
text-align: left;
}vertical-align প্রপার্টি <th> বা <td>-এর কনটেন্টের উলম্ব অ্যালাইনমেন্ট (যেমন top, bottom, বা middle) নির্ধারণ করে।
ডিফল্টভাবে, একটি টেবিলে কনটেন্টের উলম্ব অ্যালাইনমেন্ট মাঝ বরাবর থাকে (<th> এবং <td> উভয় এলিমেন্টের ক্ষেত্রেই)।
নিচের উদাহরণে <td> এলিমেন্টের উলম্ব টেক্সট অ্যালাইনমেন্ট নিচের দিকে (bottom) সেট করা হয়েছে:
| প্রথম নাম | পদবি | সঞ্চয় |
|---|---|---|
| Peter | Griffin | $100 |
| Lois | Griffin | $150 |
| Joe | Swanson | $300 |
td {
height: 50px;
vertical-align: bottom;
}একটি টেবিলে বর্ডার এবং কনটেন্টের মধ্যে জায়গা নিয়ন্ত্রণ করতে, <td> এবং <th> এলিমেন্টে padding প্রপার্টি ব্যবহার করুন:
| প্রথম নাম | পদবি | সঞ্চয় |
|---|---|---|
| Peter | Griffin | $100 |
| Lois | Griffin | $150 |
| Joe | Swanson | $300 |
th, td {
padding: 15px;
text-align: left;
}| প্রথম নাম | পদবি | সঞ্চয় |
|---|---|---|
| Peter | Griffin | $100 |
| Lois | Griffin | $150 |
| Joe | Swanson | $300 |
অনুভূমিক ডিভাইডারের জন্য <th> ও <td>-তে border-bottom প্রপার্টি যোগ করুন:
th, td {
border-bottom: 1px solid #ddd;
}মাউস হোভার করলে টেবিলের সারি হাইলাইট করতে <tr>-তে :hover সিলেক্টর ব্যবহার করুন:
| প্রথম নাম | পদবি | সঞ্চয় |
|---|---|---|
| Peter | Griffin | $100 |
| Lois | Griffin | $150 |
| Joe | Swanson | $300 |
tr:hover {background-color: #f5f5f5;}| প্রথম নাম | পদবি | সঞ্চয় |
|---|---|---|
| Peter | Griffin | $100 |
| Lois | Griffin | $150 |
| Joe | Swanson | $300 |
জেব্রা-স্ট্রাইপড টেবিলের জন্য, nth-child() সিলেক্টর ব্যবহার করুন এবং সব জোড় (বা বিজোড়) টেবিল সারিতে একটি background-color যোগ করুন:
tr:nth-child(even) {background-color: #dee2e6;}নিচের উদাহরণে <th> এলিমেন্টের ব্যাকগ্রাউন্ড রঙ এবং টেক্সট রঙ নির্দিষ্ট করা হয়েছে:
| প্রথম নাম | পদবি | সঞ্চয় |
|---|---|---|
| Peter | Griffin | $100 |
| Lois | Griffin | $150 |
| Joe | Swanson | $300 |
th {
background-color: #0054D1;
color: white;
}স্ক্রিন যদি পুরো কনটেন্ট দেখানোর জন্য খুব ছোট হয়, তাহলে একটি রেসপন্সিভ টেবিলে একটি অনুভূমিক স্ক্রল বার দেখাবে:
| প্রথম নাম | পদবি | পয়েন্ট | পয়েন্ট | পয়েন্ট | পয়েন্ট | পয়েন্ট | পয়েন্ট | পয়েন্ট | পয়েন্ট | পয়েন্ট | পয়েন্ট | পয়েন্ট | পয়েন্ট |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Jill | Smith | 50 | 50 | 50 | 50 | 50 | 50 | 50 | 50 | 50 | 50 | 50 | 50 |
| Eve | Jackson | 94 | 94 | 94 | 94 | 94 | 94 | 94 | 94 | 94 | 94 | 94 | 94 |
| Jill | Smith | 67 | 67 | 67 | 67 | 67 | 67 | 67 | 67 | 67 | 67 | 67 | 67 |
টেবিলটি রেসপন্সিভ করতে <table> এলিমেন্টের চারপাশে overflow-x:auto-সহ একটি কন্টেইনার এলিমেন্ট (যেমন <div>) যোগ করুন:
<div style="overflow-x:auto;">
<table>
... table content ...
</table>
</div>মনে রাখবেন: OS X Lion-এ (Mac-এ), স্ক্রলবার ডিফল্টভাবে লুকানো থাকে এবং শুধুমাত্র ব্যবহারের সময় দেখা যায় (এমনকি "overflow:scroll" সেট করা থাকলেও)।