關鍵是要不是設置爲img
元素或父容器的寬度。如果父母.image
只是簡單地浮動或以任何其他方式進行調整以使其縮小到其內容的大小,則應該起作用。
我用float
來實現收縮包裝的方面,但position: absolute;
會做同樣的事情,display: inline-block;
。
在JS Bin上有一個演示,它使用一些jQuery來交換圖像,但它對任何元素的寬度沒有影響。這個CSS被複制如下:
.image {
float: left; // for the shrink wrap
padding: 1em; // To achieve the bordered effect
background-color: #666; // just for contrast
-moz-border-radius: 2em; // for that web 2.0 goodness...
-webkit-border-radius: 2em;
border-radius: 2em;
}
.image img {
-moz-border-radius: 2em; // no width, anywhere. Presumably width: auto, would
-webkit-border-radius: 2em; // work, but that's redundant, since it's the default
border-radius: 2em;
}
.image img + .caption {
width: 100%; // forcing the .caption to take up 100% of the width
background-color: #ffa; // of its parent, except for the padding, so that it's
} // the same width as the image above.
你可以顯示標記和相應的CSS規則嗎? – Oded 2010-10-08 18:29:45
如果您可以使用JavaScript,請參閱http://stackoverflow.com/questions/2839248/inline-image-and-caption-in-article-conform-captions-width-to-images-width。 – ClarkeyBoy 2010-10-08 19:23:31