绝对定位DIV的宽度不会根据子图像调整大小

时间:2014-01-10 19:41:11

标签: html css responsive-design

我有一个绝对定位的div,其中有一个百分比高度和一个图像。该图像的高度为100%,宽度为auto。当调整视口的高度时,绝对div不会调整它的宽度,图像将被切断,或者您将看到div的背景。

示例:http://jsfiddle.net/Y5Cr7/

CSS

div {
    position: absolute;
    overflow: hidden;
    height: 50%;
    bottom: 80px;
    left: 5%;
    background: blue;    
}

img {
    height: 100%;
    width: auto;
    display: block;
}

HTML

<p>adjust the height of the viewport</p>

<div>
    <img src="http://lorempixel.com/400/200" />
</div>

1 个答案:

答案 0 :(得分:0)

div 的宽度与高度的任何变化都不对应,与 img 不同(此外, div ' s隐式宽度现在对应于视口的宽度。)

我在这里看到两个选项......

  1. 媒体查询
  2. 的JavaScript
  3. 库(例如jQuery)可能是你最好的选择(这里是jsfiddle):

    $(window).resize(function() {
    
        var imgWidth = $('img').outerWidth();
    
        $('div').css({
            'width':imgWidth
        });
    
    });