সিএসএস সমাধান কোনও জেএস এবং কোনও পটভূমি চিত্র নেই:
পদ্ধতি 1 "মার্জিন অটো" (আই 8 + - এফএফ নয়!):
div{
width:150px;
height:100px;
position:relative;
overflow:hidden;
}
div img{
position:absolute;
top:0;
bottom:0;
margin: auto;
width:100%;
}
<p>Original:</p>
<img src="http://i.stack.imgur.com/2OrtT.jpg" alt="image"/>
<p>Wrapped:</p>
<div>
<img src="http://i.stack.imgur.com/2OrtT.jpg" alt="image"/>
</div>
http://jsfiddle.net/5xjr05dt/
পদ্ধতি 2 "রূপান্তর" (আই 9 +):
div{
width:150px;
height:100px;
position:relative;
overflow:hidden;
}
div img{
position:absolute;
width:100%;
top: 50%;
-ms-transform: translateY(-50%);
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
}
<p>Original:</p>
<img src="http://i.stack.imgur.com/2OrtT.jpg" alt="image"/>
<p>Wrapped:</p>
<div>
<img src="http://i.stack.imgur.com/2OrtT.jpg" alt="image"/>
</div>
http://jsfiddle.net/5xjr05dt/1/
পদ্ধতি 2 একটি নির্দিষ্ট প্রস্থ / উচ্চতার ধারকটিতে একটি চিত্রকে কেন্দ্র করতে ব্যবহার করা যেতে পারে। উভয়ই উপচে পড়তে পারে - এবং চিত্রটি ধারকের চেয়ে ছোট হলেও এটি কেন্দ্রিক হবে।
http://jsfiddle.net/5xjr05dt/3/
পদ্ধতি 3 "ডাবল আবরণ" (আই 8 + - এফএফ নয়!):
.outer{
width:150px;
height:100px;
margin: 200px auto; /* just for example */
border: 1px solid red; /* just for example */
/* overflow: hidden; */ /* TURN THIS ON */
position: relative;
}
.inner {
border: 1px solid green; /* just for example */
position: absolute;
top: 0;
bottom: 0;
margin: auto;
display: table;
left: 50%;
}
.inner img {
display: block;
border: 1px solid blue; /* just for example */
position: relative;
right: 50%;
opacity: .5; /* just for example */
}
<div class="outer">
<div class="inner">
<img src="http://i.stack.imgur.com/2OrtT.jpg" alt="image"/>
</div>
</div>
http://jsfiddle.net/5xjr05dt/5/
পদ্ধতি 4 "ডাবল মোড়ক এবং ডাবল চিত্র" (IE8 +):
.outer{
width:150px;
height:100px;
margin: 200px auto; /* just for example */
border: 1px solid red; /* just for example */
/* overflow: hidden; */ /* TURN THIS ON */
position: relative;
}
.inner {
border: 1px solid green; /* just for example */
position: absolute;
top: 50%;
bottom: 0;
display: table;
left: 50%;
}
.inner .real_image {
display: block;
border: 1px solid blue; /* just for example */
position: absolute;
bottom: 50%;
right: 50%;
opacity: .5; /* just for example */
}
.inner .placeholder_image{
opacity: 0.1; /* should be 0 */
}
<div class="outer">
<div class="inner">
<img class="real_image" src="http://i.stack.imgur.com/2OrtT.jpg" alt="image"/>
<img class="placeholder_image" src="http://i.stack.imgur.com/2OrtT.jpg" alt="image"/>
</div>
</div>
http://jsfiddle.net/5xjr05dt/26/
- পদ্ধতি 1 এর সামান্য উন্নত সমর্থন রয়েছে - আপনাকে চিত্রের প্রস্থ বা উচ্চতা নির্ধারণ করতে হবে!
- উপসর্গ পদ্ধতি 2 এরও শালীন সমর্থন রয়েছে (ie9 পর্যন্ত) - পদ্ধতি 2 অপেরা মিনিতে কোনও সমর্থন দেয় না!
- পদ্ধতি 3 টি দুটি মোড়ক ব্যবহার করে - প্রস্থ এবং উচ্চতাকে উপচে ফেলতে পারে।
- পদ্ধতি 4 টি একটি ডাবল চিত্র ব্যবহার করে (স্থানধারক হিসাবে একটি) এটি কিছু অতিরিক্ত ব্যান্ডউইথ ওভারহেড দেয়, তবে আরও ভাল ক্রসব্রোজার সমর্থন।
1 এবং 3 পদ্ধতিটি ফায়ারফক্সের সাথে কাজ করছে বলে মনে হয় না
width
এবং সেheight
অনুযায়ী সামঞ্জস্য করা উচিত