2017-12-14 5 views
1

私は応答性/高さの画像を持っています。画像のサイズが動的になるため、絶対的な要素をimgにコーディングする必要があります。Divs absolute into responsive img

コード:

#contenedorimagen { 
 
    width: 100%; 
 
    background: #000; 
 
} 
 
#imagen { 
 
    position: relative; 
 
    width: 100vw; 
 
    height: 90vh; 
 
    vertical-align: middle; 
 
    text-align: center; 
 
} 
 
#i { 
 
    max-width: 100%; 
 
    height: auto; 
 
    max-height: 100%; 
 
} 
 
#imagen #c { 
 
    position: absolute; 
 
    top: 0; 
 
    left: 0; 
 
    color: #fff; 
 
} 
 
#imagen #h { 
 
    position: absolute; 
 
    top: 0; 
 
    right: 0; 
 
    color: #fff; 
 
} 
 
#imagen #pm { 
 
    position: absolute; 
 
    bottom: 0; 
 
    left: 0; 
 
    color: #fff; 
 
}
<div id="contenedorimagen"> 
 
    <div id="imagen"> 
 
    <div id="c">0</div> 
 
    <div id="h">0</div> 
 
    <div id="pm">0</div> 
 
    <img id="i" src="https://i.imgur.com/kLkrgKO.jpg" /> 
 
    </div> 
 
</div>

おかげ

例の画像あなたがイメージコンテナへmax-widthを与える必要があり firefox

答えて

0

#contenedorimagen { 
 
    width: 100%; 
 
    background: #000; 
 
} 
 

 
#imagen { 
 
    position: relative; 
 
    width: 100vw; 
 
    height: 90vh; 
 
    max-width: 100%; 
 
    vertical-align: middle; 
 
    text-align: center; 
 
} 
 

 
#i { 
 
    max-width: 100%; 
 
    height: auto; 
 
    max-height: 100%; 
 
} 
 

 
#imagen #c { 
 
    position: absolute; 
 
    top: 0; 
 
    left: 0; 
 
    color: #fff; 
 
} 
 

 
#imagen #h { 
 
    position: absolute; 
 
    top: 0; 
 
    right: 0; 
 
    color: #fff; 
 
} 
 

 
#imagen #pm { 
 
    position: absolute; 
 
    bottom: 0; 
 
    left: 0; 
 
    color: #fff; 
 
}
<div id="contenedorimagen"> 
 
    <div id="imagen"> 
 
     <div id="c">0</div> 
 
     <div id="h">0</div> 
 
     <div id="pm">0</div> 
 
     <img id="i" src="https://i.imgur.com/kLkrgKO.jpg" /> 
 
    </div> 
 
</div>

+0

おかげNoopur、私はイメージに、ない#imagen divのに絶対divを必要とします。どうもありがとうございました。 – Johndoe

+0

あなたのイメージがコンテナの外に出ているので、あなたのイメージが上にあります。なぜならあなたのイメージはコンテナの外に出ているので、絶対divに 'right:0'を設定すると黒で見ることはできません。 div。それを修正するには#contenedorimagen div内に画像を収める必要があります –

+0

ありがとうございました – Johndoe

0

たぶん、あなたはあなたの正確なニーズに合わせてこの例を適応させることができます。

#contenedorimagen { 
 
    position: relative; 
 
    width: 100%; 
 
    height: 100%; 
 
} 
 

 
#contenedorimagen #i { 
 
    width: 100%; 
 
    height: auto; 
 
    display: block; 
 
} 
 

 
#contenedorimagen div { 
 
    background: #000; 
 
    padding: 15px; 
 
    color: #fff; 
 
} 
 

 
#c { 
 
    position: absolute; 
 
    top: 0; 
 
    left: 0; 
 
} 
 

 
#h { 
 
    position: absolute; 
 
    top: 0; 
 
    right: 0; 
 
} 
 

 
#pm { 
 
    position: absolute; 
 
    bottom: 0; 
 
    left: 0; 
 
}
<div id="contenedorimagen"> 
 
    <div id="c">0</div> 
 
    <div id="h">0</div> 
 
    <div id="pm">0</div> 
 
    <img id="i" src="https://i.imgur.com/kLkrgKO.jpg" /> 
 
</div>

+0

ありがとうございましたdom_ahdigital。私が最高の100%を#iに、高さを90vhを#contenedorimagenの高感度の画像に適用すると... https://jsfiddle.net/xb5dws9o/ – Johndoe

関連する問題