Вам необходимо явно установить ширину и высоту для области.
Проверьте эту ссылку для горизонтальной прокрутки: http://valums.com/scroll-menu-jquery/
Вот скрипт:
$(function(){
//Get our elements for faster access and set overlay width
var div = $('div.sc_menu'),
ul = $('ul.sc_menu'),
// unordered list's left margin
ulPadding = 15;
//Get menu width
var divWidth = div.width();
//Remove scrollbars
div.css({overflow: 'hidden'});
//Find last image container
var lastLi = ul.find('li:last-child');
//When user move mouse over menu
div.mousemove(function(e){
//As images are loaded ul width increases,
//so we recalculate it each time
var ulWidth = lastLi[0].offsetLeft + lastLi.outerWidth() + ulPadding;
var left = (e.pageX - div.offset().left) * (ulWidth-divWidth) / divWidth;
div.scrollLeft(left);
});
});
Как правило, вам нужно обновить ulWidth
и divWidth
при добавлении нового элемента.
Затем просто установите фоновое изображение так, чтобы оно повторялось по горизонтали, и вы должны установить.
ul.sc_menu {background:transparent url(image.png) repeat scroll 0 0;height:100px}
Примечание: вам нужно будет установить высоту; в противном случае вы не увидите фон, потому что li плавают.