inline-blockউপাদানগুলি ব্যবহার করার সময় , whitespace সেই উপাদানগুলির মধ্যে সর্বদা একটি সমস্যা থাকবে (সেই স্থানটি প্রায় 4px প্রশস্ত)।
সুতরাং, আপনার দুটি divs, যার উভয়ই 50% প্রস্থ রয়েছে, এবং এটি whitespace(p 4px) প্রস্থে 100% এর বেশি এবং তাই এটি ভেঙে যায়। আপনার সমস্যার উদাহরণ:
body{
margin: 0;
}
div{
display: inline-block;
width: 50%;
}
.left{
background-color: aqua;
}
.right{
background-color: gold;
}
<div class="left">foo</div>
<div class="right">bar</div>
এটি ঠিক করার কয়েকটি উপায় রয়েছে:
1. এই উপাদানগুলির মধ্যে কোনও স্থান নেই
body{
margin: 0;
}
div{
display: inline-block;
width: 50%;
}
.left{
background-color: aqua;
}
.right{
background-color: gold;
}
<div class="left">foo</div><div class="right">bar</div>
2. এইচটিএমএল মন্তব্য ব্যবহার করে
body{
margin: 0;
}
div{
display: inline-block;
width: 50%;
}
.left{
background-color: aqua;
}
.right{
background-color: gold;
}
<div class="left">foo</div><div class="right">bar</div>
3. বাবা সেট font-sizeকরতে 0, এবং তারপর কিছু মান যোগ inline-blockউপাদান
body{
margin: 0;
}
.parent{
font-size: 0;
}
.parent > div{
display: inline-block;
width: 50%;
font-size: 16px;
}
.left{
background-color: aqua;
}
.right{
background-color: gold;
}
<div class="parent">
<div class="left">foo</div>
<div class="right">bar</div>
</div>
৪. তাদের মধ্যে নেতিবাচক মার্জিন ব্যবহার করা ( পছন্দনীয় নয় )
body{
margin: 0;
}
div{
display: inline-block;
width: 50%;
margin-right: -4px;
}
.left{
background-color: aqua;
}
.right{
background-color: gold;
}
<div class="left">foo</div>
<div class="right">bar</div>
5. সমাপ্তি কোণ ছেড়েছে
body{
margin: 0;
}
div{
display: inline-block;
width: 50%;
}
.left{
background-color: aqua;
}
.right{
background-color: gold;
}
<div class="left">foo</div
><div class="right">bar</div>
<hr>
<div class="left">foo</div><div class="right">
bar</div>
6. স্কিপিং নির্দিষ্ট এইচটিএমএল ক্লোজিং ট্যাগ (ধন্যবাদ @thirtydot রেফারেন্স )
body{
margin: 0;
}
ul{
margin: 0;
padding: 0;
}
li{
display: inline-block;
width: 50%;
}
.left{
background-color: aqua;
}
.right{
background-color: gold;
}
<ul>
<li class="left">foo
<li class="right">bar
</ul>
তথ্যসূত্র:
- সিএসএস কৌশলগুলিতে ইনলাইন ব্লক উপাদানগুলির মধ্যে স্পেসের মধ্যে লড়াই করা
- ডেভিড ওয়ালশ দ্বারা ইনলাইন-ব্লক উপাদানগুলির মধ্যে সাদা স্থান সরিয়ে ফেলুন
- ইনলাইন-ব্লক উপাদানগুলির মধ্যে স্থানটি কীভাবে সরাবেন?
হিসাবে @ MarcosPérezGude বলেন , সেরা উপায় ব্যবহার করা rem, এবং কিছু ডিফল্ট মান যোগ font-sizeউপর html(মত ট্যাগ HTML5Boilerplate )। উদাহরণ:
html{
font-size: 1em;
}
.ib-parent{
font-size: 0;
}
.ib-child{
display: inline-block;
font-size: 1rem;
}
আপডেট : এটি প্রায় 2018 এর মতো, ফ্লেক্সবক্স বা আরও ভাল ব্যবহার করুন - সিএসএস গ্রিড লেআউট ।