如何根据左元素定位右元素的偏移量

Posted

技术标签:

【中文标题】如何根据左元素定位右元素的偏移量【英文标题】:How to position right element with offset based on left element 【发布时间】:2017-09-20 12:03:36 【问题描述】:

很简单。

我想用 SnapKit 来做这个:

leftElement   rightElement
anotherleftElement   rightElement
lftElmnt   rightElement

这意味着每个 rightElement 都有基于 leftElement 宽度加上 20 像素的边距。我将它用作 TableView 中的单元格。

左元素有这样的约束:

leftElement.snp.makeConstraints  (make) -> Void in
            make.top.equalTo(self).offset(10)
            make.left.equalTo(self).offset(20)
            make.right.equalTo(self).offset(-20)
        

【问题讨论】:

【参考方案1】:

您还必须向rightElement 添加约束并将rightElement 的左约束连接到leftElement 的右约束(加上偏移量):

leftElement.snp.makeConstraints  (make) in
   make.top.equalTo(10)
   make.left.equalTo(20)
   make.bottom.equalTo(-10)

rightElement.snp.makeConstraints  (make) in
   make.top.bottom.equalTo(leftElement)
   make.left.equalTo(leftElement.snp.right).offset(20)
   make.right.lessThanOrEqualTo(20)

【讨论】:

遗憾的是这不起作用。该元素根本不可见。

以上是关于如何根据左元素定位右元素的偏移量的主要内容,如果未能解决你的问题,请参考以下文章

定位属性left,right,top,bottom

position

CSS3定位和浮动详解

relative相对定位/定位偏移

6CSS基础 part-4

定位(position)