コメントで述べたように、純粋な CSS を使用して、含まれる要素の高さに基づいてテキストをスケーリングすることはできません。しかし、これは私が過去にあなたが望むものを達成する必要があるときに使用した小さな jQuery スクリプトです。また、ユーザーがブラウザ ウィンドウのサイズを変更すると、テキスト サイズも調整されます。
HTML:
<p class="quote">
Really long text goes here...
</p>
CSS:
.quote {
// The largest size to display text at.
font-size: 36px;
}
JS:
$(window).bind('resize',function(e){
scaleQuote();
});
function scaleQuote(){
var quote = $('.quote');
var winH = $(window).height();
// Reset font size.
quote.css('font-size', '');
// If quote is larger than viewport, reduce font-size until it fits.
while (winH < (quote.height())){
var fontSize = parseInt(quote.css('font-size'), 10);
quote.css('font-size', fontSize-1+'px');
}
}
scaleQuote();
デモ: http://jsfiddle.net/eCBmc/2/