Как я уже говорил, использование javascript может сделать переход более плавным, не нарушая текст или границы.Замена CSS-переходов этим, казалось, очень помогла.Это использует jQuery - используйте инструмент по вашему выбору, конечно:
// <li> needs position:relative; in the CSS
$('li').hover(
function(){
$(this).stop().animate({'top':'-10px'});
},function(){
$(this).stop().animate({'top':'0'});
}
);
http://jsfiddle.net/9eGt3/5/
Мне не повезло, что я могу очень часто использовать CSS3, так что этодля меня это не область знаний, но мне, к сожалению, пришлось убрать существующие CSS-переходы, чтобы заставить его работать.Вы можете использовать технику обнаружения javascript, чтобы вернуться к переходам CSS, например, добавив class="js-enabled"
к тегу body (конечно, с js) и используя это в своем селекторе CSS.
За исключением этого, я думаюу вас нет сил, если вы не хотите использовать изображения (ба) или подождать еще несколько лет, пока браузеры не смогут справиться с этим чуть лучше (grr).Не воспринимайте это как Евангелие, у кого-то может быть решение для вас - но я думал, что по крайней мере предложу обходной путь.