【问题标题】:Having trouble vertical align and absolute positioned div in a height: auto container在高度垂直对齐和绝对定位的 div 时遇到问题:自动容器
【发布时间】:2018-04-02 09:39:48
【问题描述】:

我正在尝试垂直对齐绝对定位 div 中的文本块,该 div 位于最大宽度为 100% 且高度为 auto 的图像上(用于响应式布局)。如何垂直对齐文本块,使其在整个缩放过程​​中保持垂直对齐?我怀疑我需要使用某种 javascript,但我不确定。非常感谢任何帮助。

http://jsfiddle.net/8Jjs8/

<div id="container">
    <div class="slider">
        <ul class="slides">
            <li class="slide">
                <img src="http://awsassets.panda.org/img/scr_239815_362780.jpg" class="image">
                    <div class="caption">
                        <div class="caption-inside">
                            Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
                        </div>
                    </div>
             </li>
        </ul>
    </div>
</div>

#container {
    max-width: 600px;
    max-height: 400px;
    margin: 0 auto;
    position: relative;
}

.slider {
    position: relaitve:
    width: 100%;
}

ul.slides {
    list-style: none;
    margin: 0;
    padding: 0;
}

li.slide {
    position: relative;
    display: block;
}

.image {
    max-width: 100%;
    height: auto;
}

div.caption {
    position: absolute;
    bottom: 0;
    left: 0;
    margin: 0;
    padding: 0;
}

div.caption-inside {
    background: rgba(255,255,255,.5);
}

【问题讨论】:

    标签: javascript css responsive-design


    【解决方案1】:

    这可以让你走上正轨,但高度会成为一个问题。

    div.caption {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        height: 30%;
        margin: auto;
    }
    

    我知道有一些新的 CSS 功能将使这一切变得更容易,但现在你可能不得不忍受这些限制或转向 js。

    【讨论】:

    • 非常感谢。是的,该解决方案确实有效,直到要调整图像的高度。你能给我一些关于javascript的提示吗?我什至不知道从哪里开始。再次感谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-23
    • 1970-01-01
    • 1970-01-01
    • 2010-12-12
    • 2014-11-21
    • 1970-01-01
    • 2012-10-01
    相关资源
    最近更新 更多