2013-08-24 7 views
0

У меня возникли проблемы с созданием сортируемой гистограммы с jquery-ui и css. Мне нужно использовать float: left на моих <li> тегах вместо display: inline-block, чтобы предотвратить портирование полей при перетаскивании баров, но это означает, что бары обозначают верхнюю часть контейнера, а не нижнюю.JQuery-UI CSS List Position Bottom

Немного Googling мне подсказывает, что стандартный способ достижения «флоат», чтобы положить position: relative на контейнер, а затем position: absolute; bottom: 0px на элементах, но делает это только делает стек <li> «s друг на друга.

Я не уверен, как разместить <li> в горизонтальном положении и по-прежнему работать в jquery sortable, или как это сделать в противном случае.

Пример: http://jsfiddle.net/NaWsd/

ответ

0

Попробуйте это:

Working Example

JS

$('li').each(function() { 
    $(this).css({ 
     bottom: $(this).css('height') 
    }); 
}); 

CSS

li { 
    background-color: red; 
    list-style: none; 
    float:left; 
    margin-right:5px; 
    width: 15px; 
    position:relative; 
} 
#sortable1 { 
    position:absolute; 
    top:100px; 
} 

В основном я иду через каждый элемент списка и установив их нижние позиции в соответствии с их высотами.

+0

hacky solution, но он работает так спасибо! :) –

0

Вы можете использовать display: inline-block и назначить !important для margin-right:5px, чтобы остановить JQuery над его написания.

margin-right:5px !important; 
+0

К сожалению, это не работает: http://jsfiddle.net/xtAXh/ –