我有一个水平列表,我正在尝试使用jqueryui sortable进行排序。
只要所有项目都适合窗口,它就可以完美工作。但是当我有很多项目时,滚动条就会出现,占位符的宽度会变小。或者实际上,当我在IE开发人员工具中检查占位符时,宽度设置为正确的值,但仍显示为细线。“ >>
我注意到,在占位符样式中添加填充可以使其更宽,但是为什么不能使用宽度呢?我真正想要的是让占位符获得项目的宽度,而无需在占位符类中指定它,不需要滚动条时就可以这样做。
所以我的问题是,为什么占位符在IE中没有以正确的宽度显示(在Chrome中似乎有效)?而我该如何解决呢?
编辑:我注意到最小宽度有效与IE中inline-flex的有效方式有关吗?
提前感谢!
$("#list").sortable({
items: "> li",
opacity: 0.8,
placeholder: "lm-placeholder",
tolerance: "pointer",
helper: "original",
revert: true,
axis: "x",
start: function (event, ui) {
var index = ($(ui.item).index());
}
});
.container {
width: 500px;
}
.listContainer {
overflow-x: auto;
}
.list {
list-style-type: none;
display: inline-flex;
background-color: antiquewhite;
}
.item {
padding: 2px;
}
.card {
width: 100px;
height: 100px;
background-color: white;
border: 1px solid #666666;
}
.lm-placeholder {
border: 3px dashed #bdbdbd;
width: 100px;
background-color: #078cd9;
/*padding-left: 20px;
padding-right: 20px;*/
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/jquery-ui.min.js"></script>
<body>
<div id="content" class="container">
<div class="listContainer">
<ul id="list" class="list">
<li class="item"><div class="card">1</div></li>
<li class="item"><div class="card">2</div></li>
<li class="item"><div class="card">3</div></li>
<li class="item"><div class="card">4</div></li>
<li class="item"><div class="card">5</div></li>
<li class="item"><div class="card">6</div></li>
<li class="item"><div class="card">7</div></li>
</ul>
</div>
</div>
</body>
我有一个水平列表,我正在尝试使用jqueryui sortable进行排序。只要所有项目都适合窗口,它就能完美工作。但是当我有很多项目时,滚动条就会出现...
这对我有用
$("#list").sortable({
items: "> li",
opacity: 0.8,
placeholder: "lm-placeholder",
tolerance: "pointer",
helper: "original",
revert: true,
axis: "x",
start: function (event, ui) {
$(".placeholder").css('width',jQuery(ui['item']).css('width'));
var index = ($(ui.item).index());
}
});