div本身就是它内容的高度。
我希望一个div包含两个子元素:另一个div(或左对齐的图像)和一个无序列表(ul)。内部div(或图像)将与父div的高度匹配,父div的高度将与列表的高度一致(可以包含任何合理数量的项)。
我不确定如何设置父div的高度以匹配列表的高度,以及如何通过CSS使内部div与外部div的高度匹配。
替代的解决方案被欣然接受,这只是我试图解决我的设计目标的一种方式。

最佳答案

Live Demo
在IE7/IE8中测试,最新版本:Firefox、Chrome、Safari、Opera。
图像的高度完全取决于ul的高度。
为了给IE7提供所需的额外规则height: 100%,我使用了Star hack。如果需要100%有效的CSS,可以使用conditional commentsStar plus hack
CSS:

#iContainer {
    background: #ccc;
    overflow: hidden;
    position: relative
}
#iContainer div {
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    *height: 100% /* just for you, IE7 */
}
#iContainer img {
    height: 100%
}
#iContainer ul {
    float: right
}

HTML格式:
<div id="iContainer">

    <div><img src="https://dummyimage.com/500x700/f0f/fff" /></div>

    <ul>
        <li>list 1</li>
        <li>list 2</li>
        <li>list 3</li>
        <li>list 4</li>
        <li>list 5</li>
        <li>list 6</li>
        <li>list 7</li>
        <li>list 8</li>
    </ul>

</div>

大粉色图片:

关于html - 使用div缩放图像,其子级设置高度,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5224885/

10-17 02:59