我有一个使用 ExtJS 创建的视图,由一个自动完成文本框(绑定到一个商店)和一个自定义模板化 DataView(同样,绑定到另一个商店)组成。视图如下所示。
这是它的工作原理。
- 用户在搜索框中搜索标签,然后从下拉列表中选择匹配的标签。选择后,它会自动添加到下方的数据视图中,看起来像一个标签云(虽然不完全是)。
- 添加到 DataView 的标记项是自定义样式的,并且标签旁边有“删除”链接以将其从 DataView 中删除。
现在,这里有一个问题:
- DataView 的可用宽度是固定的,因此如果标签项文本较长,您可以看到它被破坏并且标签的剩余部分出现在下一行。
我想要的是这样的:
如您所见,如果标签项不够小,无法容纳可用区域,它将进入下一行,但如果空间可用,它将位于同一行。
有什么方法可以用 CSS 实现它?还是需要为此编写JS逻辑?
请注意,对于 CSS 解决方案,我一定会支持邪恶的 IE7/8。