css - 如何将元素放置在彼此之上

标签 css

我有一个 <button>其中有 3 个跨度 - 每个跨度包含不同的文本。在不同的时间,由 Javascript 触发,按钮的类会发生变化。使用 CSS transitions & transform,我有一个 span 移出按钮,另一个移入。一切正常。

问题是按钮已经增长到跨度 1 + 跨度 2 + 跨度 3 的整个宽度。我希望宽度足够大以包含最大的跨度。如果所有的 span 都可以一个接一个地放置,这就可行了。

我不知道如何让 3 个 span 一个叠一个。

这是一个显示问题的 fiddle :http://jsfiddle.net/V9yTs/ (点击按钮查看变化)

编辑 这是最后的工作 fiddle :http://jsfiddle.net/XW3DY/7/

最佳答案

将 span 相互叠加的解决方案是使用 position: relative;(我看到你已经在那里了),然后修改 span 2 和 3 的上边距,这样他们向上移动到与跨度 1 相同的位置。

这是您的 JSFiddle 的更新版本:http://jsfiddle.net/XW3DY/2/

(请注意, float 元素不能彼此重叠。这就是为什么相对定位通常用于将元素彼此重叠放置的原因。)

关于css - 如何将元素放置在彼此之上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21198206/

相关文章:

jquery - CSS样式步骤

html - 如何在输入字段中使用 typeahead 来获取 Angularjs 中的值?

css - Kendo TabStrip 中的引导网格

html - 如何使所有屏幕分辨率的垂直菜单居中?

javascript - 如何切换两个 div 并更改 div 的高度以捕捉主 div 的全尺寸

html - 保持div中的信息始终以特定行数显示

css - 三列使用 div 问题

html - CSS :not() selector not supporting complex selectors inside it

css - 为什么 CSS 3d 动画在 safari 而不是 chrome 上工作,如果它们都是使用 webkit 构建的?

html - 如何在 Bootstrap 中制作固定高度的面板?