您发布的工作看起来非常有前途!
从我粗略的看,有两件事值得一提:
- 使用像素测量没有什么特别“错误”的。唯一可能对您造成问题的是字幕的长度。如果文本可能会改变长度(因此:滚动到两行),那么使用设置的高度调整将不起作用。
- 标题中有很多空的“p”标签,这是故意的吗?
我倾向于处理这类任务的方式是使用定位:
- 有一个包含图像和标题的 div 包装。定位这个相对;
- 将图像 z-index 设置为较低的数字;
- 将标题的 z-index 设置得更高,并设置为 position: absolute, bottom: 0。这将使标题远离父 div 的底部边缘,而父 div 又会从图像继承它的高度。
两秒钟,我会发布一个例子。
你去: http: //jsfiddle.net/HhuhR/ 这是非常快速和肮脏的,但应该帮助你走上正确的轨道:
<style>
.img-wrap{
width: 60%; /*just here for the preview */
position: relative;
}
.img-wrap img{
max-width: 100%;
z-index: 1
}
.img-wrap .caption{
display: block;
width: 100%;
position: absolute;
bottom: 5px; /*if using padding in the caption, match here */
left: 0;
z-index: 2;
margin: 0;
padding: 5px 0;
text-indent: 5px;
color: #fff;
font-weight: bold;
background: rgba(0, 0, 0, 0.4);
}
</style>
<div class="img-wrap">
<img src="http://taylorp0994.net/websites/cincoschool/img/slide1.png" alt= "">
<span class="caption">Lorem ipsum dolor sit amet</span>
</div>
请记住,随着您的视口宽度变窄,标题文本将主导图像(因为图像本身变小)。我倾向于在我的设计中确定一个问题,然后简单地覆盖底部/左侧的标题位置并设置位置:相对 - 这会将标题直接放在图像下方而不是重叠(并可能完全覆盖)它.