উত্তর:
বুনিয়াদি
সিএসএসে "সেলপ্যাডিং" নিয়ন্ত্রণের জন্য, আপনি কেবল padding
টেবিলের ঘরে ব্যবহার করতে পারেন । উদাহরণস্বরূপ "সেলপ্যাডিং" এর 10px:
td {
padding: 10px;
}
"সেলস্পেসিং" এর জন্য, আপনি border-spacing
নিজের টেবিলটিতে CSS সম্পত্তি প্রয়োগ করতে পারেন । যেমন "সেলস্পেসিং" এর 10px এর জন্য:
table {
border-spacing: 10px;
border-collapse: separate;
}
এই বৈশিষ্ট্যটি এমনকি পৃথক অনুভূমিক এবং উল্লম্ব ব্যবধানের অনুমতি দেবে, এমন কিছু যা আপনি পুরানো-স্কুল "সেলস্পেসিং" দিয়ে করতে পারেননি।
IE <= 7 এ সমস্যা
এটি ইন্টারনেট এক্সপ্লোরার through এর মাধ্যমে ইন্টারনেট এক্সপ্লোরার ব্যতীত প্রায় সকল জনপ্রিয় ব্রাউজারে কাজ করবে, যেখানে আপনি প্রায় ভাগ্যের বাইরে এসেছেন। আমি "প্রায়" বলি কারণ এই ব্রাউজারগুলি এখনও border-collapse
সম্পত্তি সমর্থন করে , যা সংলগ্ন টেবিল কোষের সীমানাকে মার্জ করে। যদি আপনি সেলস্পেসিং (অর্থাৎ, cellspacing="0"
) মুছে ফেলার চেষ্টা করছেন তবে border-collapse:collapse
তার একই প্রভাব হওয়া উচিত: টেবিলের ঘরগুলির মধ্যে কোনও স্থান নেই। এই সমর্থনটি বগি, যদিও cellspacing
এটি সারণী উপাদানটিতে বিদ্যমান কোনও HTML বৈশিষ্ট্যকে ওভাররাইড করে না ।
সংক্ষেপে: অ-ইন্টারনেট এক্সপ্লোরার 5-7 ব্রাউজারগুলির জন্য, border-spacing
আপনাকে পরিচালনা করে। ইন্টারনেট এক্সপ্লোরারের জন্য, যদি আপনার পরিস্থিতি ঠিক ঠিক থাকে (আপনি 0 সেলস্পেসিং চান এবং আপনার টেবিলটি ইতিমধ্যে এটি সংজ্ঞায়িত করা নেই), আপনি ব্যবহার করতে পারেন border-collapse:collapse
।
table {
border-spacing: 0;
border-collapse: collapse;
}
নোট: সিএসএস বৈশিষ্ট্য জন্য একটি দুর্দান্ত ওভারভিউ যে এক টেবিল এবং কোন ব্রাউজার জন্য আবেদন করতে পারেন, এই দেখুন কল্পনাপ্রসূত Quirksmode পৃষ্ঠা ।
ব্রাউজারের ডিফল্ট আচরণ সমান:
table {border-collapse: collapse;}
td {padding: 0px;}
ঘরের পরিমাণ এবং ঘরের প্রাচীরের মধ্যে স্থানের পরিমাণ নির্ধারণ করে
table {border-collapse: collapse;}
td {padding: 6px;}
টেবিল কোষগুলির মধ্যে স্থান নিয়ন্ত্রণ করে
table {border-spacing: 2px;}
td {padding: 0px;}
table {border-spacing: 2px;}
td {padding: 6px;}
table {border-spacing: 8px 2px;}
td {padding: 6px;}
দ্রষ্টব্য: যদি
border-spacing
সেট করা থাকে তবেborder-collapse
এটি টেবিলের সম্পত্তি নির্দেশ করেseparate
।
এটি অর্জনের পুরানো এইচটিএমএল উপায় আপনি এখানে পাবেন।
table
{
border-collapse: collapse; /* 'cellspacing' equivalent */
}
table td, table th
{
padding: 0; /* 'cellpadding' equivalent */
}
cellspacing=0
সমতুল্য। এর সমতুল্য cellspacing=1
সম্পূর্ণ আলাদা। গৃহীত উত্তর দেখুন।
table td
এবং table th
শুধু td
এবং th
যথাক্রমে হওয়া উচিত নয় ? এটি যে কোনও উপায়ে কাজ করে তবে একটি ছোট নির্বাচক মানে কিছুটা দ্রুত ম্যাচিং
table > tr > td
এবং table > tr > th
। এটি প্রায় তত দ্রুত tr
এবং th
আপনার নেস্টেড টেবিল থাকলে এটি কাজ করার গ্যারান্টিযুক্ত। সবেমাত্র আমার 2 সি
table
নির্বাচকের দরকার কি? আইআইআরসি, এ এর <td>
অভ্যন্তরে অবৈধ <tr>
।
আমি জানি যতক্ষণ না টেবিল কোষগুলিতে মার্জিন সেট করা আসলেই কোনও প্রভাব ফেলে না। জন্য সত্য সিএসএস সমতুল্য cellspacing
হয় border-spacing
- কিন্তু এটি ইন্টারনেট এক্সপ্লোরার কাজ করে না।
border-collapse: collapse
উল্লিখিত হিসাবে আপনি নির্ভরযোগ্যভাবে সেল স্পেসিং 0 তে সেট করতে ব্যবহার করতে পারেন , তবে অন্য কোনও মানের জন্য আমি মনে করি কেবলমাত্র ক্রস ব্রাউজারটি cellspacing
বৈশিষ্ট্যটি ব্যবহার করা keep
border-collapse
টেবিলটিতে ইতিমধ্যে কোনও cellspacing
বৈশিষ্ট্য নির্ধারিত না থাকলে কেবলমাত্র আইআই 5-7 এ কাজ করে । আমি একটি বিস্তৃত উত্তর লিখেছি যা সহায়ক এই ক্ষেত্রে এই পৃষ্ঠায় অন্যান্য উত্তরের সমস্ত সঠিক অংশকে মার্জ করে।
এই হ্যাকটি ইন্টারনেট এক্সপ্লোরার 6 এবং তার পরে, গুগল ক্রোম , ফায়ারফক্স এবং অপেরা :
table {
border-collapse: separate;
border-spacing: 10px; /* cellspacing */
*border-collapse: expression('separate', cellSpacing = '10px');
}
table td, table th {
padding: 10px; /* cellpadding */
}
*
ঘোষণা ইন্টারনেট এক্সপ্লোরার 6 এবং 7 জন্য, এবং অন্যান্য ব্রাউজার সঠিকভাবে তা উপেক্ষা করবে।
expression('separate', cellSpacing = '10px')
রিটার্ন দেয় 'separate'
, তবে উভয় বিবৃতি চালিত হয়, যেমন জাভাস্ক্রিপ্টে আপনি প্রত্যাশার চেয়ে বেশি যুক্তি পাস করতে পারেন এবং সেগুলির সমস্ত মূল্যায়ন করা হবে।
যারা নন-শূন্য সেলস্যাক্সিংয়ের মান চান তাদের জন্য, নিম্নলিখিত সিএসএস আমার পক্ষে কাজ করেছে, তবে আমি কেবল এটি ফায়ারফক্সে পরীক্ষা করতে সক্ষম।
সামঞ্জস্যতা বিশদ জন্য অন্য কোথাও পোস্ট করা Quirksmode লিঙ্ক দেখুন । মনে হচ্ছে এটি পুরানো ইন্টারনেট এক্সপ্লোরার সংস্করণগুলির সাথে কাজ না করে।
table {
border-collapse: separate;
border-spacing: 2px;
}
এই সমস্যার সহজ সমাধান হ'ল:
table
{
border: 1px solid #000000;
border-collapse: collapse;
border-spacing: 0px;
}
table td
{
padding: 8px 8px;
}
একটি ডিভের সাথে ঘরের সামগ্রীগুলি মোড়ানো করুন এবং আপনি যা কিছু করতে পারেন তা করতে পারেন তবে অভিন্ন প্রভাব পেতে আপনাকে প্রতিটি কলাম একটি কলামে মোড়তে হবে। উদাহরণস্বরূপ, কেবল বৃহত্তর বাম এবং ডান মার্জিন পেতে:
তাই সিএসএস হবে,
div.cellwidener {
margin: 0px 15px 0px 15px;
}
td.tight {
padding: 0px;
}
<table border="0">
<tr>
<td class="tight">
<div class="cellwidener">My content</div>
</td>
</tr>
</table>
হ্যাঁ, এটি একটি ঝামেলা। হ্যাঁ, এটি ইন্টারনেট এক্সপ্লোরারের সাথে কাজ করে। আসলে, আমি এটি কেবলমাত্র ইন্টারনেট এক্সপ্লোরার দিয়ে পরীক্ষা করেছি, কারণ আমাদের কেবল কাজের ক্ষেত্রে ব্যবহারের অনুমতি দেওয়া হয়েছে।
এই স্টাইলটি টেবিলগুলির জন্য পুরো রিসেটের জন্য রয়েছে - সেলপ্যাডিং , সেলস্পেসিং এবং সীমানা ।
আমার রিসেট.এসএস ফাইলটিতে এই স্টাইলটি ছিল:
table{
border:0; /* Replace border */
border-spacing: 0px; /* Replace cellspacing */
border-collapse: collapse; /* Patch for Internet Explorer 6 and Internet Explorer 7 */
}
table td{
padding: 0px; /* Replace cellpadding */
}
table th,td {
padding: 8px 2px;
}
table {
border-collapse: separate;
border-spacing: 2px;
}
টেবিলের ডেটা সহ কেবল সিএসএস প্যাডিংয়ের নিয়ম ব্যবহার করুন:
td {
padding: 20px;
}
এবং সীমানার ব্যবধানের জন্য:
table {
border-spacing: 1px;
border-collapse: collapse;
}
যাইহোক, এটি বক্স মডেলের ভিন্ন প্রয়োগের কারণে এটি ইন্টারনেট এক্সপ্লোরারের মতো পুরানো সংস্করণে সমস্যা তৈরি করতে পারে।
আমি ডাব্লু 3 সি শ্রেণিবদ্ধতা থেকে যা বুঝতে পারি তা হ'ল <table>
কেবলমাত্র 'ডেটা' প্রদর্শন করার জন্য।
এর উপর ভিত্তি করে আমি <div>
পটভূমি এবং এটির সাথে একটি তৈরি করা position: absolute;
এবং এটি ব্যবহার করে এবং এর উপর দিয়ে ভাসমান ডেটা সহ একটি টেবিল পাওয়া খুব সহজ পেয়েছি background: transparent;
...
এটি ক্রোম, ইন্টারনেট এক্সপ্লোরার (6 এবং তারপরে) এবং মজিলা ফায়ারফক্সে (2 এবং তার পরে) কাজ করে।
মার্জিন ব্যবহার করা হয় (অথবা কোন পথে বোঝানো) ধারক উপাদান, মত মধ্যে একটি স্পেসার তৈরি করতে <table>
, <div>
এবং <form>
, না <tr>
, <td>
, <span>
বা <input>
। ধারক উপাদান ছাড়া অন্য যে কোনও কিছুর জন্য এটি ব্যবহার করা আপনাকে ভবিষ্যতের ব্রাউজার আপডেটের জন্য আপনার ওয়েবসাইটকে সামঞ্জস্য করতে ব্যস্ত রাখবে।
সিএসএস:
selector{
padding:0 0 10px 0; // Top left bottom right
}
আপনি সিএসএস প্যাডিংয়ের বৈশিষ্ট্যটি ব্যবহার করে টেবিলের ঘরে সহজেই প্যাডিং সেট করতে পারেন। এটি টেবিলের সেলপ্যাডিং বৈশিষ্ট্যের মতো একই প্রভাব তৈরি করার একটি বৈধ উপায়।
table,
th,
td {
border: 1px solid #666;
}
table th,
table td {
padding: 10px;
/* Apply cell padding */
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Set Cellpadding in CSS</title>
</head>
<body>
<table>
<thead>
<tr>
<th>Row</th>
<th>First Name</th>
<th>Last Name</th>
<th>Email</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>Clark</td>
<td>Kent</td>
<td>clarkkent@mail.com</td>
</tr>
<tr>
<td>2</td>
<td>Peter</td>
<td>Parker</td>
<td>peterparker@mail.com</td>
</tr>
<tr>
<td>3</td>
<td>John</td>
<td>Rambo</td>
<td>johnrambo@mail.com</td>
</tr>
</tbody>
</table>
</body>
</html>
একইভাবে, আপনি সেলসস্পেসিং অ্যাট্রিবিউটের মতো সংলগ্ন টেবিল ঘরের সীমানার মধ্যে ব্যবধান প্রয়োগ করতে CSS সীমান্ত-ব্যবধানের বৈশিষ্ট্যটি ব্যবহার করতে পারেন। যাইহোক, সীমান্ত-ব্যবধান কাজ করার জন্য সীমান্ত-পতনের সম্পত্তি মানচিত্রের মান পৃথক করুন, এটি ডিফল্ট।
table {
border-collapse: separate;
border-spacing: 10px;
/* Apply cell spacing */
}
table,
th,
td {
border: 1px solid #666;
}
table th,
table td {
padding: 5px;
/* Apply cell padding */
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Set Cellspacing in CSS</title>
</head>
<body>
<table>
<thead>
<tr>
<th>Row</th>
<th>First Name</th>
<th>Last Name</th>
<th>Email</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>Clark</td>
<td>Kent</td>
<td>clarkkent@mail.com</td>
</tr>
<tr>
<td>2</td>
<td>Peter</td>
<td>Parker</td>
<td>peterparker@mail.com</td>
</tr>
<tr>
<td>3</td>
<td>John</td>
<td>Rambo</td>
<td>johnrambo@mail.com</td>
</tr>
</tbody>
</table>
</body>
</html>
এটা চেষ্টা কর:
table {
border-collapse: separate;
border-spacing: 10px;
}
table td, table th {
padding: 10px;
}
অথবা এটি চেষ্টা করুন:
table {
border-collapse: collapse;
}
table td, table th {
padding: 10px;
}
আমি !important
সীমান্ত-ধসের পরে যেমন ব্যবহার করেছি
border-collapse: collapse !important;
এবং এটি আই 7 এ আমার জন্য কাজ করে। এটি সেলস্পেসিং বৈশিষ্ট্যটিকে ওভাররাইড করে বলে মনে হচ্ছে।
!important
কোনও জটিল পরিস্থিতিতে (এবং তারপরেও বেশিরভাগ ক্ষেত্রে একটি ভুল পদ্ধতির) জন্য অন্য সিএসএস সেটিংসকে ওভাররাইড করার প্রয়োজন হবে ।
!important
, যা অন্য উত্তরের পরিবর্তে মন্তব্য হিসাবে অন্তর্ভুক্ত থাকতে পারে।
<table>
<tr>
<th>Col 1</th>
<th>Col 2</th>
<th>Col 3</th>
</tr>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
</table>
cell-padding
padding
সিএসএসে দেওয়া যেতে পারে যখন টেবিলের জন্য cell-spacing
সেট করে সেট border-spacing
করা যায়।
table {
border-spacing: 10px;
}
td {
padding: 10px;
}
বেহালার ।
td {
padding: npx; /* For cellpadding */
margin: npx; /* For cellspacing */
border-collapse: collapse; /* For showing borders in a better shape. */
}
যদি margin
কাজ না করে, সেট করার চেষ্টা display
এর tr
জন্য block
এবং তারপর মার্জিন কাজ করবে।
টেবিলগুলির জন্য, সেলস্পেসিং এবং সেলপ্যাডিং এইচটিএমএল 5 এ অপ্রচলিত।
সেলস্পেসিংয়ের জন্য এখন আপনাকে সীমান্তের ব্যবধান ব্যবহার করতে হবে। এবং সেলপ্যাডিংয়ের জন্য আপনাকে সীমান্ত-পতন ব্যবহার করতে হবে।
এবং নিশ্চিত করুন যে আপনি এটি আপনার HTML5 কোডে ব্যবহার করছেন না use এই মানগুলি সর্বদা একটি সিএসএস 3 ফাইলে ব্যবহার করার চেষ্টা করুন।
table {
border-spacing: 4px;
color: #000;
background: #ccc;
}
td {
padding-left: 4px;
}
এইচটিএমএল সারণিতে, cellpadding
এবং cellspacing
এটি সেট করা যেতে পারে:
জন্য সেল প্যাডিং :
শুধু সাধারণ td/th
সেল কল করুন padding
।
উদাহরণ:
table {
border-collapse: collapse;
}
td {
border: 1px solid red;
padding: 10px;
}
জন্য সেল ব্যবধান
সহজ কল করুন table
border-spacing
উদাহরণ:
/********* Cell-Spacing ********/
table {
border-spacing: 10px;
border-collapse: separate;
}
td {
border: 1px solid red;
}
সিএসএস উত্স লিঙ্ক দ্বারা আরও টেবিল শৈলী এখানে আপনি CSS দ্বারা আরও টেবিল শৈলী পাবেন ।
আপনি নিজের সিএসএসে ব্যবহার করে border-spacing
এবং padding
:
table {
border-collapse: collapse;
}
td, th {
padding: 1em;
border: 1px solid blue;
}
<table>
<tr>
<th>head_1</th>
<th>head_2</th>
<th>head_3</th>
<th>head_4</th>
</tr>
<tr>
<td>txt_1</td>
<td>txt_2</td>
<td>txt_3</td>
<td>txt_4</td>
</tr>
</table>
স্টাইলটি সরাসরি টেবিলের সাথে যুক্ত করার বিষয়ে কীভাবে? এটি table
আপনার সিএসএসে ব্যবহার করার পরিবর্তে যা আপনার পৃষ্ঠায় একাধিক টেবিল থাকলে: এটি একটি বিএডি পদ্ধতির:
<table style="border-collapse: separate;border-spacing: 2px;">
<tr>
<td style="padding: 4px 4px;">Some Text</td>
</tr>
</table>
td { padding: ... }
বা table { border-spacing: ... }
তার পরিবর্তে সরাসরি টেবিলটিতে প্রয়োগ করার পরিবর্তে এটি ফোকাস করা । যারা কিছুই যোগ করে। আমি যেমন বলেছি, যখন আপনার পৃষ্ঠায় একাধিক টেবিল রয়েছে এবং সেগুলি প্রভাবিত করতে চান না, আপনি এটি চান না! "স্টাইলশিটটি ব্যবহার করুন!" বলে আমাদের উত্তরগুলির পুরো পৃষ্ঠার প্রয়োজন হবে না, যখন আপনি এটিই চান শেষ জিনিস, কারণ আপনি কেবল একটি ঘর বা টেবিলের জন্য বিন্যাস চান। এটি যখন প্রয়োগ করা হয় table
বা td
অযাচিত হয় এবং এর জন্য সম্পূর্ণ নতুন ক্লাস তৈরি করা ওভারকিল is
table#someId
)।
আমি এটির পরামর্শ দিচ্ছি এবং নির্দিষ্ট টেবিলের জন্য সমস্ত কক্ষগুলি প্রভাবিত।
table.tbl_classname td, th {
padding: 5px 5px 5px 4px ;
}
আপনি নীচের কোডটি কেবল একটি তৈরি করে index.html
চালাতে পারেন।
<!DOCTYPE html>
<html>
<head>
<style>
table{
border-spacing:10px;
}
td{
padding:10px;
}
</style>
</head>
<body>
<table cellspacing="0" cellpadding="0">
<th>Col 1</th>
<th>Col 2</th>
<th>Col 3</th>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
</table>
</body>
</html>
আউটপুট:
width:auto
তবেborder-collapse
প্রত্যাশার মতো কাজ নাও করতে পারেন।