【发布时间】:2015-06-07 16:47:32
【问题描述】:
我不确定这是否可能,但这是我想要完成的:
我希望 CSS 导航菜单在列表项之间具有不相等的宽度。我发现这样做的唯一方法是使用表格单元格。但是,一旦悬停,我想播放动画:
- 列表项向下扩展
- 文本向左移动
- 字体符号从顶部出现在中间。 (还没有)
同时进行。
与此按钮类似:
enter code herehttp://codepen.io/Savantos/pen/mHIpt
但是我做不到。到目前为止,我只能让列表项向下扩展:
enter code herehttp://jsfiddle.net/reizer/tekh8vrm/
似乎为了使文本向左移动而不影响整个单元格是使用绝对位置。但在这种情况下,它使所有单元格宽度相等。我已经尝试在一个单元格内使用几个 div(为它们提供特定的 px 宽度)并且它们都平等地拉伸单元格的宽度。无赖。
如果我在不使用绝对定位的情况下进行右填充,它会拉伸整个单元格,使其看起来很傻。
我不明白如何拥有表格单元格项目,并且在其中有绝对定位的项目,这些项目按照我想要的方式运行而不影响单元格。也许还有另一种方法可以在不影响单元格宽度的情况下移动文本。
***** 更新 *****
所以我稍微弄乱了负边距,并在悬停时获得了平滑的文本定位,但只要我浮动 div 元素,我就无法让它们像前面的示例一样平滑展开:
【问题讨论】:
-
对于相同的单元格宽度,它可以很容易地完成 -
nav{table-layout: fixed;}不确定你想要什么样的动画。 -
是的,关于表格布局:固定,似乎恰恰相反。我想保留不相等的单元格宽度并将文本向左移动。 Thanx Redflar,这和我想象的非常接近。我只需要把这些差距填补起来。
标签: css button css-animations listitem