我正在尝试使用CSS来显示以字幕覆盖为中心的图像,以及当浏览器窗口太小(缩小到适合)时的液体功能。
我目前的最佳尝试类似于以下HTML(使用Google的徽标作为示例图片)
<div align="center">
<div class="container">
<img src="http://www.google.fr/images/logos/ps_logo2.png" class="picture" />
<h3 class="caption">Image Caption</h3>
</div>
</div>
使用以下CSS
.container {
position : relative;
max-width : 364px;
}
.picture {
border-radius:0.5em;
box-shadow: 0px 0px 0.5em #000000;
max-width:364px;
}
.caption {
position:absolute;
padding:0.25em;
top:1em; left:0; right:0;
color:black;
background-color:rgba(0,0,0,0.2);
text-align:center;
}
但是,如果它的行为居中,因为我希望它适用于大型浏览器窗口,它对于小型浏览器窗口不会缩小... 此外,我不需要IE支持,特定于WebKit(iPhone / Android)就足够了,如果可能的话我想避免使用JavaScript。
JSFiddle随时可以使用版本http://jsfiddle.net/kWH3C/1/
答案 0 :(得分:5)
只需将最大宽度设置为容器而不是图像,并告诉图像为width:100%
http://jsfiddle.net/Madmartigan/kWH3C/5/
<div class="container">
<img src="http://www.google.fr/images/logos/ps_logo2.png" class="picture" />
<h3 class="caption">Image Caption</h3>
</div>
.container {
position : relative;
max-width : 364px;
margin:0 auto;
}
.picture {
border-radius:0.5em;
box-shadow: 0px 0px 0.5em #000000;
width:100%;
}
.caption {
position:absolute;
padding:0.25em;
top:1em; left:0; right:0;
color:black;
background-color:rgba(0,0,0,0.2);
text-align:center;
}
您不需要外部div,并且在HTML5中不推荐使用align="center"
,使用CSS进行对齐和定位。