我有一个关于最后阶段的照片博客,这是我正在努力解决的最后一个问题。布局在右侧有固定的菜单栏,内容在右侧流动。当照片从图库页面打开到它自己的页面时,它应该被调整大小,以便任一侧不超过(例如)70% 的可用空间。但不仅如此。它还应该位于右侧内容 div 的水平和垂直中心。在这一点上,一切正常,除了当图像是肖像时,它会越过屏幕。
这是否可以仅通过 CSS 来满足未激活 JS 的少数百分比?如果不是,那不是交易破坏者。
的HTML:
<div id="wrapper">
<div id="left_column">
</div>
<div id="right_column_post">
<div id="post_container">
<img src="img.jpg" width="1000" height="750"/>
</div>
</div>
</div>
CSS:
#left_column {
position: fixed;
top: 0;
bottom: 0;
left: 0;
z-index:100;
width: 240px;
height: 100%;
overflow: hidden;
}
#right_column_post{
height: 100%;
width:auto;
margin-left:240px;
position: relative;
}
#post_container {
width:100%;
height:100%;
display: block;
vertical-align: middle;
text-align:center;
}
#post_container:before {
content: '';
display: inline-block;
height: 100%;
vertical-align: middle;
margin-right: -0.25em; /* Adjusts for spacing */
}
#post_container img{
max-width:70%;
height:auto;
display: inline-block;
vertical-align: middle;
margin:auto;
position:relative;
}
这很接近: http: //jsfiddle.net/jcAGj/但如果按原样实施,它会破坏布局。