使用无序列表展开DIV
Expanding a DIV with an Unordered List
我正在考虑有一个无序的列表来过滤我的一些工作。我的过滤器工作得很好(不是在这个例子中),我现在正处于设计它时遇到困难的阶段。我试着设置div的宽度,并做了一些在线研究,但没有成功。
目前的情况如下:http://jsfiddle.net/XcVHU/
我希望最初只显示两个单词(Filter和All),当用户悬停或单击单词"Filter"时,列表会扩展为CSS宽度转换,以显示其他类别(Web、Still、Motion和Games)。因此,从这个:
筛选|全部
到此:
过滤器|Web|Still|Motion |游戏
最好嵌套ul
,例如…
<div id="portfolionav">
<ul class="filter">
<li>Filter</li>
<ul class="subfilters">
<li class="web"><a href="#">Web</a></li>
<li class="still"><a href="#">Still</a></li>
<li class="motion"><a href="#">Motion</a></li>
<li class="games"><a href="#">Games</a></li>
</ul>
<li class="current all"><a href="#">All</a></li>
</ul>
</div>
转换的CSS更改非常简单:
#portfolionav ul {
display: inline-block;
white-space: nowrap;
-webkit-transition: all 1s ease;
-moz-transition: all 1s ease;
-o-transition: all 1s ease;
-ms-transition: all 1s ease;
transition: all 1s ease;
}
#portfolionav ul ul {width: 0; opacity: 0;}
#portfolionav ul:hover > ul {width: 370px; opacity: 1;}
http://jsfiddle.net/jukUm/
更新:
这是带有动画和固定线条高度错误的最终版本:http://jsfiddle.net/XcVHU/9/
另一个没有动画的解决方案:
http://jsfiddle.net/XcVHU/4/
操作:
- 将过滤器放入单独的嵌套UL
- 将其显示设置为内联
- 文档就绪时隐藏筛选器
- 单击时切换显示特性
这个解决方案不像@PeterSzymkowski提供的解决方案那样有缺陷,而且看起来比@Duoppixel的解决方案更好(不管怎么说,这个解决方案都很好,如果你喜欢当项目出现在页面右侧并进入位置时的那种动画,它可能仍然适合你)。
更新:
这是动画版本,做了一些更改,请查看此处:
http://jsfiddle.net/XcVHU/7/
将ul.filter
拆分为两个ul
,并使用一些代码:
$('#expand').click(function(e){
e.preventDefault();
$('.filter.hidden').show();
var tw = $('.filter.hidden').width();
$('.filter.hidden').css('width', '0px');
$('.filter.hidden').animate({width: tw+'px'});
});
- 示例:http://jsfiddle.net/XcVHU/3/(点击过滤器)
相关文章:
- 从提示(jQuery)添加带有变量的列表项(Div)
- 使用无序列表展开DIV
- 范围和列表元素在 DIV 中换行
- 使用jQuery将列表中的元素集封装在DIV中
- 如何使用 jQuery 在键盘上为 Div 列表启用箭头导航
- 悬停/单击DIV列表
- 使用 Jquery 克隆下拉列表并附加到动态 Div
- 单击DIV时,如何切换UL列表
- 在动态html列表内容周围添加Div
- JavaScript链式下拉列表显示/隐藏一个Div
- 在Div标签中加载带有选择列表的图像
- 在数据列表中切换Div标签
- 显示“正在加载”Div元素,直到列表已加载,然后隐藏Div元素
- HTML / JS水平滚动DIV列表
- 如何制作新的Div内部列表项目
- 替换iframe与Div((多个)下拉列表相关)
- Javascript:用键盘导航DIV列表
- 如何使列表项显示/隐藏DIV列表或DIV的指定项
- 如何在Div中显示所有的列表标题?
- 可点击下拉列表不可见DIV