CSS - 设置第 n 个 child 的左侧位置

标签 css

我想将第 n 个 div 的左侧位置设置为 (n-1)*250px,例如:

1st child: left = 0px
2nd child: left = 250px
...

是否可以在 css 中这样做?我正在使用 Javascript 来设置它。谢谢。

最佳答案

CSS3 calc()方法想到了,但它不支持使用索引 (n) 作为操作数,所以这行不通。

推荐的解决方案:您可能会设计布局,使每个元素的宽度为 250px。为每个元素提供 display: inline-blockfloat: left,它们将按照您的意愿排列。如果元素内容的宽度需要大于250px,请确保在元素上设置overflow: visible(默认值)并允许内容溢出。无需更多信息,这应该可以达到您想要的效果。

但是,如果您需要使用更直接的定位方法,您应该坚持使用 JavaScript 来设置这些元素的位置。您可能需要考虑屏幕宽度、元素宽度等,而 CSS 会让您无法做到这一点。

看看this JSFiddle寻找灵感。如果您张贴了您想要实现的目标的草图,我可以进一步帮助您。

关于CSS - 设置第 n 个 child 的左侧位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17443251/

相关文章:

css - 在 LESS 中为基于基色的颜色变体创建变量列表

css - -ms-transform-origin 不适用于 IE9

javascript - 在不使用本地存储的情况下,在手机上存储复选框状态 7 天的最佳(最简单)方法是什么

css - 基于父 mixin 控制嵌套 mixin 行为

css - 在列之间设置空间,因此每列大小相同(使用基础)

asp.net - 从后面的代码将自定义样式应用于 div 内的 anchor 标记

html - 如何垂直对齐 <p> 和 <div>,在没有 table-cell 属性的情况下定位它们

javascript - 通过 JavaScript 应用不一致的 CSS

css - Flex space-between - 均匀分布在多行

html - 这里应用了哪条规则?