Что то совсем сложно! Можно сделать иначе! создайте класс .active и сделайте стили для него! в Jquery напиши обработку клика.
Например у нас есть вот такой вот код:
.myblock{
height:50px; // это будет наша фиксированная высота!
}
.myblock.active{
height:auto; // это будет наша неизвестная высота! она выставляется сама. То-есть блок раскроется полностью.
}
$('.myblock').click(function(){ // обработка клика
if ($(".myblock").hasClass("active")) { // проверяем есть ли у нас такой класс active
$(".myblock").removeClass("active"); // если есть то удаляем его
//сюда можно вставить ваш код которые будет менять текст
}
esle{
$(".myblock").addClass("active");// если нету то добавляем
//сюда можно вставить ваш код которые будет менять текст
}
});
То-есть когда есть у нас класс active то срабатывают другие стили а когда его нет то другие стили!