绝对位置在相对位置内 适用于chrome&IE11,不适用于Firefox

问题描述 投票:0回答:1

我正在建立名册。我有一个绝对定位的容器。在其中,我有一个无序列表,其中几个列表项的位置相对。在每个列表项中,我都有一些文本(显示其名称),然后在该文本下方有一个绝对定位的图像(包含它们的图像)。它在Chrome和IE中都很好用。在Firefox中查看时,列表项的位置正确,名称也正确,但图像均位于彼此的顶部,因此看起来容器的左下角只有一个。在Chrome / IE和Firefox上如何使用?这是代码示例:

#roster {
    position: absolute;
    width: 1300px;
    left: 50%;
    margin-left: -650px;
    text-align: center;
}

p {
    background-color: rgba(51,51,51,.9);
    height: 40px;
}
li {
    position: relative;
    width: 150px;
    height: 180px;
    border: 1px solid black;
    display: inline-block;
    display: -moz-inline-stack;
    vertical-align: top;
    margin: 5px;
    zoom: 1;
    *display: block;
}

li img {
    width: 150px;
    height: 130px;
    position: absolute;
    left: 0;
    bottom: 0;
    border-top: 1px solid #fff;


}
a {
    text-decoration: none;
    margin-top: 12px;
    }

</style>
<body>

    <div id="roster">
        <ul>
            <li><a href="#"><p>A name</p><img src="_images/stock.jpeg"></a></li>
            <li><a href="#"><p>A name</p><img src="_images/stock.jpeg"></a></li>
            <li><a href="#"><p>A name</p><img src="_images/stock.jpeg"></a></li>
            <li><a href="#"><p>A name</p><img src="_images/stock.jpeg"></a></li>
            </ul>
    </div>

</body>
css image browser css-position compatibility
1个回答
0
投票

以防万一以后对某人有帮助:

使用包装的<div>而不是<ul>,而单独的<div>而不是<li>在所有浏览器中都能很好地工作。一些CSS以网格格式放置所有内容,例如:

display: -moz-inline-stack;
    display: inline-block;
    vertical-align: top;
    zoom: 1;
    *display: inline;
© www.soinside.com 2019 - 2024. All rights reserved.