Андрей38,
Забыл уже про этот топик))
Да, я так и сделал в результате.
Проще блин самому рассчитать, чем возиться с этими стилями..
Приемлемого решения на css, соответствующего моим требованиям, я не нашел..
Поэтому примерно так:
<style>
div#outer {
width:100%;
height:300px;
background-color:#F00;
border: 1px solid;
overflow-y:scroll
}
div#topic {
background-color:#0F0;
border: 1px solid;
}
</style>
<div id="outer">
<div id="topic">
<table width=100% border="1">
<tr>
<td><p><b>Вася Пупкин</b></p></td>
<td align="right"><p>11.09.2011</p></td>
</tr>
<tr>
<td colspan=2><p>Всем привет, меня зовут Василий.</p></td>
</tr>
</table>
</div>
</div>
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript">
var outer = $("#outer"), topic = $("#topic"),
outer_h = outer.height(), topic_h = topic.height(), topic_top = outer_h - topic_h;
(topic_h < outer_h) ? topic_top : topic_top = 0;
topic.css('margin-top', topic_top + 'px');
</script>