我想裁剪一个具有任何自然尺寸的图像,并将其宽度设为100%,最大高度为200px,仅使用CSS。
阅读similar question here后,我接近它,但图像仍然水平拉伸。
HTML:
<div class="moduleItemIntrotext"> <a class="moduleItemImage" href="/gestao/item/7479-o-que-é-o-zero-working-capital-e-o-que-pode-beneficiar-com-isso.html" title="Continue a ler "O que é o Zero Working Capital? (e o que pode beneficiar com isso)"">
<img src="http://www.portal-gestao.com/media/k2/items/cache/x99c309f8b22ccf674ef513c2b1fdd8b5_XL.jpg.pagespeed.ic.Me394YWuwk.jpg" alt="O que é o Zero Working Capital? (e o que pode beneficiar com isso)" width="900" height="900">
</a>
<p>O working capital (ou fundo de maneio) é a diferença entre o ativo corrente e passivo corrente. Numa empresa com capacidade para encarar as suas obrigações financeiras de curto-prazo, o ativo corrente supera o passivo corrente. Se essa empresa necessitasse, poderia converter todo o seu ativo corrente em dinheiro e assim liquidar todas as suas dívidas de curto-prazo.</p>
</div>
CSS:
.moduleItemIntrotext {
overflow: hidden;
position: relative;
}
.moduleItemIntrotext img {
position: relative;
margin: auto;
max-height: 200px;
width: 100%;
}
答案 0 :(得分:8)
这是另一种可能性,将图像保持在流和HTML中: 的 DEMO 强>
线高+负边距,几乎可以降低放置图像所需的高度。
.moduleItemIntrotext img {
position: relative;
margin: -50% auto;/* virtualy height needed turn don to zero */
width: 100%;/* height will follow within image ratio */
height:auto;/* to overrride attribute height set in tag */
vertical-align:middle;/* finalise vertical centering on baseline*/
}
.moduleItemImage {
display:block;
height:200px;/*set an height */
line-height:200px;/* set the baseline at 100px from top*/
overflow:hidden;/* crops/cut off */
}
答案 1 :(得分:3)
以下是一个解决方案:http://jsfiddle.net/72ppd7qL/。
HTML:
<div>
<a href=""></a>
<p>
O working capital (ou fundo de maneio) é a diferença entre o ativo corrente e
passivo corrente. Numa empresa com capacidade para encarar as suas obrigações
financeiras de curto-prazo, o ativo corrente supera o passivo corrente. Se essa
empresa necessitasse, poderia converter todo o seu ativo corrente em dinheiro e
assim liquidar todas as suas dívidas de curto-prazo.
</p>
</div>
CSS:
div > a {
display: block;
height: 200px;
background: url(http://www.portalgestao.com/media/k2/items/cache/x99c309f8b22ccf674ef513c2b1fdd8b5_XL.jpg.pagespeed.ic.Me394YWuwk.jpg)
no-repeat
center center/cover;
}